Récupérer var

Lo2
Eléphanteau du PHP | 13 Messages

19 août 2005, 00:32

Bonjour,
<?php
$options="";
?><tr>
    <td width="15%"><center>Memoire</center></td>
    <td width="6%"><center>
      <select name="test" onchange="multiple2(this.value,<?php echo $options;?>);">
        <option value="1">1</option>
        <option value="2">2</option>
        etc.

$options="coucou";
Ma variable $options se remplie ensuite suite à un traitement(ici c'est "coucou"), est-ce possible qu'elle envoie bien "coucou" et non la chaine vide.

Lo2.

Mammouth du PHP | 19672 Messages

19 août 2005, 00:53

:shock: un truc m'échappe : tu initialises une variable avec une chaine vide: comment voudrais-tu qu'elle te retourne autre chose ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphanteau du PHP | 22 Messages

19 août 2005, 00:55

Le code correct est :
<?php
$options="coucou";
?><tr>
    <td width="15%"><center>Memoire</center></td>
    <td width="6%"><center>
      <select name="test" onchange="multiple2(this.value,<?php echo $options;?>);">
        <option value="1">1</option>
        <option value="2">2</option>
        etc.
:wink:

Lo2
Eléphanteau du PHP | 13 Messages

19 août 2005, 08:26

Je me suis mal exprimé.
Ma variable $options ne peut pas être remplie avant que mon select et onchange l'appelle.
$options sera obligatoirement remplie après et j'aimerai que onchange appelle $options remplie et non pas vide.

Mammouth du PHP | 19672 Messages

19 août 2005, 09:10

onchange est un évènement JavaScript qui s'exécute donc coté client. Le PHP n'est exécuté que du coté serveur. Tu ne peux pas alimenter la valeur d'une variable PHP depuis JavaScript sans envoyer la valeur vers le serveur : donc il faudrait qu'il y ait un rechargement de la page.

Pour les échanges JavaScript/PHP, regarde un peu ce tuto.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Lo2
Eléphanteau du PHP | 13 Messages

19 août 2005, 13:59

Le code ci-dessus est en php et j'appelle une fonction javascript qui inserera du code (avec la methode decrite par le faq). Post où tu m'avais répondu dans la section javascript :)

Je ne veux pas que ce soit lorsqu'on actionne onchange que $option se remplisse mais bien lorsque le code php s'execute, dès la première fois que l'on accède à la page en question, pour avoir au final un page html avec à la place de $options une chaine final non vide. Ici résumé par "coucou".

Lo2
Eléphanteau du PHP | 13 Messages

19 août 2005, 14:24

Oubliez ma question, je pensais que je n'avais pas le choix et que je ne pouvais pas remplir ma variable $options avant le "onchange=" mais je crois que c'est possible.
Je reviens lundi pour vous tenir au courant.

Lo2.

Lo2
Eléphanteau du PHP | 13 Messages

24 août 2005, 02:06

Un grand merci à Cyrano pour son tutoriel sur les listes déroulantes.
J'ai abandonné avec le javascript car pas simple niveau compatibilté firefox + IE et pb de syntaxe.
Bref, j'ai fait la méthode 100% PHP et ça roule :P

Encore merci !! :merci:

Mammouth du PHP | 19672 Messages

24 août 2005, 10:23

J'ai abandonné avec le javascript car pas simple niveau compatibilté firefox + IE et pb de syntaxe.
Ça me surprend un peu, en principe ça fonctionne aussi bien avec Firefox, IE ou Opera :-k
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: