par
Cyrano » 15 juin 2005, 09:16
Désolé
ouckileou, ta solution a un défaut majeur: en modifiant la requête par un COUNT(*), mysql_fetch_assoc ne fonctionnera pas; il faudrait créer une seconde requête.
Donc il faudrait garder la requête originale, ensuite tester le nombre de résultats avec mysql_num_rows() et là, s'il n'y a pas de résultats on le saura.
Donc il faudrait modifier de cette manière:
<?php
$temp="SELECT * FROM report WHERE RHost LIKE '".addslashes($row1['lieu'])."%'"; //choisit tous les rapports dont le nom est similaire à $row1
$result2= mysql_query($temp)or die(mysql_error());
$nb = mysql_num_rows($result2);
if($nb < 1) //cette boucle if bug !
{
echo"Pas de rapports";
}
else
{
while($row3= mysql_fetch_assoc($result2))
{
...// ici le code fonctionne correctement
}
?>
Désolé [b]ouckileou[/b], ta solution a un défaut majeur: en modifiant la requête par un COUNT(*), mysql_fetch_assoc ne fonctionnera pas; il faudrait créer une seconde requête.
Donc il faudrait garder la requête originale, ensuite tester le nombre de résultats avec mysql_num_rows() et là, s'il n'y a pas de résultats on le saura.
Donc il faudrait modifier de cette manière:
[php]<?php
$temp="SELECT * FROM report WHERE RHost LIKE '".addslashes($row1['lieu'])."%'"; //choisit tous les rapports dont le nom est similaire à $row1
$result2= mysql_query($temp)or die(mysql_error());
$nb = mysql_num_rows($result2);
if($nb < 1) //cette boucle if bug !
{
echo"Pas de rapports";
}
else
{
while($row3= mysql_fetch_assoc($result2))
{
...// ici le code fonctionne correctement
}
?>[/php]