Forum Clubic

Recupérer le nom d'une option d'un select apres un $_POST

bonjour :slight_smile:
j’ai plusieurs questions mais je vais commencé par une
est ce que quelqu’un pourrait me dire qu’elle est la meilleure façon de recupérer le “nom” d’une option d’un select apres un $_POST
ça fonctionne sur 2 pages la page formulaire et la page resultat
en php ou javascript?


<select >
<option value='value1'>Nom1</option>
<option value='value'2>Nom2</option>
</select>
<select >
<option value='value10'>Nom10</option>
<option value='value'20>Nom20</option>
</select>

je sais comment recupérer “value” mais pas le “nom”
merci bien d’avance

Le navigateur renvoie toujours et uniquement la valeur. tu ne peux pas la récupérer en PHP, ni dans aucun autre langage, sans “ruser”.

Exemple:

Nom1

Et en php, en utilisant explode : explode(’::’, $_POST[‘machin’], 2).

Sinon avec javascript, tu dois pouvoir remplir une seconde liste synchronisée avec la première et qui contiendrait les textes des options.

d’accord j’ai bien compris
j’ai testé explode sa fonctionne mais mal
en fait les 2 $_POST envoyé compose les 2 variables d’une $url qui permet d’afficher le resultat

la j’obtiens bien le nom d’option du select mais pas le traitement de la page
un $_POST ne peux être utiliser qu’une fois ou il s’agit d’un autre bug? mince

je vais voir du coté javascript mais sa va etre laborieux vu le nombre d’option
merci :wink:

Pas saisi ton second problème mais bref… :slight_smile:

arf désolé je pensé être clair
en français sa donne :slight_smile:
ma page resultat interroge un server
et grâce à une variable qui est en fait une url en http : //…etc,

de la la page est généré c’est pour ça que j’ai mis $url
dans cette $url je recupère les $_post du formulaire et sa m’affiche le resultat

et la est le probleme sans explode la page est bien généré mais avec le explode j’obtiens le bon nom d’option de select mais la page est pas traité c’est pour ça que je demandais si un $_POST ne peu être utilisé qu’une fois ou un bug

voila j’espere être plus clair comme sa :slight_smile:
Edité le 15/07/2007 à 13:17

essaye de pas toucher à la variable, donc :

$machin = explode(’::’, $_POST[‘machin’], 2).

et pas :

$_POST[‘machin’] = explode(’::’, $_POST[‘machin’], 2).

c’est comme ça que j’avais fait


$machin1 = $_POST['machin1'];
$machin2 =  $_POST['machin2'];
$url ="http://...$machin1 ... $machin2";

la j’obtiens bon traitement de la page + bonne value en echo

et comme sa


$machin1 = explode('::', $_POST['machin1'], 2);
$machin2 = explode('::', $_POST['machin2'], 2);
$url ="http://...$machin1 ... $machin2";

j’obtiens page non traité et value = Array
c’est bizare pourtant je pense pas me tromper

attention :slight_smile:

$machin1 est un tableau, dans ton $url si tu fais : $url =“http://…$machin1 … $machin2”;

ça va donner :

…Array… … Array

c’est pas la même chose :slight_smile:

Je sais pas ce que tu veux faire exactement, mais ça marchera mieux ainsi :

$url =“http://…$machin1[1] … $machin2[1]”;

En vérifiant que $machin1[1] existe, ie:

if (isset($machin1[1]) && isset($machin2[1])) {
$url = …
}

en effet j’etais a l’ouest je viens de lire ça sur phpnet …est un tableau c’etait donc ça
alors la ça se complique un peu beaucoup
ma page aussi creer un tableau du meme genre

je vais reprendre au debut avec un $_POST et un tableau
si je continu avec 2 $_POST et un tableau dans un tableau c’est la cata assuré lol
je vais faire une pause neurone et eclair de genie au retour comme dab ^^
merci du temp que tu passe a me repondre en tout cas :wink:
alala c’est dur de pas être un pro