bibine125
Messages postés15Date d'inscriptionmardi 20 juillet 2004StatutMembreDernière intervention12 juillet 2005
-
11 juil. 2005 à 19:14
bibine125
Messages postés15Date d'inscriptionmardi 20 juillet 2004StatutMembreDernière intervention12 juillet 2005
-
12 juil. 2005 à 11:34
salut à tous !
j'ai problème pour concaténer plusieurs chaine de caractère. en effet
j'aimerai que à chaque fois que je clique sur une option de ma liste
déroulante (elle s'éffectue sur un OnChange d'un formulaire) ,
j'aimerai que cette option soit concaténer dans une chaine , et ainsi
de suite; comme ça je récupère la chaine pour ensuite la traiter plus
loin dans mon code:
voici le code:
<td valign="top" align="left" colspan="3"><?
//la chaine à concaténer , j'ai plusieurs varaible et POST['test'],
mais elle sont dans une //liste déroulante que j'exécute sur un
onchange. je pense que j'ai un problème de boucle.
//à chaque je n'ets qu'une seule valeur de concaténer et pas les anciennes valeurs
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 12 juil. 2005 à 08:57
Hello Bibine,
tu as garde les index que j'avais cree pour test lol ?
Ton onchange, encore une fois, il soumet ton formulaire, c'est ca ?
Je ne vois nulle part que tu conserves $chaineTab entre deux
soumissions. Or, quand tu soumets un formulaire, les seules variables
qui survivent sont celles passees en POST (ou GET) dans ce formulaire.
Bref, $chaineTab est remis a zero a chaque soumission. Je crois
que je t'avais montre justement comment conserver $chaineTab (je dis ca
parce que c'est la variable que j'utilise quand je serialise un tableau
ou un objet) : la serialisation, base64_encode() et le passer dans le
formulaire dans un input cache.
bibine125
Messages postés15Date d'inscriptionmardi 20 juillet 2004StatutMembreDernière intervention12 juillet 2005 12 juil. 2005 à 10:09
hi malalam,
j'ai gardé tout les index que tu m'avais crée t'inkiete!
je viens d'essayer ce que tu m'as proposé malalam. le problème c'est
que à chaque fois que je fais un Onchage j'ai la valeur précedente et
non la valeur sélectionnée qui s'affiche. c'est comme si il y avait un
temps de retard (à cause du input caché) , le fichier lit l'ancienne
valeur et la nouvelle valeur est dans le champ caché.lorsque je
sélectionne de nouveau une autre option la valuer précédente
s'affiche.Je voudrai uniquement que lorsque je sélectionne une option
dans ma liste déroulante sur un onchange l'élément sélectonné s'affiche
et non pas le précédent .
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 12 juil. 2005 à 10:20
Et tu voudrais afficher quoi exactement ? toutes les valeurs selectionnees depuis le debut + la valeur courante ?
Fais voir comment tu fais fonctionner ton code, pas tout le code si c'est long, juste un exemple de onchange, ton inout hidden, comment tu traites les deux et ce que tu affiches.
bibine125
Messages postés15Date d'inscriptionmardi 20 juillet 2004StatutMembreDernière intervention12 juillet 2005 12 juil. 2005 à 11:02
j'éxécute d'abord le premier code en haut (de ce ke j'ai envoyé, en
fait le premier formulaire) et ensuite le résultat de ce
formulaire est traité dans le deuxième en bas. j'ai repris le
code que tu ma donné avec la sérialisation des tableaux. Au départ
j'avais crée une fonction qu récupère une chaine de caractère
concaténée et qui renvoie un tableau de valeur : ex je clique sur
username, chainetab='username', je clique sur radacctId, chaine tab
='username','radacctId'; etc... et après je récupère cette chaine et je
la passe dans la fonction qui s'appele getword($chainetab) et la elle
me renvoie un tableau contenant
$wordarray(1=>'username',2=>'radacctId') etc.. voila ensuite je
lis ce tableau dans le code de la page virgo.php au niveau de foreach ($tab as $valeur) {CreateLine($valeur);}.
voila mon problème c'est une solution au problème
de retard dans le onchange avec le input cache mais mon problème c'est
que je ne sais pas comment faire pour concaténer dans chainetab
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 12 juil. 2005 à 11:22
Je ne sais pas ou tu affiches tes trucs, mais celui qui est a jour, c'est $tab. Tu peux l'afficher lui et tu auras tout, sans retard. La derniere entree est le dernier post effectue.
bibine125
Messages postés15Date d'inscriptionmardi 20 juillet 2004StatutMembreDernière intervention12 juillet 2005 12 juil. 2005 à 11:34
c'est $tab que j'affiche quand je fais foreach ($tab as $valeur) {CreateLine($valeur);}.mais la il y a tjs un retard car $tab est vide au départ; CreateLine($valeur) est l'endroit ou j'affiche la nouvelle ligne