Page 1 sur 1

Je patine...

Posté : 28 janv. 2012, 20:19
par ganaweb
Bonjour,
Je voudrais que lorsque la recherche ne trouve rien dans la base, il s'affiche un texte du genre : "Désolé, je n'ai rien trouvé !"
$mot = ($_POST['mot']);
// Création de la requête SQL
$sql = "SELECT id_url, url, text, metier, ville, codepostal FROM tab_addurl Where ville LIKE '%".mysql_real_escape_string($mot)."%' Or metier LIKE '%".mysql_real_escape_string($mot)."%' Or codepostal LIKE '%".mysql_real_escape_string($mot)."%' Or text LIKE '%".mysql_real_escape_string($mot)."%'";


// Envoi de la requête
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

// Boucle qui va faire un tour pour chaque enregistrement
	echo '<br>';
	echo ' <p align="center"><font face="Verdana" size="4" color="#999999"><a href="javascript:history.go(-1)" style="text-decoration: none; font-weight: 700"><font color="#99CC00">Retour</font></a></font></p>';
    echo ' <p align="center"><font face="Verdana" size="4" color="#FF9900"><b>Liste des Adhérents dont le critère de recherche est : '.$mot.' </b></font></p><br>';
	echo ' <table border="1" width="100%">';
while($data = mysql_fetch_assoc($req))
{
    // Affichage des informations de l'enregistrement en cours
	
	echo ' <tr><td width="30"><p align="center"><font face="Verdana" size="2" color="#99CC00"><b>'.$data['id_url'].'</b><br></font></p></td>';
	echo ' <td width="160"><p align="center"><font face="Verdana" size="2" color="#999999"><a target=_blank; href="'.$data['url'].'">'.$data['url'].'</a><br></font></p></td>';
	echo ' <td width="300"><p align="center"><font face="Verdana" size="2" color="#999999">'.$data['text'].'<br></font></p></td>';
	echo ' <td width="140"><p align="center"><font face="Verdana" size="2" color="#999999">'.$data['metier'].'<br></font></p></td>';
	echo ' <td width="140"><p align="center"><font face="Verdana" size="2" color="#999999">'.$data['ville'].'<br></font></p></td>';
	echo ' <td width="50"><p align="center"><font face="Verdana" size="2" color="#999999">'.$data['codepostal'].'<br></font></p></td></center>';
	echo ' </tr>';
}  
	echo ' </table><br>'; 
	echo ' <p align="center"><font face="Verdana" size="4" color="#999999"><a href="javascript:history.go(-1)" style="text-decoration: none; font-weight: 700"><font color="#99CC00">Retour</font></a></font></p>';
// Fermeture de la connexion à mysql
mysql_close();
?> 
Je pense qu'il doit falloir un if quelque part, mais je n'arrives pas à l'écrire...
J'avais pensé à if ('.$data['url'].' <>"" } puis un else mais... je patine !
Quelqu'un pourrait-il m'aider ?
D'avance merci... Je suis un débutant de 68 ans... Merci de votre compréhension.

Re: Je patine...

Posté : 28 janv. 2012, 21:02
par xTG
La fonction mysql_num_rows() est là pour te renvoyer le nombre de résultats.
Tu peux donc faire un test sur sa valeur de retour et exécuter ta boucle while ou bien afficher ton message selon le résultat.

Re: Je patine...

Posté : 29 janv. 2012, 18:29
par ganaweb
Super la réponse...
Heureusement ais-je précisé que j'étais débutant !
Ce qui aurait été sympa c'est que quelqu'un me donne le bout de code à écrire...

Merci à tous !

Re: Je patine...

Posté : 29 janv. 2012, 18:32
par xTG
Super la réponse...
Heureusement ais-je précisé que j'étais débutant !
Ce qui aurait été sympa c'est que quelqu'un me donne le bout de code à écrire...

Merci à tous !
Débutant ou assisté ?
Que vas-tu apprendre si on te donne des bouts de code tout fait ?
Tu resteras débutant à jamais... 8-|