[RESOLU] Warning: mysql_fetch_array(): supplied argument

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Warning: mysql_fetch_array(): supplied argument

Re: Warning: mysql_fetch_array(): supplied argument

par xzena » 25 févr. 2013, 19:06

j'ai résolu le problème, :)
qui était une grande surcharge des tables,donc une optimisation à mes requêtes était une bonne solution;
j'ai ajouté des index à mes tables concernées comme suite :
CREATE UNIQUE INDEX PharamAVISI_IDX1 ON avisiter(pharam_id)
CREATE UNIQUE INDEX PharamLISTVI_IDX1 ON listevisite(pharam_id)
après j'ai gardé la même requete de jointure que j'avais,et qui a marché légèrement et rapidement maintenant.
J'ai postulé la solution si quelqu'un aura un jours le même problème ! :)

Re: Warning: mysql_fetch_array(): supplied argument

par xzena » 21 févr. 2013, 20:04

merci pour ta réponse,beh j'ai remplacé par ton code et la résultat est toujours la même,sauf que bool(true) est ajouté en haut de la page
??

Re: Warning: mysql_fetch_array(): supplied argument

par AB » 21 févr. 2013, 18:10

Et la connexion à la bdd est faite ? Bizarre que tu n'aies pas de message d'erreur suite à ta requête car le message "supplied argument is not a valid MySQL result resource" vient souvent du fait que la requête retourne false. Tu devrais séparer l'écriture de ta requête de la requête elle-même, c'est plus faile à débugguer, par exemple :
$query = "SELECT * FROM avisiter WHERE pharam_id  NOT IN (SELECT pharam_id FROM listevisite )"; 

$ressource = mysql_query($query) or die(mysql_error());

// pour débugage uniquement
var_dump($ressource);

if($ressource)
{
while($d=mysql_fetch_array($ressource))
{        
 echo' <tr>
   <td style="color:#4e7eeb;font-size:12">'.$d['pharam_id'].'</td>
    <td style="color:#4e7eeb;font-size:12">'.$d['nomm'].'</td>
    <td style="color:#4e7eeb;font-size:12">'.$d['liste'].'</td>
        <td style="color:#4e7eeb;font-size:12">'.$d['region'].'</td>
        <td style="color:#4e7eeb;font-size:12">'.$d['ville'].'</td>
        <td style="color:#4e7eeb;font-size:12">'.$d['secteur'].'</td>
  </tr>';
} 
}
Au passage il est déconseillé d'utiliser l'extension mysql (c'est écrit dans la doc de toutes les fonction mysql). Il faut utiliser mysqli ou pdo à la place.

Warning: mysql_fetch_array(): supplied argument

par xzena » 21 févr. 2013, 17:50

Salut les gens,
je reviens vers vous car j'ai trouvé une solution depuis la matinée..
j'ai cet erreur là Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/gec/public_html/site/exlNonviM.php on line 101
la requete ça marche trs bien sur phpmyadmin,elle m'affiche les résultats.donc surement le problème est au niveau du PHP,mais j'ai pas trouvé
merci de voir mon code et m 'aider :
<?php

	$q=mysql_query('SELECT * FROM avisiter WHERE pharam_id  NOT IN (SELECT pharam_id FROM listevisite )') or die(mysql_error());
while($d=mysql_fetch_array($q)){         //101
 echo' <tr>
   <td style="color:#4e7eeb;font-size:12">'.$d['pharam_id'].'</td>
    <td style="color:#4e7eeb;font-size:12">'.$d['nomm'].'</td>
    <td style="color:#4e7eeb;font-size:12">'.$d['liste'].'</td>
	<td style="color:#4e7eeb;font-size:12">'.$d['region'].'</td>
	<td style="color:#4e7eeb;font-size:12">'.$d['ville'].'</td>
	<td style="color:#4e7eeb;font-size:12">'.$d['secteur'].'</td>
  </tr>';

} 

ob_end_flush();
?>
Merci d'avance