Mysql

Fermé
lajoiex Messages postés 16 Date d'inscription mardi 1 février 2011 Statut Membre Dernière intervention 10 juin 2016 - Modifié par lajoiex le 1/07/2011 à 16:19
lajoiex Messages postés 16 Date d'inscription mardi 1 février 2011 Statut Membre Dernière intervention 10 juin 2016 - 4 juil. 2011 à 19:03
comment resoudre un probleme de type "Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Program Files\EasyPHP-5.3.6.0\www\www\projet1\racine\pages\affich.php on line 25"
voici le code complet

<table border="2" cellpadding="5" width="95%" align="center" bordercolor="#000000" cellspacing="0">
<tr>
<td colspan="2" align="center">
<b><font size="10">INSCRITS DU JOUR <br />
<?php
include("./codes/datejour.php");
?>
</font></b>
</td>
</tr>
<tr>
<td align="center"><b><font size="3">DE 6H A 12H</font></b></td>
<td align="center"><b><font size="3">DE 12H A 18H</font></b></td>
</tr>
<tr>
<td>
<?php
$ds=date("Y-m-d");
$sh="06:00:00";
$dh="12:00:00";
$hh="18:00:00";
include("./codes/connexion.php");
$req1="SELECT*FROM student where dateinscrit='$ds' and heureinscrit>=$sh and heureinscrit<$hh order by id desc";
$env1=mysql_query($req1);
$num1=mysql_num_rows($env1);
if($num1!=0)
{
while($recup1=mysql_fetch_assoc($env1))
{
$nom1=strtouper($recup1["nom"]);
$prenom1=UCwords($recup1["prenom"]);
$sexe1=$recup1["sexe"];
$datenaiss1=$recup1["datenaiss"];
$lieunaiss1=UCfirst($recup1["Lieunaiss1"]);
$cel1=$recup1["cel"];
$tel1=$recup1["tel"];
$mail1=strtolower($recup1["email"]);
$hinscrit1=$recup1["heureinscri"];
if($sexe1=="M")
{
$sig1="Mr";
$col="blue";
$naiss1="Né le ";
$ins1="inscrit";
}
else
{
$sig1="Mme";
$col="red";
$naiss1="Née le ";
$ins1="inscrite";
}
?>
<table border="2" bordercolor="<?php echo $col?>"align="left" cellpadding="2">
<tr>
<td align="left">
<b><font color="<?php echo $col?>">
<?php
echo $sig1."".$nom1.""."<br>";
echo $nass1."".$datenaiss1."".$lieunaiss1."<br>";
echo "contact:"."".$cel1."/".$tel1."<br>";
echo "Email:"."".$mail1."<br>";
echo $ins1."".$hinscrit1;
?>
</b></font>
</td>
</tr>
</table>
<table border="0" height="5">
<tr>
<td>
</td>
</tr>
</table>
<?php
}
}
mysql_close();
?>
</td>
<td>
<?php
$ds=date("Y-m-d");
$sh="06:00:00";
$dh="12:00:00";
$hh="18:00:00";
include("./codes/connexion.php");
$req2="select*from student where dateinscrit='$ds' and heurein>=$sh and heurein<$dh order by id desc";
$env2=mysql_query($req2);
$num2=mysql_num_rows($env2);
if($num2!=0)
{
while($recup2=mysql_fetch_assoc($env2))
{
$nom2=strtouper($recup2["nom"]);
$prenom2=UCwords($recup2["prenom"]);
$sexe2=$recup2["sexe"];
$datenaiss2=$recup2["datenaiss"];
$lieunaiss2=UCfirst($recup2["Lieunaiss"]);
$cel2=$recup2["cel"];
$tel2=$recup2["tel"];
$mail2=strtolower($recup1["email"]);
$hinscrit2=$recup2["heureinscri"];
if($sexe2=="M")
{
$sig2="Mr";
$co2="blue";
$naiss2="Né le ";
$ins2="inscrit";
}
else
{
$sig2="Mme";
$col="red";
$naiss2="Née le ";
$ins2="inscrite";
}
?>
<table border="2" bordercolor="<?php echo $col?>"align="left" cellpadding="2">
<tr>
<td align="left">
<b><font color="<?php echo $col?>">
<?php
echo $sig2."".$nom2.""."<br>";
echo $nass2."".$datenaiss2."".$lieunaiss2."<br>";
echo "contact:"."".$cel2."/".$tel2."<br>";
echo "Email:"."".$mail2."<br>";
echo $ins2."".$hinscrit2;
?>
</b></font>
</td>
</tr>
</table>
<table border="0" height="5">
<tr>
<td>
</td>
</tr>
</table>
<?php
}
}
mysql_close();
?>
</td>
</tr>
</table>

3 réponses

m-a-o-u-s-i Messages postés 188 Date d'inscription dimanche 29 mai 2011 Statut Membre Dernière intervention 28 janvier 2013 51
1 juil. 2011 à 16:01
Salut...

Il nous faut le code source... on ne peut pas deviner
0
voici le code source

<table border="2" cellpadding="5" width="95%" align="center" bordercolor="#000000" cellspacing="0">
<tr>
<td colspan="2" align="center">
<b><font size="10">INSCRITS DU JOUR <br />
<?php
include("./codes/datejour.php");
?>
</font></b>
</td>
</tr>
<tr>
<td align="center"><b><font size="3">DE 6H A 12H</font></b></td>
<td align="center"><b><font size="3">DE 12H A 18H</font></b></td>
</tr>
<tr>
<td>
<?php
$ds=date("Y-m-d");
$sh="06:00:00";
$dh="12:00:00";
$hh="18:00:00";
include("./codes/connexion.php");
$req1="SELECT*FROM student where dateinscrit='$ds' and heureinscrit>='$sh' and heureinscrit<'$hh' order by id desc";
$env1=mysql_query($req1)or die(mysql_error()."<br />Requête : $req1");
$num1=mysql_num_rows($env1);
if($num1!=0)
{
while($recup1=mysql_fetch_assoc($env1))
{
$nom1=($recup1["nom"]);
$prenom1=UCwords($recup1["prenom"]);
$sexe1=$recup1["sexe"];
$datenaiss1=$recup1["datenaiss"];
$lieunaiss1=UCfirst($recup1["Lieunaiss1"]);
$cel1=$recup1["cel"];
$tel1=$recup1["tel"];
$mail1=strtolower($recup1["email"]);
$hinscrit1=$recup1["heureinscri"];
if($sexe1=="M")
{
$sig1="Mr";
$col="blue";
$naiss1="Né le ";
$ins1="inscrit";
}
else
{
$sig1="Mme";
$col="red";
$naiss1="Née le ";
$ins1="inscrite";
}
?>
<table border="2" bordercolor="<?php echo $col?>"align="left" cellpadding="2">
<tr>
<td align="left">
<b><font color="<?php echo $col?>">
<?php
echo $sig1."".$nom1.""."<br>";
echo $nass1."".$datenaiss1."".$lieunaiss1."<br>";
echo "contact:"."".$cel1."/".$tel1."<br>";
echo "Email:"."".$mail1."<br>";
echo $ins1."".$hinscrit1;
?>
</b></font>
</td>
</tr>
</table>
<table border="0" height="5">
<tr>
<td>
</td>
</tr>
</table>
<?php
}
}
mysql_close();
?>
</td>
<td>
<?php
$ds=date("Y-m-d");
$sh="06:00:00";
$dh="12:00:00";
$hh="18:00:00";
include("./codes/connexion.php");
$req2="select*from student where dateinscrit='$ds' and heurein>='$sh' and heurein<'$dh' order by id desc";
$env2=mysql_query($req2);
$num2=mysql_num_rows($env2);
if($num2!=0)
{
while($recup2=mysql_fetch_assoc($env2))
{
$nom2=strtouper($recup2["nom"]);
$prenom2=UCwords($recup2["prenom"]);
$sexe2=$recup2["sexe"];
$datenaiss2=$recup2["datenaiss"];
$lieunaiss2=UCfirst($recup2["Lieunaiss"]);
$cel2=$recup2["cel"];
$tel2=$recup2["tel"];
$mail2=strtolower($recup1["email"]);
$hinscrit2=$recup2["heureinscri"];
if($sexe2=="M")
{
$sig2="Mr";
$co2="blue";
$naiss2="Né le ";
$ins2="inscrit";
}
else
{
$sig2="Mme";
$col="red";
$naiss2="Née le ";
$ins2="inscrite";
}
?>
<table border="2" bordercolor="<?php echo $col?>"align="left" cellpadding="2">
<tr>
<td align="left">
<b><font color="<?php echo $col?>">
<?php
echo $sig2."".$nom2.""."<br>";
echo $nass2."".$datenaiss2."".$lieunaiss2."<br>";
echo "contact:"."".$cel2."/".$tel2."<br>";
echo "Email:"."".$mail2."<br>";
echo $ins2."".$hinscrit2;
?>
</b></font>
</td>
</tr>
</table>
<table border="0" height="5">
<tr>
<td>
</td>
</tr>
</table>
<?php
}
}
mysql_close();
?>
</td>
</tr>
</table>
merci pour votre comprehention
0
Leviathan49 Messages postés 257 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 22 juillet 2011 70
Modifié par Leviathan49 le 1/07/2011 à 16:08
Montre nous ton code ^^
Mais à priori tu n'as pas mis la bonne variable en paramètre.
D'après https://www.php.net/manual/fr/function.mysql-num-rows.php
tu es sensé une un "résultat" en paramètre, que tu recupère via un mysql_query.
0
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
Modifié par Reivax962 le 1/07/2011 à 16:31
Bonjour,

Ce genre d'erreur sur des fonctions mysql signifie presque toujours que la requête envoyée n'était pas valide, et que le résultat n'est donc pas utilisable en tant que tel.

Pour s'en assurer, le mieux est d'utiliser mysql_error() après l'exécution de la requête, pour afficher les erreurs éventuelles.

Et effectivement, dans ton cas, il manque des quotes autour des variables des heures.

Pour t'en convaincre, mets ce code :
$req1="SELECT*FROM student where dateinscrit='$ds' and heureinscrit>=$sh and heureinscrit<$hh order by id desc"; 
$env1=mysql_query($req1) or die(mysql_error()."<br />Requête : $req1"); 
$num1=mysql_num_rows($env1); 

Ça te montrera le message d'erreur qui te bloque.

Et pour corriger :
$req1="SELECT * FROM student where dateinscrit='$ds' and heureinscrit>='$sh' and heureinscrit<'$hh' order by id desc"; 
$env1=mysql_query($req1); 
$num1=mysql_num_rows($env1); 

(Dans la version définitive on enlève les messages d'erreurs qui peuvent donner des informations sur la base de données... on préfèrera plutôt s'envoyer l'erreur en question par email, mais je ne mets pas ça ici)

Xavier
0
lajoiex Messages postés 16 Date d'inscription mardi 1 février 2011 Statut Membre Dernière intervention 10 juin 2016
4 juil. 2011 à 19:03
merci pour ton soutien le probleme est resolu
0