Création
d'entreprise
Posez votre question Signaler

[PHP] erreur php mysql_fetch_array [Résolu]

capa57 300Messages postés 30 juin 2008Date d'inscription 10 mars 2012Dernière intervention - Dernière réponse le 9 mars 2010 à 19:02
Bonjour,
Voilà j'ai une petite erreur, j'ai une liste déroulante, je selectionne un nom de méthode dedans, je clique sur valider et il est censer m'afficher le résultat de ma requete, j'ai une erreur en dessous de ma liste déroulante
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\muscu 2\evolution.php on line 53
tu as fait série de le

voici mon code
<?php
if ($test_evo==0) { echo
'<div class="item">
<div class="date">
<div>'.date("d/m/Y").'</div>
</div>
<div class="content"><br>
<h1><u>Aucune évolution</u></h1><br>
<div class="body"><br>
Nous sommes désolé mais il n\'y a pas encore d\'exercice, veuillez ajouter une série
</div><br><br>
</div>
</div>'; }
else
{echo "<select name='methode'>";
while ($requete) { echo "<option value=$requete[0]>$requete[1]</option>";
$requete=mysql_fetch_array($requete_evo);}}
$id_meth=$_GET['methode'];
?>
<input name="Insert" type="submit" value="Valider"><br>
<?php $req=mysql_query("select s.id_serie,NbSerie,NbParSerie,Date_serie from serie s, methode m, avoir a where s.id_serie=a.id_serie and m.id_meth=$id_meth and a.id_meth=$id_meth");
$req2=mysql_fetch_array($req);

echo "<option value=$req2[0]> tu as fait $req2[1] série de $req2[2] le $req2[3]</option>";
?>
Lire la suite 

[PHP] erreur php mysql_fetch_array »

25 réponses
Réponse
+1
moins plus
ger57@live.fr
Ajouter un commentaire
Réponse
+1
moins plus
Bonjour

...where s.id_serie='a.id_serie' ..
il ne faut pas d'apostrophes autour de 'a.id_serie', c'est un nom de champ, pas une valeur
...where s.id_serie=a.id_serie ..
Ajouter un commentaire
Réponse
+0
moins plus
c'est marqué quoi a la ligne 53
Ajouter un commentaire
Réponse
+0
moins plus
rajoute des ' derriere chaque condition des tes where exemple :

where s.id_serie=a.id_serie ----> where s.id_serie='a.id_serie'
capa57- 9 mars 2010 à 16:52
quand je met mes balises je n'ai plus l'erreur fetch_array mais ma requete ne fonctionne plus et je n'ai rien qui s'affiche... donc je sais pas
Ajouter un commentaire
Réponse
+0
moins plus
c'est ce qu'il y a en gras

<form>
<?php
if ($test_evo==0) { echo
'<div class="item">
<div class="date">
<div>'.date("d/m/Y").'</div>
</div>
<div class="content"><br>
<h1><u>Aucune évolution</u></h1><br>
<div class="body"><br>
Nous sommes désolé mais il n\'y a pas encore d\'exercice, veuillez ajouter une série
</div><br><br>
</div>
</div>'; }
else

{echo "<select name='methode'>";
while ($requete) { echo "<option value=$requete[0]>$requete[1]</option>";
$requete=mysql_fetch_array($requete_evo);}}
$id_meth=$_GET['methode'];
?>
<input name="Insert" type="submit" value="Valider"><br>
<?php $req=mysql_query("select s.id_serie,NbSerie,NbParSerie,Date_serie from serie s, methode m, avoir a where s.id_serie=a.id_serie and m.id_meth=$id_meth and a.id_meth=$id_meth");
$req2=mysql_fetch_array($req);
echo "<option value=$req2[0]> tu as fait $req2[1] série de $req2[2] le $req2[3]</option>";
?>
</form>
Ajouter un commentaire
Réponse
+0
moins plus
$req=mysql_query("select s.id_serie,NbSerie,NbParSerie,Date_serie from serie s, methode m, avoir a where s.id_serie='a.id_serie' and m.id_meth='$id_meth' and a.id_meth='$id_meth' " );

c'est juste comme ça ? pour la fin ? ...........= '$id_meth' " );
fxtaa- 9 mars 2010 à 16:43
oui, c est ptet pas ca mais bon
Ajouter un commentaire
Réponse
+0
moins plus
ta requète ne renvoie probablement aucun résultat.... peut etre une erreur syntaxique. remplace ta ligne mysql_query par celle-ci :

<?php $req=mysql_query("select s.id_serie,NbSerie,NbParSerie,Date_serie from serie s, methode m, avoir a where s.id_serie=a.id_serie and m.id_meth=$id_meth and a.id_meth=$id_meth") or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

et dis nous si tu as une erreur SQL !
capa57- 9 mars 2010 à 16:43
et ben il ne m'affiche pas d'erreur il m'affiche un résultat en dessous de ma liste déroulante, mais que 1 seul résultat, dans phpmyadmin quand je teste ma requete il me ressort plusieurs résultat et là que 1 seul, mais je n'ai pas d'erreur
Ajouter un commentaire
Réponse
+0
moins plus
ton "<option value=$req2[0]> tu as fait $req2[1] série de $req2[2] le $req2[3]</option>"; n'est dans aucune boucle, c est pour ca que tu n'as qu un résultat (enfin je crois)
Ajouter un commentaire
Réponse
+0
moins plus
au lieu de echo "<option value=$req2[0]> tu as fait $req2[1] série de $req2[2] le $req2[3]</option>";

essaye de mettre les noms des champs entre crochet (genre $req2['nombre']
capa57- 9 mars 2010 à 16:51
ça me fait la même chose

en fait quand je clique dans mon menu sur l'onglet pour arrive sur cette page, j'obtiens l'erreur et quand je sélectionne quelque chose dans ma liste déroulante et clique sur le bouton valider l'erreur disparait et m'affiche le résultat de ma requête, mais à moitié... lol je comprends plus rien
Ajouter un commentaire
Réponse
+0
moins plus
essaye avec cette requète, légèrement modifiée

"select s.id_serie,NbSerie,NbParSerie,Date_serie from serie s, methode m, avoir a where s.id_serie='a.id_serie' and m.id_meth='" . $id_meth . "' and a.id_meth='" . $id_meth . "'; "
Ajouter un commentaire
Réponse
+0
moins plus
pareil il m'affiche juste

tu as fait série de le

et j'ai aucun résultat, mais je n'ai plus d'erreur FECTH_ARRAY c'est un bon début lol
Ajouter un commentaire
Réponse
+0
moins plus
donc, la ta requète est bonne... C'est le traitement que tu en fait qui ne vas pas...
Ajouter un commentaire
Réponse
+0
moins plus
ben il ne m'affiche rien donc je sais pas ... mais je pense qu'elle est bonne vu que dans phpmyadmin ca fonctionne...
Ajouter un commentaire
Réponse
+0
moins plus
tu as MSN ? donne ton adresse pliz
Ajouter un commentaire
Réponse
+0
moins plus
ah non il me dit aucun enregistrement dans phpmyadmin
Ajouter un commentaire
Réponse
+0
moins plus
je t'ai ajouté
Ajouter un commentaire
Réponse
+0
moins plus
j'ai rien reçu..
ger57@live.fr
Ajouter un commentaire
Réponse
+0
moins plus
oui merci ^^ je viens juste de voir ça
Ajouter un commentaire
Réponse
+0
moins plus
c'est bon j'ai réussi merci à tous, et thanks swoog :)

while ($requete) { echo "<option value=$requete[0]>$requete[1]</option>";
$requete=mysql_fetch_array($requete_evo);}}
$id_meth=$_GET['methode'];
?>
<input name="Insert" type="submit" value="Valider"><br>
<?php $req=mysql_query("select s.id_serie,NbSerie,NbParSerie,Date_serie from serie s, methode m, avoir a where s.id_serie=a.id_serie and m.id_meth='$id_meth' and a.id_meth='$id_meth'" ) ;
while($req2 = mysql_fetch_array($req))
{
echo "<option value=$req2[0]> tu as fait $req2[1] série de $req2[2] le $req2[3]</option><br>";
}
?>
Ajouter un commentaire
Réponse
+0
moins plus
pas de problème, si je peux aider ;)
Ajouter un commentaire
Ce document intitulé « [PHP] erreur php mysql_fetch_array » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?
[PHP] erreur php mysql_fetch_array - page 2