{MySQL} num_fields() et fetch_row() non valide

Résolu/Fermé
haroun- Messages postés 708 Date d'inscription dimanche 13 avril 2008 Statut Membre Dernière intervention 17 décembre 2021 - 10 déc. 2009 à 20:30
Cephei Messages postés 118 Date d'inscription mercredi 9 décembre 2009 Statut Membre Dernière intervention 10 décembre 2018 - 10 déc. 2009 à 21:58
Bonjour,
j'ai crée une page accueil.php fesant appel avec une comande HTML a une page nommé livre.php
a laide d'un formulaire dont le code est :

<form method='post' action='livre.php'>
<i> liste des livre </i> <input type='submit' value='valider' />
</form>

le probléme c'est que la page livre.php déclanche un Warning sur la commande num_fields() et fetch_row()
voici le code de la page livre.php:
<?php


$requete='select * from livre';
$res = mysql_query($requete);
echo '<table border="1"><tr>';

for ($i = 0; $i < mysql_num_fields($res); $i++) {
echo '<th>';
echo mysql_field_name($res, $i);
echo '</th>';
}
echo '</tr>';
while ($row = mysql_fetch_row($res)) {
echo '<tr>';

for ($j = 0; $j < count($row); $j++) {
echo '<td>';
echo $row[$j];
echo '</td>';
}

echo '</tr>';
}
?>

es ce que quelqu'un pourrais me dire ce qui cause problème svp
merci

2 réponses

Cephei Messages postés 118 Date d'inscription mercredi 9 décembre 2009 Statut Membre Dernière intervention 10 décembre 2018 19
10 déc. 2009 à 21:18
Bonsoir,

Ben c'est que t'as requête ne renvoie pas de résultat ...
Non ? Ta table s'appellerais pas "livres" et non "livre" par hasard (vu la complexité de la requête, je me permet d'essayer de déduire au plus simple) ...

En tout cas faut vérifier que $res n'est pas null après l'appel de mysql_query !
Tu me tien au courant ? Merci
0
haroun- Messages postés 708 Date d'inscription dimanche 13 avril 2008 Statut Membre Dernière intervention 17 décembre 2021 3
10 déc. 2009 à 21:50
il y a du nouveau la
j'ai fait une petite modification et ça marche
j'ai ajouté

$dbserver='localhost';
$dbuser='root';
$dbpass='';
$db=mysql_connect($dbserver,$dbuser,$dbpass);
mysql_select_db("biblio");

au début du fichier livre.php
je doit donc me connecter au server puit a la base de donner dans la page cible puise que j'ai fait appel a la requête contenant la table livre
il n y a pas une méthode plus pratique de faire les choses svp
il faut mettre ces commandes au début de chaque fichier php si il fait appel a une table de la base de donnée biblio ?
0
Cephei Messages postés 118 Date d'inscription mercredi 9 décembre 2009 Statut Membre Dernière intervention 10 décembre 2018 19
10 déc. 2009 à 21:58
Ha oui ben forcément ! Je pensais que c'était une version light du code moi !
Effectivement il faut se connecter à la base de donnée avant de faire une requête ! Sinon je vois pas très bien ce que tu vas requêter... ^^

Le fait d'écrire ces deux lignes c'est pas compliqué et c'est logique ! Non ? Pas pour tout le monde on dirait...
Après tu peux toujours te faire une fonction qui se connecte pour toi à "biblio" ...
0