begin process at 2012 05 31 16:50:46
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Débutants

 > 

recherche dans une table


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

recherche dans une table

mercredi 7 septembre 2005 à 13:19:13 | recherche dans une table

01cod10

J'aimerai afficher la liste de tous les membres ayant comme sexe femme dont l'age est compris entre 30 et 35 et  une photo 
je sais que je dois utiliser cette requete mais comment le faire je ne sais pas car l'age est une liste déroulante de cette sorte
18-24
25-29
30-35
etc

SELECT * FROM table WHERE (datenaissance BETWEEN 30 AND 35) AND
mercredi 7 septembre 2005 à 13:31:39 | Re : recherche dans une table

malalam

Administrateur CodeS-SourceS
Hello,

quel est le problème au juste ? Tu as juste :
SELECT age, photo, sexe FROM table WHERE (datenaissance BETWEEN 30 AND 35) AND sexe = 'femme'

Qu'est-ce qui ne fonctionne pas au juste ?

mercredi 7 septembre 2005 à 13:37:35 | Re : recherche dans une table

sephiroth1020

Pour la liste tu fera comme suite :

Puisuqe tu utilises pour chaque choix un intervalle de ans :

<select name="choix" >
            <option value=18> 18-24
            <option value=25> 25-29
            <option value=30> 30-35

</select>
..............
$ch1=$_POST['choix'];
$ch2=$ch1+5;


SELECT * FROM table WHERE (datenaissance BETWEEN $ch1 AND $ch2) AND sexe=f

mercredi 7 septembre 2005 à 13:41:05 | Re : recherche dans une table

01cod10

ok pour ça mais mon probleme est que l'utilisateur à un choix  dans une liste sexe ( femme ou homme) et le datenaissance (18-24,25-29,30-35 etc).
si je fais comme tu m'as dit j'aurai pas de réponse quand l'utilisateur choisira datenaissance entre 25 et 29 et sexe=homme



mercredi 7 septembre 2005 à 13:46:14 | Re : recherche dans une table

sephiroth1020

Réponse acceptée !
<select name="age" >
            <option value=18> 18-24
            <option value=25> 25-29
            <option value=30> 30-35

</select>

<select name="sex" >
            <option value=F> HOMME
            <option value=M> FEMME

</select>

..............................
$sex=$_POST['sex'];
$age=$_POST['age'];
$age2=$age+5;

SELECT * FROM table WHERE (datenaissance BETWEEN $age AND $age2) AND sexe=$sex

Lors de l insertion du sexe dans la base de donnée : on doit inserer F pour femme et M pour homme.

Et ça marche!!!

mercredi 7 septembre 2005 à 13:46:18 | Re : recherche dans une table

malalam

Administrateur CodeS-SourceS
Ah ok je n'avais pas pigé le problème de fond.
Bah tu fais un explode de ton choix.
$choix = explode ('-', $_POST['choix']);
et ta liste :
<option valu ="18-25">18-25</option>
etc...puis
datenaissance BETWEEN $choix[0] AND $choix[1]

mercredi 7 septembre 2005 à 13:47:58 | Re : recherche dans une table

malalam

Administrateur CodeS-SourceS
gaffe hein, tes valeurs ne sont pas toutes à intervalle = valeur de départ + 5, d'où le explode (). Pour le reste, Sephi a tout bon ;-)
mercredi 7 septembre 2005 à 14:32:48 | Re : recherche dans une table

01cod10

une question dans ma table la datenaissance est sous cette forme aaaa/mm/jj
mercredi 7 septembre 2005 à 15:12:15 | Re : recherche dans une table

01cod10

Excusez moi je crois que je m'explique mal
ma table contient un champ datenaissance sous cette forme aaaa/mm/jj
 voici le script que l'utilisateur utilisera

<HTML>

<HEAD>

</HEAD>

<FORM action="rechercher.php" method="POST">

<TABLE border="0" align="center" width="100%">

<TR>

<TD> Je suis</TD>

<TD > 

Homme<INPUT type="radio" name="" value="Femme">
Femme<INPUT type="radio" name="" value="Homme">

</TD>

</TR>

<TR>

<TD>Je recherche</TD>

<TD > 

Femme<INPUT type="radio" name="" value="Femme">
Homme<INPUT type="radio" name="" value="Homme">

</TD>

<TD></TD>

</TR>

<TR>

<TD>Age</TD>

<TD>

<SELECT name="age">

<OPTION value="18">18-24</OPTION>

<OPTION value="25">25-29</OPTION>

<OPTION value="30">30-34</OPTION>

<OPTION value="35">35-39</OPTION>

<OPTION value="40">40-44</OPTION>

<OPTION value="45">45-49</OPTION>

<OPTION value="50">50-54</OPTION>

<OPTION value="55">55 et plus</OPTION>

</SELECT>

</TD>

</TR>

<TR>

<TD>PAYS</TD>

<TD>

<SELECT name="pays ">

<OPTION value="Allemagne">Allemagne</OPTION>

<OPTION value="Belgique">Belgique</OPTION>

<OPTION value="Etats-Unis">Etats-unis</OPTION>

<OPTION value="France">France</OPTION>

<OPTION value="Pays-bas">Pays-bas</OPTION>

<OPTION value="Suisse">Suisse</OPTION>

</SELECT>

</TD>

</TR>

<TR>

<TD>Photo</b>

<INPUT type="checkbox" value="Photo"></TD>

</TR>

<TD></TD>

<TD><INPUT type="submit" name="Rechercher" tabindex="" align="left"></TD>

<TD></TD>

</TR>

</TABLE>

</FORM>

</HTML>


voici le script de recherche

<?

$pseudo = isset($_POST["pseudo"]) ? $_POST["pseudo"] : "";

$jesuis = isset($_POST["jesuis"]) ? $_POST["jesuis"] : "";

$age1=isset($_POST["age1"]) ? $_POST["age1"] : "";

$age2=$age1+5;

// information pour la connection à le DB

$host = 'localhost';

$user = 'root';

$pass = '';

$db = 'nombase';

// connection à la DB

$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );

mysql_select_db($db) or die ('Erreur :'.mysql_error());

// requête SQL qui compte le nombre total d'enregistrement dans la table et qui

//récupère tous les enregistrements

$select = "SELECT datenaissance,jesuis,pseudo,ville,pays FROM Table WHERE (datenaissance BETWEEN $age1 AND $age2) AND jesuis='$jesuis'";

$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );

$total = mysql_num_rows($result);

// si on a récupéré un résultat on l'affiche.

if($total) {

// lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.

while ($row = mysql_fetch_array($result)) {

echo '<table border="0" bgcolor="">'."\n";

echo '<tr>';

echo '<td><img src="data/' . $row["photo"] . ' " width="85" height="114"></td>';

echo'</tr>';

echo '<tr>';

echo '<td><font color="#023161"><b>'.$row["pseudo"].'</font></b> ';

echo '<td></td>';

echo '</tr>';

echo '<tr>';

echo '<td></td>';

echo '<td><font color="#023161"><b>VILLE</font></b></td>'; echo '<td>'.$row["ville"].'</td>';

echo'</tr>';

echo '<tr>';

echo '<td></td>';

echo '<td><font color="#023161"><b>PAYS</font></b></td>'; echo '<td>'.$row["pays"].'</td>';

echo'</tr>';

echo '</table>'."\n";

}

// on libère le résultat

mysql_free_result($result);

}

//mysql_close();

?>


mercredi 7 septembre 2005 à 16:30:42 | Re : recherche dans une table

malalam

Administrateur CodeS-SourceS
Dans ce cas tu devras faire le calcul pour savoir entre combien et combien et compris l'âge.

1 2 3

Cette discussion est classée dans : table, recherche, and, liste, age


Répondre à ce message

Sujets en rapport avec ce message

Recherche dans une table avec un ou plusieurs critères [ par murrigane ] Bonjour, J'essais de créer d'après un formulaire, une recherche sur un ou plusieurs critères : Le champ 1 est une liste déroulante, le champ 2 c'est d liste sujet forum [ par notestablished ] Bonjours, je cherche à créer (encore) un forum pour mon site. Cette fois j'aimerai n'utiliser qu'une seule table mysql. avant j'utilise une table pour Recherche mysql [ par simon0000 ] salut tous le monde ,j'ai une table mysql nomé ecole ou il ya Recuperer les champs d'une table dans une liste [ par jantonazzo ] Bonjour tout l'monde,J'aimerais afficher dans une liste deroulante les champs d'une table MySQL.<IMG alt="" hspace=0 src="file:///C:/Documents%20and%2 Recherche multicritére dans BD MySQL.... [ par obcstaff ] Salut a tous, voila je suis débutant et confronté a un probleme: - J'ai une table membre avec nom, prenom, pseudo, age...une table departement et une Probleme de recherche [ par chris tuckers ] Bonjour tout le monde, j'ai un problème tout bete mais la ca commence serieux à m'enerver, ca fait 2 jours que je suis dessus.J'ai une table incident. recherche script de validation par email [ par nebilphp ] Bonjour , je cherche pour terminer mon site perso (il me manque plus que sa d'ailleur) qui permet a un membre de s'inscrire par le biais d'un formula editer liste d'éléments n'étant pas dans une table [ par richarddum ] Bonjour,Mon soucis, je dispose de 2 tables (liste de personne, liste de diffusion de message).Dès qu'un message est transmit à quelqu'un il est donc e triple jointure JOIN LEFT SQL [ par coucou747 ] Salut, Pour un projet, j'aimerais faire une triple jointure : j'ai fait une table mysql pour des contacts, une table qui contient des groupes, une ta Recherche un script pour afficher la liste des enregistrements en fonction de leur première lettre [ par Gecko62 ] Bonjour,J'aimerais afficher sur une page la liste de toutes les lettres de l'alphabet permettant d'afficher tous les enregistrements commençant par ce


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales