la deuxième page de mon affichage page par page est vide
le 23/02/2010 à 14:58
fran6
Bonjour,
J'ai un niveau moyen en php. J'essaie de faire un petit dictionnaire sous php. Lorsque je tape la lettre "a" ou "b" ou "c" dans le formulaire, le script affiche par douze tous les mots commençant par un "a" ou "b" ou "c" dans le dictionnaire avec une barre de navigation en bas.
Tout marche très bien pour la première page mais la deuxième page et la suite reste vide. Est-ce que quelqu'un peut me dire pourquoi ???
Merci de votre réponse.
Le code se trouve ici:
http://www.lephpfacile.com/wall/wall-1853.php
Ce qui serait intéressant, ca serait de voir quelle requête tu exécutes en page 2.
Fais donc un echo de $sql, normalement tu devrais comprendre le soucis je pense.
le 24/02/2010 à 07:20
fran6
Merci, je vais essayer et je vous dirai le résultat obtenu
le 24/02/2010 à 13:22
Keika
hmm il y a une partie de ton code que je ne comprends pas:
<?php
// on prépare notre requête avec le LIMIT
$sql = 'SELECT entrefrmlg, catfrmlg, deffrmlg, etyfrmlg, sensfrmlg, figefrmlg, voirfrmlg FROM dicofrmlg WHERE entrefrmlg
LIKE "'.$_POST['entree'].'%" ORDER BY entrefrmlg ASC LIMIT '.$_GET['debut'].','.$nb_affichage_par_page;
// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
// on va scanner tous les tuples un par un
while ($data = mysql_fetch_array($req)) {
// on affiche les résultats
echo '<table class="dictionnaire" border="1"><tr><td width="130">';
echo htmlentities(trim($data['entree']));
echo ' ',htmlentities(trim($data['categorie'])),'</td>';
echo '<td width="270">',htmlentities(trim($data['definition']));
echo ' ',htmlentities(trim($data['etymologie']));
echo ' ',htmlentities(trim($data['sens']));
echo ' ',htmlentities(trim($data['figee']));
echo ' ',htmlentities(trim($data['voir']));
echo '</td></tr></table><br />';
?>
tous les $data['...'] dans le while ne correspondent pas aux entrees dans la table que tu demandes.
ex: ta requete a: catfrmlg, et tu demandes $data['categorie']... chez moi ca serait plutot $data['catfrmlg'], non ?
Le PHP --> C'est dur !
le 24/02/2010 à 14:49
fran6
C'est vrai Keika, j'ai déjà corrigé le code qui est visible sur ce wall :
http://www.lephpfacile.com/wall/wall-1855.php.
Je vais essayer ce que La Globule m'a conseillé et je verrai le résultat. En attendant, si quelqu'un peut encore m'aider, je suis toujours là et j'attends la réponse.
T'as juste à faire un echo de $sql.
Tu verras quelles limites à ta requête SQL. A partir de la, ca sera énormément plus facile pour débuguer.
La, à part avoir des dons de voyants, tu n'arriveras pas à grand chose.
Pour débuguer, le plus simple c'est de faire des echo. Ca te permet de voir ce que fait ton code au lieu de le dérouler dans ton cerveau.
Ecrire un message
Votre message vient d'être créé avec succès.
BB-Code
Pour insérer une URL clickable
Pour insérer une adresse E-mail
Pour annoter
Pour écrire du code
Pour faire un lien vers une fonction PHP
Pour écrire du texte préformaté
Pour écrire du texte en gras
Pour écrire du texte en italique
Pour écrire du texte souligné
Pour écrire du texte barré
Pour écrire un titre principal
Pour écrire un titre secondaire
Pour écrire une liste
Smiley
:bond:
:boxe:
:bsmile:
:bump:
:clap:
:coeur:
:cool:
:cry:
:eek:
:evil:
:fleur:
:fou2:
:fou:
:grin:
:grrr:
:hammer:
:hippy:
:hum:
:idee2:
:idee:
:kdo:
:king:
:ko:
:lol:
:love2:
:love:
:mad:
:maitre:
:noel:
:oops:
:raa:
:razz:
:roll:
:sad:
:skull:
:smile:
:timide:
:trink:
:vice:
:vomi:
:wink:
:zzz: