bonjour,

mon script fonctionne bien mais un souci se montre

voici la parti problematique (tout le reste fonctionne)

while($data1 = mysql_fetch_assoc($req1))
    { 
    if(mysql_num_rows($req1) == 0){ 
    echo "Vous n'avez pas de commandes en attente.";
    }
    else{
    echo '<b>'.date("j/n/Y G:i",strtotime($data1'date'])).' : '.$data1'titre'].'</b><br>';
    }
}

le if ne s'affiche pas quand si il ne trouve pas d'enregistrement, j'ai alors essayer avec

....($req1) >0) {
if{echo '<b>'.date("j/n/Y G:i",strtotime($data1'date'])).' : '.$data1'titre'].'</b><br>';
}
else{
echo "Vous n'avez pas de commandes en attente.";
}
}

la c'est le else{} qui ne saffiche pas il y a trois niveau pour la valeur parcour 0,1,2 pour en attente, en cour puis terminer et les trois on ce bug

je n'arrive pas a cerner l'erreur :s

merci a vous

7 réponses


eloyas
Réponse acceptée

Bonjour :) ,

en, gros, si tu ne trouve rien, le while est ignioré...

A ta place, mets ton while dans le else, et sa devrais marcher normalement...

Cordialement Elo.

je dit peut'être une connerie, mais ta essayé if(mysql_num_rows($req1) === 0){ ?

corsinu
Auteur

malheureusement non :s rien ne change je ne sais même pas si sa ce fait '===' j'ai toujours eu '==' mais pas trois

=== --> strictement égale à

Sa rentre dans le while quand il n'y a pas d'enregistrement ?

corsinu
Auteur

en résumer si le while ne trouve rien on affiche "pas de commande" sinon on affiche "la date : le titre de la commande"

corsinu
Auteur

oulalala grosse erreur de ma part :O je vien de le capter maintenant se n'est pas le else{} mais le if{} ou le else{} sa depend si je met ==0 ou >0 et le while englobe le if{} et le else{}

je reprend ^^

si je demande au while '== 0' le if{echo 'Rien' } ne marche pas et si je dis par contre au while '> 0' (donc le if a ce moment affiche les résultats) et le else {echo 'Rien'; } ne marche pas du moins je s'affiche pas

a chaque cas en faite simplement quand il n'y pas d'enregistrement bin mon echo 'rien' ne saffiche pas

pour tout le reste sa marche