8791 sujets

Développement web côté serveur, CMS

Bonjour,

J'ai mon code qui fonctionne mais au lieu de taper la recherche, je veux une liste de choix.

Mon code qui fonctionne, c'est un proto, donc il faudra faire le ménage.



<body>
 
  
<?php

$t=$_POST['t']; 

// lancement de la requete
$sql = 'SELECT * FROM Articles WHERE (t="'.$t.'")';	

// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());

?>
</p>
<p align="center"><u>Voici le contenu de la base par type</u> :</p>
<p align="center">Légumes, Fruits</p>
<p align="center"><u>Dans</u> :</p>
<form id="t" name="t" method="post" action="">
  <label for="t"></label>
  <div align="center">
    <p>
      <input type="text" name="t" id="t" placeholder="Cat&eacute;gorie ?" size="30" maxlength="30" />
    </p>
    <p>
      <input type="submit" name="button" id="button" value="Envoyer" />
    </p>
  >
  </div>
</form>
<div align="center"><br/>
  
  <?
// on fait une boucle qui va faire un tour pour chaque enregistrement 
while($data = mysql_fetch_assoc($req)) 
    { 
    // on affiche les informations de l'enregistrement en cours 
  
    echo '<b>'.$data['l'].'</b> '.$data['t'].'-'.$data['d'].'-'.$data['p'].'-'.$data['s'].'<br/>';	

    } 

// on recupere le resultat sous forme d'un tableau
$data = mysql_fetch_array($req);

// on libÃ&#154;re l'espace mémoire alloué pour cette interrogation de la base
mysql_free_result ($req);
?>

 </div> 
  
  <?
 mysql_close ();
?>


Je souhaite avoir un menu déroulant avec au choix légumes ou fruits.

Au final je veux 6 légumes 10 fruits par exemple, il faut indiquer ce que je recherche légumes ou fruits.

Je sais que c'est possible mais je n'y arrive pas. J'ai essayé par groupe mais je débute alors ...

Merci par avance.
Modifié par CVS (15 Jul 2012 - 20:01)
Merci bien, je peux avoir un exemple ?

Je suis vraiment débutant, c'est pas faute de chercher mais un bonne exemple, ça aide bien.

Le copain m'a fait un truc qui fonctionne par la fonction groupe.

Il avait passé les valeurs t dans un groupe.

Le truc c'est que je sèche une fois que j'ai la barre déroulante pour dire au serveur affiche moi la valeur que j'ai choisi dans le menu défilant.

Grand Débutant !!!!
Modifié par CVS (15 Jul 2012 - 19:22)
CVS a écrit :
C'est ça hophop mais sur le serveur SQL


Certes, mais il te faut bien passer par un formulaire....
Et par la fonction group ?

On dit au serveur de regrouper les légumes ensemble et les fruits ensembles et de m'afficher les légumes et les fruits sur la page suivant le choix de la liste déroulante en sql.
Modifié par CVS (15 Jul 2012 - 19:35)
holala, tu me perds.... Smiley biggol
c'est quoi que tu veux?
Moi je comprends que tu veux une liste de légumes ou de fruits. Et on peux sélectionner un ou plusieurs légumes...
tu as juste à trier le résultat de la requête SQL et d'afficher un groupe avec les fruits et un groupe avec les légumes
Le copain m'a fait ça :

$requete="SELECT t FROM Articles GROUP BY t

Je veux qu'il m'affiche tout les enregistrements que j'ai dans ma table qui correspond à la valeur t que j'ai sélectionné dans mon menu déroulant.

T à deux choix dans mon exemple légumes ou fruits.

Oh c'est pas simple !!!! Smiley bawling
Mais c'est une requête qui sert pour un formulaire ou juste faire apparaître les deux groupes?
....Même si c'est à peu près la même chose...

tu fais tout simplement

select * from ta_table where t=legumes

select * from ta_table where t=fruits


ou alors je comprends rien....
Je veux avoir un choix dans une liste pour choisir si j'affiche les légumes ou les fruits.

On va y arriver !!! On est pas loin de se comprendre Smiley cligne
Modifié par CVS (15 Jul 2012 - 19:48)
CVS a écrit :
Je veux avoir un choix dans une liste pour choisir si j'affiche les légumes ou les fruits.

On va y arriver !!!


Alors je te répète d'aller voir la balise <select>
et d'afficher tes options correspondant à fruits et légumes
Je viens de réussir à afficher tout mes légumes avec :

$sql = 'select * from Articles where (t="légumes")';

Mais légumes est fixe et je veux une liste ou je choisi légumes ou fruit.

On fait comment avec une balise sélect ? qui va demander au serveur d'afficher ce que je demande.

La liste déroulante est en place.

Je fais comment pour brancher la liste avec ma requête ?
Modifié par CVS (15 Jul 2012 - 19:57)
Merci, j'ai trouvé ça fonctionne !!!!

Merci encore pour votre aide, j'ai fini mon programme.

Youpi Smiley lol