PB en php

Danyco Messages postés 15 Statut Membre -  
Danyco Messages postés 15 Statut Membre -
Salut voila mon probleme c'est que je veut faire une recherche sur des livre d'une base de données et lorsque la recherche ne renvoi aucun resultat elle affiche un message d'erreur. Donc j'ai compter les ligne et lorsque le nombre est egal a 0 alors il affiche sinon il passe dans l'affichage du resultat. le probleme c'est que si je compte les ligne et apres je veut afficher le resultat lorsque le nombre n'est pas nul il ne m'affiche rien et si j'enleve le comptage il s'affiche mais si j'enleve le comptage je vois pas comment savoir si la recherche renvoie des resultat merci de votre aide je vous colle le code pour que vous puissiez voir de vous meme
function compte_ligne($res)
{
$nb=0;
while(odbc_fetch_into($res, &$result))
{
$nb++;
}
echo("$nb");
return $nb;
}

function imprimer_form($res)
{
$nb=compte_ligne($res);
if($nb==0)
{
echo("<h1><p align='center'>Aucun résultat ne correspond a votre recherche</h1>");
}
else
{
?>
<tr align='center'>
<td>
<h2>Auteur</h2>
</td>
<td>
<h2>Titre</h2>
</td>
<td>
<h2>Statut</h2>
</td>
</tr>
<?php
while(odbc_fetch_into($res, &$tuple))
{
echo ("<tr><td><b>$tuple[1]</b>, $tuple[2]</td>");
echo ("<td>$tuple[3]</td>");
if($tuple[4]==true)
{
?>
<td>Emprunté</td>
<?php
}
else
{
?>
<td>Libre</td>
<?php
}
echo("$nb");
}
}
}
A voir également:

3 réponses

Buzzz
 
Salut Danyco,
Je ne vois pas trop ou est ton problème je peux pas tester ton code.
Moi a ta place je n'aurai pas trop melanger PHP et HTML
autrement dans ta fonction imprimer j'aurai mis:
echo("<h1><p align=\'center\'>Aucun résultat ne correspond a votre recherche</h1>"); //l.6
echo ("<tr><td><b>".$tuple[1]".</b>, ".$tuple[2]."</td>");
echo ("<td>".$tuple[3]."</td>"); //l.25 et 26
Voila, Bonne Chance et A+
0
Danyco Messages postés 15 Statut Membre
 
Salut,
merci de ta suggestion mais j'ai deja essayer et ca ne change rien mais merci qd meme
DANY
0
Utilisateur anonyme
 
Salut,
Il existe une fonction capable de te retourner directement le nombre de ligne de ta requete.
odbc_num_rows
Ca te fait l'economie d'une boucle et je suis sur que le 0 est geré.

Kalamit,
4 jours avant le soleil, la mer et les mouettes. :)
0
Utilisateur anonyme
 
function compte_ligne($res) 
{ 
  if (odbc_num_rows($res) != 0){
     return odbc_num_rows($res); 
  }
  else {
    return 0;
  }
}


Par exemple.

Kalamit,
4 jours avant le soleil, la mer et les mouettes. :)
0
Danyco Messages postés 15 Statut Membre
 
Salut ,
ouai je sais mais odbc num rows me renvoit toujours -1 alors ca me sert a rien mais merci qd meme
DANY
0