Votre question

Besoin de plusieur champ pour rechercher

Tags :
  • Programmation
Dernière réponse : dans Programmation
1 Mai 2009 15:11:54

Bonjour, j'ai un gros soucis pour pouvoir coder, j'ai beau chercher partout pas moyen d'obtenir une réponse :( 

J'explique mon cas..
J'ai un formulaire que le visteur dois remplir pour effectuer une recherche dans ma bdd...jusque là pas trop compliquer me direz-vous !

Là où ça coince c'est que les réponses retournées par ma bdd doivent tenir compte de tout les champ rempli...j'explique

Par exemple j'ai dans ma bdd les champs suivant:

prénom nom ville hobby date naissance mail

dans mon formulaire j'ai trois champs à remplir:

prénom ville hobby



Donc si l'utilisateur rempli sophie paris tennis

ma bdd dois lui répondre:

sophie dumoulin paris tennis 24/05/1978 dumoulin.s@....
sophie dufour paris tennis 12/02/1975 sophie.dufour@...
sophie dupré paris tennis 06/03/1974 dupré.sophie@...

et ainsi de suite...


Donc mon problème c'est de savoir comment obliger ma bdd à tenir compte de tout les champs rempli pour rechercher ceux qui entrent dans les conditions.

Pour lui dire d'afficher tout ceux qui entre dans 1 condition, pas de soucis, je fait mon codage sans problème avec ma boucle et op l'affaire est dans le sac mais lorsqu'il sagit de tenir compte de plusieurs conditions alors là je sèche...

Ca fait 3 jours que je cale là dessus :( 



voici mon code de base qui ne reprend pas l'exemple donné (l'exemple est simpliste pour comprendre ma question)


<?php
if (isset($_POST['recherche_cp'])){
mysql_connect("localhost","root","mysql");
mysql_select_db ("belgitopia");

$cpo_q = $_POST['recherche_cp'];
$cpo_sql ="SELECT * FROM recherche WHERE cp LIKE '%$cpo_q%'";
$cpo_req=mysql_query($cpo_sql) or die(mysql_error());
mysql_close();

while($cpo=mysql_fetch_array($cpo_req)){
?>
<hr id="recherche_haut_hr" style="color: #f7b309;">
<center><img src="<?php echo $cpo['images']; ?>" width="500px"></img></center>

<table width="100%">
<tr><td valign="top" width="30%"><h2><?php echo $cpo['type_activite']; ?></h2><td width="5%"></td>
<td valign="top" width="30%"><h2><?php echo $cpo['nom']; ?></h2>
<td width="5%"></td><td width="30%"><?php echo $cpo['lien_site']; ?></td>
</tr>
<tr><td valign="top" width="30%" style="border: dotted 1px #f7b309;"><?php echo $cpo['descriptions']; ?></td><td width="5%"></td>
<td valign="top" width="30%"><?php echo $cpo['tel']; ?> <br/> <?php echo $cpo['fax']; ?><br/><?php echo $cpo['horaires']; ?></td>
<td width="5%"></td><td valign="top" width="30%"><?php echo $cpo['adresse']; ?><br/><?php echo $cpo['cp']; ?><br/><?php echo $cpo['commune']; ?><br/><?php echo $cpo['mail']; ?><br/><?php //echo $cpo['plan_acces']; ?></td>
</tr>
</table>
<?php
}
}
?>

Autres pages sur : besoin plusieur champ rechercher

1 Mai 2009 16:27:20

salut

lala vite fait en te lisant en 1 minute, je vote pour une boucle Do-while

do
{
nbsp;bloc d'instruction(s);
}
while( condition );/



essaye de develloper ton code avec, si tes boucles plante je vais aider.
je repasse étudier ton cas ce soir vers 21h. la j'ai ma cops qui me persecute pour 3*rien!.

Martial
1 Mai 2009 17:33:45

Hummm...ben là je dis......heuuu de quoi! Mdr

Je ne connais pas du tout "do while"...pourrais-tu m'expliquer, j'ai des bases de php mais je ne connais pas profondément, je me débrouille pas trop mal en général mais là j'avoue, je ne connais pas, c'est peu être pour ça d'ailleurs que je rame depuis 3 jours là dessus en cherchant au mauvais endroit lol

sympa en tout cas de m'aider et de repasser plus tard :-) un grand merci à toi
Contenus similaires
1 Mai 2009 18:13:37

Voilà j'ai trouver !!!! je file l'info pour ceux qui cherchent aussi :-)

<?php
if (isset($_POST['nom'])){
if (isset($_POST['commune'])){
if (isset($_POST['cp'])){
if (isset($_POST['type'])){
mysql_connect("localhost","root","mysql");
mysql_select_db ("belgitopia");

$avance_nom = $_POST['nom'];
$avance_commune = $_POST['commune'];
$avance_cp = $_POST['cp'];
$avance_type = $_POST['type'];
$avance_sql ="SELECT * FROM recherche WHERE nom LIKE '%$avance_nom%' AND commune LIKE '%$avance_commune%' AND cp LIKE '%$avance_cp%' AND type_activite LIKE '%$avance_type%'";
$avance_req=mysql_query($avance_sql) or die(mysql_error());
mysql_close();
while($avance=mysql_fetch_array($avance_req)){
?>
<hr id="recherche_haut_hr" style="color: #f7b309;">
<center><img src="<?php echo $avance['images']; ?>" width="500px"></img></center>

<table width="100%">
<tr><td valign="top" width="30%"><h2><?php echo $avance['type_activite']; ?></h2><td width="5%"></td><td valign="top" width="30%"><h2><?php echo $avance['nom']; ?></h2>
<td width="5%"></td><td width="30%"><?php echo $avance['lien_site']; ?></td></tr>
<tr><td valign="top" width="30%" style="border: dotted 1px #f7b309;"><?php echo $avance['descriptions']; ?></td><td width="5%"></td>
<td valign="top" width="30%"><?php echo $avance['tel']; ?><br/><?php echo $avance['fax']; ?><br/><?php echo $avance['horaires']; ?></td>
<td width="5%"></td><td valign="top" width="30%"><?php echo $avance['adresse']; ?><br/><?php echo $avance['cp']; ?><br/><?php echo $avance['commune']; ?><br/>
<?php echo $avance['mail']; ?><br/>
<?php //echo $avance['plan_acces'];?></td>
</tr>
</table>
<?php
}
}
}
}
}

?>
1 Mai 2009 22:12:42

salut me voila avec une heure de retard a cause de ma copsssssss!

mais j'avoue etre largué par cet argument !je vais l'etudier.

$avance_sql ="SELECT * FROM recherche WHERE nom LIKE '%$avance_nom%' AND commune LIKE '%$avance_commune%' AND cp LIKE '%$avance_cp%' AND type_activite LIKE '%$avance_type%'";

mais je pense que ca depend de ta bdd

sinon c'est résolu.



par caliche lui meme.
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS