Conflit Javascript/PHP
6 messages
• Page 1 sur 1
- sultan
- WRInaute discret

- Messages: 52
- Inscription: 29 Fév 2004
Conflit Javascript/PHP
Bonjour à tous,
j'ai un petit conflit javascript/php...
Dans mon script PHP (un agenda), on peut ajouter plusieurs entrées simultanément,
J'ai donc plusieurs champs noms... C'est une boucle qui les crée en cyclant un formulaire. Je vais pas mettre tous les champs mais deux séries pour l'exemple. Ils son nommés ainsi:
nom_event[1]
adresse_event[1]
nom_event[2]
adresse_event[2]
Ce qui je dois avouer que lorsqu'on valide la page PHP et je dois récupérer
les valeurs pour les traiter, les nommer ainsi facilite bien la tâche puisque ce sont des tableaux... mais voilà mon problème est que je dois aussi utiliser le Javascript dans mon formulaire pour en fonction du pays détecter dans l'adresse, modifier dynamiquement une partie du formulaire, le problème est que quand je fais:
var adr=document.forms[0].adresse_event[1].value;
J'ai le conflit PHP/JS... il prend "adresse_event[1]" comme une valeur tableau dans JS et pas comme le nom de mon champ pour en retirer la valeur.
Est-ce que quelqu'un a une idée comment contourner ce problème ?
Merci d'avance de votre aide,
Laurent
j'ai un petit conflit javascript/php...
Dans mon script PHP (un agenda), on peut ajouter plusieurs entrées simultanément,
J'ai donc plusieurs champs noms... C'est une boucle qui les crée en cyclant un formulaire. Je vais pas mettre tous les champs mais deux séries pour l'exemple. Ils son nommés ainsi:
nom_event[1]
adresse_event[1]
nom_event[2]
adresse_event[2]
Ce qui je dois avouer que lorsqu'on valide la page PHP et je dois récupérer
les valeurs pour les traiter, les nommer ainsi facilite bien la tâche puisque ce sont des tableaux... mais voilà mon problème est que je dois aussi utiliser le Javascript dans mon formulaire pour en fonction du pays détecter dans l'adresse, modifier dynamiquement une partie du formulaire, le problème est que quand je fais:
var adr=document.forms[0].adresse_event[1].value;
J'ai le conflit PHP/JS... il prend "adresse_event[1]" comme une valeur tableau dans JS et pas comme le nom de mon champ pour en retirer la valeur.
Est-ce que quelqu'un a une idée comment contourner ce problème ?
Merci d'avance de votre aide,
Laurent
-

blman - WRInaute accro

- Messages: 3073
- Inscription: 5 Sep 2003
Classique !
1- Nomme tous tes champs adresse_events[] ou nom_events[] (sans les valeurs 0, 1, 2, 3, ...)
2- Pour tester tes champ en js, fait une boucle sur tout tes champs et repère ton champ avec ceci :
début de boucle
if(document.form[0].elements[i].name=="adresse_event[]"){
TES TESTS
}
fin de boucle
3- tu récupère tous tes champs en PHP en $adresse_event[] avec une boucle aussi :
$c=0;
while(isset($etat[$c])){
TON CODE
$c++;
}
Voila, je sais pas si tu va comprendre mais effectivement, il y a un petit conflit dans ce cas dans le nommage des variables.
1- Nomme tous tes champs adresse_events[] ou nom_events[] (sans les valeurs 0, 1, 2, 3, ...)
2- Pour tester tes champ en js, fait une boucle sur tout tes champs et repère ton champ avec ceci :
début de boucle
if(document.form[0].elements[i].name=="adresse_event[]"){
TES TESTS
}
fin de boucle
3- tu récupère tous tes champs en PHP en $adresse_event[] avec une boucle aussi :
$c=0;
while(isset($etat[$c])){
TON CODE
$c++;
}
Voila, je sais pas si tu va comprendre mais effectivement, il y a un petit conflit dans ce cas dans le nommage des variables.
- sultan
- WRInaute discret

- Messages: 52
- Inscription: 29 Fév 2004
blman a écrit:Classique !
1- Nomme tes champs adresse_events[]
2- Pour tester tes champ en js, fait une boucle sur tout tes champs et repère ton champ avec ceci :
- Code: Tout sélectionner
début de boucle
if(document.form[0].elements[i].name=="adresse_event[]"){
TES TESTS
}
fin de boucle
3- tu récupère tous tes champs en PHP en $adresse_event[] avec une boucle aussi :
- Code: Tout sélectionner
$c=0;
while(isset($etat[$c])){
TON CODE
$c++;
}
Voila, je sais pas si tu va comprendre mais effectivement, il y a un petit conflit dans ce cas dans le nommage des variables.
Je vais essayer... Y a juste que le code PHP me semble un peu flou... la variable "$etat" me perturbe lol
Sinon pour le cycle JS, je suppose que je peux récupérer le nombre d'éléments pour créer la boucle avec un comptage de nombre de valeur dans le tableau "document.form[0].elements[i]"
Dernière édition par sultan le Ven Oct 13, 2006 11:50, édité 1 fois.
- sultan
- WRInaute discret

- Messages: 52
- Inscription: 29 Fév 2004
sultan a écrit:blman a écrit:Ah oui pardons :
$c=0;
while(isset($adresse_envent[$c])){
TON CODE
$c++;
}
Pour le comptage : document.form[0].elements.length;
Merci je vais essayer tout ça cette après midi
Après de nombreux test, j'ai simplifié le problème... en fait j'ai nommé tous mes champs avec une ID unique et j'accède à la valeur du champ par son ID
6 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
Consultez la description détaillée des produits ou services de Google suivants : Google Related Links, Google Compute
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité
