|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 | ||||||
|
Débutant
Inscription : avril 2005 Messages : 464 ![]() |
Bonjour,
je dispose dans mon formulaire des champ de type tableau que je recupére voilà mon formulaire : Code php :
dans ma page php sous forme de tableaux array(). je veux passer par ajax pour faire la requête. j'ai essayé par Code :
dans ma page php je les recupére comme ça : Code php :
Merci de vos solutions. Cordialement. |
||||||
|
|
00
|
|
|
#2 | |
|
Nouveau Membre du Club
![]() |
Citation:
Lien : json_encode |
|
|
00
|
|
|
#3 |
|
Débutant
Inscription : avril 2005 Messages : 464 ![]() |
Bonjour mctarek,
En fait avant d'avoir l'array() pHP, javascript doit d'abord envoyer un tableau de type [] html. Mon soucis c'est comment javascript traite ce type d’élément pour l'envoyer via ajax ? Cordialement |
|
|
00
|
|
|
#4 | |||
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 807 ![]() |
Code :
![]() Citation:
Il faut donc rechercher le nom exact.
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|||
|
00
|
|
|
#5 | ||||
|
Débutant
Inscription : avril 2005 Messages : 464 ![]() |
Bonjour
En ajoutant l'id sur les balise input comme cela Code php :
et en faisant : Code :
je crois c'est à la transmission des éléments [] qui pose tjrs probléme. Cordialement |
||||
|
|
00
|
|
|
#6 |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 807 ![]() |
D'abord, ce serait sympa de poster le code HTML généré et pas le PHP (voir : Important : Les règles incontournables d'utilisation de ce forum).
Ensuite, tu n'as toujours pas d'id chapitre ou labox
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
00
|
|
|
#7 |
|
Débutant
Inscription : avril 2005 Messages : 464 ![]() |
Bonjour,
Tu parles de quel code html généré ? En fait j'ai mis l'attribut d'id sur les deux champ à savoir chapitre et labox. Cordialement |
|
|
00
|
|
|
#8 | |||
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 807 ![]() |
Citation:
Citation:
![]() Si j'en crois mes yeux, tu as mis Code php :
id="chapitre[<?php echo $idLigne; ?>]" renverra toujours false... Citation:
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|||
|
00
|
|
|
#9 | ||||
|
Débutant
Inscription : avril 2005 Messages : 464 ![]() |
Bonjour,
avec : Code :
et coté javascript : Code :
Et le le (CTRL+U) affiche une page blanche. Cordialement. |
||||
|
|
00
|
|
|
#10 |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 807 ![]() |
Est-ce que tu es capable de comprendre qu'avec cette notation, l'id de ton élément est "chapitre[]", pas "chapitre" !
Donc nécessairement Code :
chapitre= document.getElementById('chapitre').value;
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
00
|
|
|
#11 | ||||
|
Débutant
Inscription : avril 2005 Messages : 464 ![]() |
Bonjour,
Oui tout à fait c'etait évident, . Bon avec Code :
mais dans mon fichier php , j'ai cet erreur : Code :
Warning: Invalid argument supplied for foreach() Code :
Cordialement. |
||||
|
|
00
|
|
|
#12 | |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 807 ![]() |
Citation:
D'autre part, comme un id doit être unique dans la page, ta création d’identifiants est incorrecte. Il faut que tu fasses une boucle pour récupérer la valeur de chaque input et l'ajouter aux paramètres à envoyer.
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
|
00
|
|
|
#13 |
|
Débutant
Inscription : avril 2005 Messages : 464 ![]() |
Bonjour,
la valeur de chaque input : tu veux dire la valeur de chaque élément du tableau. Et la boucle , je le fais à la création d'identifiants où à l'envoi du tableau ? |
|
|
00
|
|
|
#14 | ||||
|
Débutant
Inscription : avril 2005 Messages : 464 ![]() |
Bonjour,
Bovino. Pour recupérer la valeur de chaque input, j'ai crée un tableau d'indices qui appelé indice de la même maniére que les input. Et dans javascrip je boucle sur le nombre d'indices pour recupérer la valeur de chaque input. voilà le html : Code :
en javascript : Code :
Merci d'une solution Cordialement. |
||||
|
|
00
|
|
|
#15 |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 807 ![]() |
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
00
|
|
|
#16 | ||||
![]() ![]() |
Bonsoir tout le monde, ... AVANT D'ALLER PLUS LOIN :
1/ Pour comprendre -> le 1er post de Madina : Modifier des enregistrements affichés dans un tableau HTML 2/ Quelqu'un a-t-il remarqué ces lignes dans le code fourni par Medina ? Code :
2 conseils : 1/ comme l'a dit Bovino -> poster UNIQUEMENT le code HTML généré, et pas le PHP 2/ Pour bien COMPRENDRE LE PRINCIPE, on va SIMPLIFIER le formulaire (3 éléments par array sont suffisants pour tester) Donc -> crée un fichier test.php dans lequel tu mets : Code :
... name="chapitre[33]" id="idchapitre[xx]" ... ... name="labox[33]" id="idlabox[xx]"... A partir de là, on peut "travailler" sur le script JAVASCRIPT/AJAX. -> TEST : on aura ici en index des array : 11, 22, 33. -> pour info, les index sont en fait les ID des enregistrements dans la table SQL : ils ne sont donc variables, pas forcément consécutifs, ni par ordre croissant ... -> une fois qu'on aura compris le principe, on passera au fichier réel. Tu peux lire : Conversion d'un tableau PHP de dimension N en tableau JavaScript (mais ca ne correspond pas exactement -> à cause des index)
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément." Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique. Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
|
||||
|
|
00
|
|
|
#17 | |
![]() ![]() |
STOP ! AVANT D'ALLER PLUS LOIN : (je me répète !)
Il m'est venu un doute sur l'utilité d'envoyer TOUTE la <table> à AJAX ... Madina, peux-tu expliquer précisément QUEL résultat tu cherches à obtenir ? Car s'il s'agit de modifier des lignes de <table> une par une "en live" (sans rechargement), une autre méthode est possible et moins complexe ! Citation:
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément." Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique. Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
|
|
|
|
00
|
|
|
#18 |
|
Débutant
Inscription : avril 2005 Messages : 464 ![]() |
Bonjour,
jreaux62 j’étais pas là hier. Bon en fait je veux simplement pouvoir modifier les lignes d'une table sans rechargement de la page. L'essentiel est que les modifications faites sur chaque ligne soient enregistrées au niveau de la table. Et dans ce cas, un simple message AJAX(pour rester dans la même page) pour lui dire que les modifications se sont bien passées suffirait. L'idée c'est de lui faciliter la tâche de pouvoir modifier plusieurs lignes d'une table en même temps. Les checkbox c'est pour simplement pouvoir identifier les différentes lignes qui sont modifiées et lui dire "tu as modifié nombre de lignes". Pour le code fourni, c'est le même but c'est juste les tables qui différent. Cordialement |
|
|
00
|
|
|
#19 |
![]() ![]() |
Bonjour Madina,
dans ce cas, inutiles de se compliquer la vie. Les solutions les plus simples sont toujours les meilleures, et sont celles de mon message précédent. 1/ La solution la plus simple et la plus classique est celle-ci : - 1 formulaire par ligne, - input pour chaque donnée sur chaque ligne (identifiée grâce à l'ID_ligne) - un bouton "modifier" sur cette ligne - en cliquant sur le bouton : envoi des données de cette ligne à AJAX pour traitement ou (petite amélioration) - dès qu'un champ est modifié sur une ligne, on affiche automatiquement (-> test javascript) un bouton "modifier" sur cette ligne 2/ Un peu plus complexe, mais pas beaucoup plus compliqué : as-tu regardé ceci ? Modification "inline" de données avec AJAX (voir la démo)
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément." Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique. Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
|
|
|
00
|
|
|
#20 | ||
|
Débutant
Inscription : avril 2005 Messages : 464 ![]() |
Bonjour,
jreaux62, J'ai adopté pour l'instant la solution classique d'un formulaire par ligne: Je parviens à modifier la ligne avec un bouton "modifier" à coté. Cependant je voudrais améliorer en affichant le bouton que si un champ de la ligne est modifiée. Mais je bloque sur l’événement qui se déclenche si le champ est modifié et comment ré-afficher le bouton caché ? je vous donne ici le code du formulaire : j'identifie le champ input et le bouton "modifier" par leur nom collé à l'identifiant de la ligne. Code :
Comment savoir si un champ d'une ligne est modifié pour afficher le bouton "modifier" ? Merci de solutions. Cordialement |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com