Créer un compte
Connexion

script et requete adequat

Pour créer et répondre aux sujets, vous devez être connecté.
Ce sujet est résolu.
Pages: 1
Auteur Message
fernandez
16/05/2014 à 18:41:39
fernandez
Membre

j'ai crée un moteur de recherche dans un site une j'ai fait pour une entreprise de construction et lorsque l'internaute tape sa recherche, selon le code php que jai fait, le resultat exacte de sa recherche apparait, si aucun resultat n'est trouvé, des resultats correspondand a un des champ rempli lui sont proposés.
je vous montre mon code php.
$req_AND = mysql_query("select * from batiment where lieu='$lieu' and superficie='$superf' and prix='$prix'");
$nombre_de_resultat = mysql_num_rows($req_AND);
if($nombre_de_resultat == 0){
echo "<p align=center><font color=red size=+2>AUCUN RESULTAT NE CORRESPOND A VOTRE RECHERCHE!</font></p>";
}
else{
while($dnn_AND = mysql_fetch_array($req_AND)){
?>
<tr>
<td bgcolor="#CCCCCC"><?php echo($dnn_AND['id']); ?></td>
<td><?php echo htmlentities($dnn_AND['lieu'], ENT_QUOTES, 'UTF-8'); ?></td>
<td width="152"><?php echo htmlentities($dnn_AND['superficie'], ENT_QUOTES, 'UTF-8'); ?></td>
<td width="132"><?php echo htmlentities($dnn_AND['prix'], ENT_QUOTES, 'UTF-8'); ?></td>
<td bgcolor="#CCCCCC" width="152"><?php echo($dnn_AND['description']); ?></td>


</tr>
<?php
}
}
?>
<tr>
</table>
<BR/><BR/>
<HR/>
<p><font color="#006600" size="+2">Résultats qui pourraient vous interrésser...</font></p>
</table>
<table width="596" border="1" align="center">
<tr>
<td width="70" align="center" bgcolor="#FFFFFF">ID</td>
<td width="169" align="center" bgcolor="#FFFFFF">LIEU</td>
<td align="center" bgcolor="#FFFFFF">SUPERFICIE</td>
<td align="center" bgcolor="#FFFFFF">PRIX</td>
<td align="center" bgcolor="#FFFFFF">DESCRIPTION</td>

</tr>
<?php
$req = mysql_query("select * from batiment where lieu='$lieu' or superficie='$superf' or prix='$prix'");
while($dnn = mysql_fetch_array($req)){
?>
<tr>
<td bgcolor="#FFFFFF"><?php echo($dnn['id']); ?></td>
<td><?php echo htmlentities($dnn['lieu'], ENT_QUOTES, 'UTF-8'); ?></td>
<td width="152"><?php echo htmlentities($dnn['superficie'], ENT_QUOTES, 'UTF-8'); ?></td>
<td width="132"><?php echo htmlentities($dnn['prix'], ENT_QUOTES, 'UTF-8'); ?></td>
<td bgcolor="#CCCCCC" width="152"><?php echo($dnn['description']); ?></td>
</tr>
<?php
}

mon souci est que meme lorsque un resultat est trouvé avec la première requete AND, le meme resultat aparait avec la deuxième requete OR; c'est ce que je veux eviter.
je veux que si la premiere requete s'execute, alors que la deuxième ne s'execute pas. vis versa.

aidez moi s'il vous plait. merci d'avance  :-.

blingcru
18/05/2014 à 18:34:16
blingcru
Membre
deja tu dis a ton code de le faire apres ta recherche si tu veux pas tu dois metre la seconde recherche dans la parti if($nombre_de_resultat == 0){ ou en inverser if($nombre_de_resultat > 0){ on fait la boucle qui prend le resultat } else { tout lreste du code et la deuxieme boucle de recherche }

https://guerredesgangs.net & http://www.bazinio.ca & http://www.thestreet2.ca
fernandez
20/05/2014 à 11:31:59
fernandez
Membre
MERCI POUR VOTRE AIDE


fernandez
24/05/2014 à 15:42:12
fernandez
Membre
bonjour à tous
je veux creer un moteur de recherche a l'aide de 3 champs: lieu,prix,superficie pour permettre a l'internaute de chercher son choix dans ma base de donnée.

je voudrais le code php qui permettrait dans un premier afficher un résultat si les 3 critères rentrés par l’internaute sont respectés et ensuite et juste en dessous du premier résultat afficher un deuxième résultats qui affiche les données qui qui respectent au moins un des critères rentré par l'internaute.

NB: le résultat obtenu au premier ne doit apparaitre dans le deuxième

Aidez moi s'il vous plait. merci


fernandez
28/05/2014 à 11:30:47
fernandez
Membre
c'est mon code php pour mon moteur de recherche que j'ai afficher dans mon premier commentaire.

merci

plombier12
10/06/2014 à 18:25:30
plombier12
Membre
MERCI pour la code

Pour le professionnel de nettoyage de vidange qui est garanti pour enlever l'entrave au lieu de fournir une aide à court terme, regardez à votre équipe de plombier paris : http://www.amservices75.fr et
http://www.plombier-paris-pascher.fr
http://monplombierparis.fr/plombier-pas-cher-paris/
http://www.sos-plombier-discount.fr/
merci  :)
lijah
14/06/2014 à 23:32:01
lijah
Membre
Bonjour,

Tu peux ajouter une condition dans ta 2e requête afin de vérifier que les 3 champs ne match pas :

Quote
$req = mysql_query("select * from batiment where (lieu='$lieu' or superficie='$superf' or prix='$prix') and not (lieu='$lieu' and superficie='$superf' and prix='$prix') ");


JeCreeMaVitrine.fr - Création de site en ligne
fernandez
23/06/2014 à 20:03:45
fernandez
Membre
quand je met deux condition comme vous me le suggerez, il ya un message d'erreur de boolean qui surgit dans la ligne du "while"

dverrys
18/09/2014 à 13:38:53
dverrys
Membre
Thanks You for the code,

Pages: 1