Warning: mysql_num_rows() expects parameter 1 to be resource...
pulbaas
Messages postés
4
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
bonjour a tous
n'etant pas du tout à l'aise avec php, ca m'arrache les cheveux sur un probleme survenu apres une migration de serveur (passage de php 5.3 a php 5.4):
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /home/eskissfrwj/xxx.com/fonction.php on line 129
voici le code en question (en gras la ligne 129)
une solution ? :)
merci !
n'etant pas du tout à l'aise avec php, ca m'arrache les cheveux sur un probleme survenu apres une migration de serveur (passage de php 5.3 a php 5.4):
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /home/eskissfrwj/xxx.com/fonction.php on line 129
voici le code en question (en gras la ligne 129)
// Affiche les "$nb" top a partir de "$start"
function tableau_top($start,$nb,$idcat)
{ //affiche les $nb sites envoyant le plus de traff a partir du $depart
// Créé un tableau contenant les valeurs pour chaque site
if($idcat==0)
{
$sql="select * from sites where structure='gratuit' ";
}else
{
$sql="select * from sites where categories=".$idcat." and structure='gratuit' ";
}
$sql.="and statut='on' order by nbin DESC, date_inscription desc LIMIT ".$start.",".$nb;
$query = mysql_query($sql);
<bold> $num_row=mysql_num_rows($query);</bold>
if($num_row>0){
$i=0;
while ($tab= mysql_fetch_array($query, MYSQL_ASSOC)) {
$tab_site[$i]['id']=$tab['id'];
$tab_site[$i]['categories']=$tab['categories'];
$tab_site[$i]['titre']=$tab['titre'];
$tab_site[$i]['url']=$tab['url'];
$tab_site[$i]['description']=str_replace('"','\"',$tab['description']);
$tab_site[$i]['image']=$tab['image'];
$tab_site[$i]['image_popup']=$tab['image_popup'];
$tab_site[$i]['in']=$tab['nbin'];
$tab_site[$i]['out']=$tab['nbout'];
$i++;
}
}
if($num_row<$nb)
{
$b=1;
$nb_restant = $nb-$num_row;
for($j=0;$j<=$nb_restant;$j++)
{
$tab_site[$j+$i]['id']=0;
$tab_site[$j+$i]['categories']="";
$tab_site[$j+$i]['titre']="Clique ICI";
$tab_site[$j+$i]['url']="boost.php";
$tab_site[$j+$i]['description']="Clique ICI";
$tab_site[$j+$i]['image']="blinds/".$b.".jpg";
$tab_site[$j+$i]['image_popup']="blindspop/".$b.".jpg";;
$tab_site[$j+$i]['in']=0;
$tab_site[$j+$i]['out']=0;
$b++;
}
}
if(!isset($tab_site)) $tab_site=NULL;
unset($i);
return $tab_site;
}
une solution ? :)
merci !
A voir également:
- Warning: mysql_num_rows() expects parameter 1 to be resource...
- Warning zone telechargement - Accueil - Outils
- Téléchargement et streaming illégal : voici les adresses des sites pirates que les FAI vont bloquer - Accueil - Services en ligne
- Symbole warning word ✓ - Forum Word
- Cpu fan fail warning control - Forum Matériel & Système
- Comment faire le symbole attention ✓ - Forum Loisirs / Divertissements
2 réponses
Bonjour
Fais-nous aussi un
Ça nous donnera des précisions sur l'erreur.
Fais-nous aussi un
$query = mysql_query($sql) or die(mysql_error());
Ça nous donnera des précisions sur l'erreur.
Bonjour,
avant les lignes
pourrais tu nous faire un
histoire de vrifier que ta requête SQL est bien forméee ?
Cdt
avant les lignes
$query = mysql_query($sql); $num_row=mysql_num_rows($query);
pourrais tu nous faire un
echo $sql; die();
histoire de vrifier que ta requête SQL est bien forméee ?
Cdt
Il est clair que mysql_query rend false.
Ça peut être dû à un problème de connexion et mysql_error() le dira.
Ça peut être dû à un problème de sélection de base de données et mysql_error() le dira.
Ça peut être dû à un nom de table ou de champ erroné et mysql_error() le dira.
Tout ceci sans aucune erreur de syntaxe SQL.
Ça peut aussi être une erreur de syntaxe SQL et mysql_error() nous dira à quel endroit de la requête il la détecte.
Sans parler des causes auxquelles je ne pense pas
:)
Ça peut être dû à un problème de connexion et mysql_error() le dira.
Ça peut être dû à un problème de sélection de base de données et mysql_error() le dira.
Ça peut être dû à un nom de table ou de champ erroné et mysql_error() le dira.
Tout ceci sans aucune erreur de syntaxe SQL.
Ça peut aussi être une erreur de syntaxe SQL et mysql_error() nous dira à quel endroit de la requête il la détecte.
Sans parler des causes auxquelles je ne pense pas
:)
Cdt