22max
Messages postés72Date d'inscriptionvendredi 8 octobre 2004StatutMembreDernière intervention16 mars 2007
-
16 mars 2007 à 11:26
22max
Messages postés72Date d'inscriptionvendredi 8 octobre 2004StatutMembreDernière intervention16 mars 2007
-
16 mars 2007 à 18:58
Bonjour,
voici mon problème:
je souhaite afficher le contenu de la table signature.
en temps normal, c'est une requête de base que j'arrive à faire et à afficher dans une page tout simplement.
je précise bien sur que la table n'est pas vide et contiens
plusieurs enregistrements.
Code : <ol id="code1" class="olcode"><li><?</li><li>// Déclaration des paramètres de connexion
</li><li>$host "******";</li><li>$login "******";</li><li>$pass = "******";</li><li>$base = "******";</li><li>// Connexion au serveur
</li><li>mysql_connect($host, $login,$pass) or die("erreur de connexion au serveur" );</li><li>mysql_select_db($base) or die("erreur de connexion a la base de donnees" );</li><li>// Creation et envoi de la requete
</li><li>$query "SELECT * FROM signature";</li><li>$result mysql_query($query)or die(mysql_error());</li><li>// Recuperation des resultats
</li><li>if (!mysql_fetch_row($result)) {</li><li>echo "Aucun enregitrement ne correspond\n";</li><li>
</li><li>}</li><li>
</li><li>else {</li><li> echo "les resultats sont :";</li><li> while ($row mysql_fetch_row($result)) {</li><li> $id_r $row[0];</li><li> $type_r = $row[1];</li><li> $nom_r = $row[2];</li><li> $mail_r = $row[3];</li><li> $theme_r = $row[4];</li><li> $couleur_r = $row[5];</li><li> $precisions_r = $row[6];</li><li> $ip_r = $row[7];</li><li> $statut_r = $row[8];</li><li> echo
" - " . $id_r . ", " . $type_r . ", " . $nom_r . ", " . $mail_r . ", "
. $theme_r . ", " . $couleur_r . ", " . $precisions_r . ", " . $ip_r .
", " . $statut_r . ", ";</li><li>
</li><li> }</li><li>}</li><li>?></li></ol>ce qui est affiché à l'ecran :
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 20153 16 mars 2007 à 18:47
Je dois voir 40 fois la même demande depuis quelques jours :)
<ol id="code1" class="olcode"><li>if (!mysql_fetch_row($result)) {</li><li>echo "Aucun enregitrement ne correspond\n";</li><li>
</li><li>}</li></ol>A partir du moment ou tu as ca, tu parcours déja le premier enregistrement.
Quand tu fais un fetch(), tu déplaces un curseur interne. C'est comme un compteur. Ex :
$compteur = 0;
if ( !$compteur++ ) {
echo 'erreur';
}
while ( $compteur++ ) {
echo $compteur;
}
Si tu fais ca, tu t'apercevras que tu démarres à 1 et non pas à 0 !
L'exemple ci dessus est la même chose que mysql_fetch_array().
Voila voila :)
ehmarc
Messages postés393Date d'inscriptionmardi 2 décembre 2003StatutMembreDernière intervention29 septembre 2008 16 mars 2007 à 14:55
salut,
"ce qui est affiché à l'ecran :
les resultats sont :"
Fait clique droit puis afficher la source et regarde si tes données sont présentes A mon avis c'est le reste de ton HTML qui foire ...
Histoire de tuner ton code tu peut mettre des ' a la place des "
Sinon dans ta premiere condition tu peut utiliser mysql_num_rows
http://fr2.php.net/manual/fr/function.mysql-num-rows.php qui ramene le nombre de ligne (et tu regarde si c'est supérieur à 0) et ensuite tu peut faire un truc genre "il y a X résultat affichés"