Balise SELECT & PHP

mac4921

Membre confirmé
7 Février 2004
68
1
Ici & Là
Bonjour,

J'aimerais savoir comment récupérer la valeur d'une balise select dans php.
Ex : <select name="X"><option value="1">1</option> ......

Si je veux que cette "value" corresponde à une table SQL que dois-je écrire après mon $_POST.
EX : $base=$_POST[...]

Merci.
 
Simplement avec :
$POST['X']

Non ?
 
Euh ... non ... je ne crois pas, là ça me renvoie sur la base mais pas sur la table.
Mais peut-être prends-je je je le problème à l'envers, et qu'il conviendrait mieux d'inclure du php dans la balise select. Une boucle, pour définir un comportement tant qu'il y a un résultat, une cible, en l'occurence les tables de la base. Là se pose le problème de l'acquisition de cette cible : $_GET ou ???
J'sais pas quoi faire ...
 
Euh.. sans vouloir te vexer, je n'ai rien compris ! :confused:

La question que tu posais était :
J'aimerais savoir comment récupérer la valeur d'une balise select dans php.

À cette question, la seule réponse que je vois c'est d'utiliser $_POST['X'] (ou $_GET['X'] si ton formulaire est en méthode GET).

Je ne comprends pas quel tu souhaites faire avec la base de données ?!
 
Peut-être voulais tu simplement récuperer une information dans une base de données, qui correspond à la séléction du select:

<form method="post" action="">
<select name="choise">
<option value="surname">Prenom</option>
<option value="email">Email</option>
</select>
<input name="" type="submit" value="envoyer">
</form><br><br>

<?php

// Connection à MySQL

$req = 'SELECT ' . $_POST['choise'] . ' FROM table_name';
$sql = mysql_query( $req );
$sql = mysql_fetch_array( $sql );

echo 'L&rsquo;option que vous d&eacute;sirez vaut: ' . $sql[ $_POST['choise'] ];

?>
 
Là, on s'approche de la solution,

Concrètement, voici ce que je souhaite faire : j'ai une bd avec des résultats de compétitions sportives.
Dans cette base chaque Table est une compétition différente.

J'ai un formulaire avec une balise select qui affiche en "dynamique" la liste des tables :

$tables=mysql_list_tables(nomBase,Connexion);
echo '<select name="listeTable" id="listeTable">';
for ($y=0; $y<mysql_num_rows($tables);$y++)
{
echo'<option value="'.mysql_tablename($tables,$y).'">'.mysql_tablename($tables,$y).'</option>';
}
?></select></li>

Le formulaire renvoi sur le fichier afficheResult.php qui doit afficher les résultats en fonction du choix dans la balise SELECT, mais ...

$utilisateur=User;
$motpasse=Mp;
$hote=Hote;
$base=nomBase;
$table=$_POST[listeTable];

et c'est là que je coince, $table devant prendre la valeur de la VALUE et non du NAME de la balise SELECT.

J'espère que j'ai été plus clair. Dans tous les cas merci de vos réponses.
 
Oui c'est ce qu'on t'a marqué:

$table sera égale à la VALUE de NAME

En d'autre termes:

<select name="choise">
<option value="surname">Prenom</option>
<option value="email">Email</option> // <-- Cette option sera séléctionnée, par exemple
</select>

$_POST['choise'] sera égal à email
 
Eh ben... c'est bien ce que je disais dans mon premier message ! :D
 
Voui, Voui tout à fait.

Je ne sais pas pourquoi mais je m'obstinais à chercher des solutions à un problème qui n'existait pas.

Et pour ne pas changer : MERCI.