tableau éditable - PHP - Programmation
Marsh Posté le 30-04-2014 à 15:36:30
L'ajout de ce qui sera saisit dans la nouvelle ligne doit être enregistré dans la BD sur une requête Ajax : sur le clic du bouton submit, ça envoie la requête ajax avec le contenu de la nouvelle ligne à enregistrer (en XML ou en JSON, par ex) à un script php qui se chargera de traiter la requête
Marsh Posté le 30-04-2014 à 16:01:26
Svp est ce que vous pouvez m'aider puisque j'ai aucune idée sur les principes et l'utilisation d'Ajax. Svp c'est urgent
Marsh Posté le 30-04-2014 à 16:26:06
Comme rufo le souligne c'est plus pratique de faire appel a une requete ajax avec du json (regarde avec jquery).
Mais si c'est urgent et que tu n'a pas le temps de tout refaire, commence par faire un print_r($_POST); dans ton code php juste avant la boucle pour voir deja si tu recuperes toutes tes données.
Marsh Posté le 30-04-2014 à 16:29:38
j'ai essayé avec print_r($_POST) mais ça n'affiche rien !!!
Marsh Posté le 30-04-2014 à 16:31:14
donc tu récupères aucune données, tu as un bien une balise form avant ton tableau?
Marsh Posté le 30-04-2014 à 16:37:20
oui, j'ai une balise form qui a comme action l'appel du fichier add.php qui contient le code d'ajout inséré ci dessus.
Marsh Posté le 30-04-2014 à 16:45:28
Un Mok sur ajax : http://fr.openclassrooms.com/infor [...] javascript
Marsh Posté le 30-04-2014 à 17:28:46
j'ai remplacé Numero_Serie[0] par Numero_Serie[] et c'est bon pour la récupération des données mais maintenant il y a l'erreur svte: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use
Marsh Posté le 30-04-2014 à 17:39:43
$i=0;
while(isset($_POST['Numero_Serie'][++$i]))
=> j'ai un doute sur le fait que tu génères bien la requête pour la valeur 0 de l'indice $i
$_POST['Article'][$i] et $_POST['Designation'][$i] m'intriguent aussi. Dans ton code html, je vois pas comment les indices évoluaient ?
Marsh Posté le 30-04-2014 à 17:41:21
Au passage, ce genre de HTML <th> <div align="center"> Emplacement </div> </th> est vraiment très laid
Mettre un div dans un th alors que pour ce que tu fais, un simple style css sur le th suffit
Marsh Posté le 30-04-2014 à 17:46:16
ok @rufo pour les div c'est simplement une solution instantanée pour l'affichage
Mais ce que j'ai compris que l'erreur provient de la requête sql non plus la récupération des données
Marsh Posté le 30-04-2014 à 19:02:19
fais
Code :
|
compare ton nombre d'arguments par rapport a values et si tu trouves pas d'erreur executes la sur mysql directement il te sortiras l'erreur exacte.
Marsh Posté le 02-05-2014 à 11:26:58
Je pense que le problème est en fait au niveau du parcours des tableaux;, il ya toujours une erreur au niveau de l'indice 0
Marsh Posté le 02-05-2014 à 13:33:08
LolitaLoulou a écrit : j'ai remplacé Numero_Serie[0] par Numero_Serie[] et c'est bon pour la récupération des données mais maintenant il y a l'erreur svte: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use |
Si c'est toujours la même erreur affiche ta requete executée et regarde si tu n'as pas une erreur de syntaxe.
Marsh Posté le 02-05-2014 à 13:36:31
Et si c'est une erreur de boucle comme tu dis utilises plutot foreach que while, c'est le plus adapté pour parcourir un array
Marsh Posté le 02-05-2014 à 14:54:29
lorsque j'ai fait un echo pour la requete seulement la dernière ligne remplie est affichée, et je sais pas comment remplacer la boucle qui j'ai utilisé par la boucle foreach
Marsh Posté le 02-05-2014 à 15:09:18
Comme ton code n'était pas très lisible .... j'avais pas remarquer que ton mysql_query était en dehors de la boucle donc il ne te fais qu'un insert...
je te poste le code plus tard
edit:
c'est bon j'ai compris ce que tu voulais faire, je te poste le code dans une dizaine de minutes.
Marsh Posté le 02-05-2014 à 15:20:08
Ah oui c'était ça le problème maintenant lorsque j'ai inclus la requete dans la boucle , le code marche et l'ajout se fait avec succès.
Merci infiniment pour votre aide Deejay59
J'aime bien voir ton code, merci de le poster jtt
Marsh Posté le 02-05-2014 à 15:22:08
tiens un code plus propre:
Code :
|
ce code est plus rapide car une seule requete d'insertion.
Marsh Posté le 02-05-2014 à 15:39:59
je viens de remarquer une erreur en plus dans ta requetes, tu veux inserer 8 champs tu indiques en values 9 valeurs... je presume que c'est le '' du début qui est inutile
Code :
|
Marsh Posté le 02-05-2014 à 17:16:32
Bon j'ai tapé ce code et ça marche bien:
Code :
|
Marsh Posté le 30-04-2014 à 14:57:58
Bonjour,
J'ai une problématique qui est la suivante: je veux avoir un tableau des champ et lorsqu'on s'appuie sur un bouton en ajoute une ligne autre ligne vide semblable à la ligne précédente et puis avoir un bouton submit qui fait l'insertion des tous les données saisies dans la base de données. C'est pour mon application web dynamique svp aidez moi
Voici le code du mon tableau
et ça c'est le code javascript pour l'ajout d'une ligne et ça fonctionne bien :
Mon problème est l'ajout de de tous les données saisies dans ce tableau dans la base de données
voici mon code php mais ça ne fonctionne pas et ça m'affiche l'erreur suivante: Column count doesn't match value count at row 1