Remplir une liste automatiquement

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Remplir une liste automatiquement

Re: Remplir une liste automatiquement

par dix2 » 08 mars 2012, 12:51

salut,

voici la signature de la fonction mysqli_query :
mixed mysqli_query ( mysqli $link , string $query [, int $resultmode = MYSQLI_STORE_RESULT ] )

ce qui signifie qu'il y a 2 paramètres obligatoires et un parametre optionnel dont la valeur par défaut est MYSQLI_STORE_RESULT

le 1er parametre obligatoire est ta connexion à la base de données et le 2eme ta requete

ton $link, tu l'obtiens avec :
$link = mysqli_connect('localhost', 'my_user', 'my_password', 'my_db');
à placer, bien entendu, avant l'appel de la fonction mysqli_query

dix2
ps : un conseil : enregistre le site http://www.php.net dans tes favoris :wink:

Re: Remplir une liste automatiquement

par jujurochedu42 » 08 mars 2012, 12:44

C'est bon, problème résolu de la façon suivante :

<?php
$bdd = mysqli_connect('localhost', 'test', 'test', 'test');
$sql = 'SELECT DISTINCT type FROM catalogue';
$res = mysqli_query($bdd,$sql);
echo '<select name="type">';
if( mysqli_num_rows($res) > 0 )
{
while( $data = mysqli_fetch_array($res) )
echo '<option value="' . $data['type'] . '">' . $data['type'] . '</option>';
}
echo '</select>';

?>

Re: Remplir une liste automatiquement

par jujurochedu42 » 08 mars 2012, 12:39

Merci pour la réponse

voici le code adapté :

 <?php
				
				$sql = 'SELECT DISTINCT type FROM catalogue';
				$res = mysqli_query($sql);
				echo '<select name="type">';
				if( mysqli_num_rows($res) > 0 )
				{
 				while( $data = mysqli_fetch_array($res) )
    			echo '<option value="' . $data['type'] . '">' . $data['type'] . '</option>';
				}
				echo '</select>';
				
?>		



Par contre j'ai l'erreur suivante :

mysqli_query() expects at least 2 parameters, 1 given 

Apparemment il me manque un paramètre ?

Re: Remplir une liste automatiquement

par xTG » 08 mars 2012, 11:09

Voilà la base :
$sql = 'SELECT id, nom FROM maTable';
$res = mysqli_query($sql);
echo '<select name="monSelect">';
if( mysqli_num_rows($res) > 0 ){
  while( $data = mysqli_fetch_array($res) )
    echo '<option value="' . $data['id'] . '">' . $data['nom'] . '</option>';
}
echo '</select>';

Remplir une liste automatiquement

par jujurochedu42 » 08 mars 2012, 10:58

Bonjour,

J'ai 3 listes qui me permettent de faire une recherche. Dans ces trois listes, j'ai mis les valeurs en dur comme ceci :

Code : Tout sélectionner

<form id="recherche" action="index.php?module=catalogue&page=recherche" method="post"> <label>Recherche d'un voyage: </label> <SELECT name="type"> <OPTION VALUE="">CHOISIR UN TYPE&nbsp;</OPTION> <OPTION VALUE="journee">Journ&eacute;e</OPTION> <OPTION VALUE="avion-croisiere">Avion-Croisi&egrave;re</OPTION> <OPTION VALUE="france">France</OPTION> <OPTION VALUE="europe">Europe</OPTION> <OPTION VALUE="privilege">Privil&egrave;ge</OPTION> </SELECT> </form>

Je souhaiterais que la liste se remplisse automatiquement en fonction de ma base.

La requête est la suivante : SELECT `type` FROM `catalogue. Je n'ai pas d'idée comment faire, pourriez vous m'éclairez svp ?