[AJAX] requete INSERT sql
J'ai effectué un drag&drop entre 2 colonnes.
http://www.dhtmlgoodies.com/scripts/...ag-drop-2.html
J'utilise ma BDD pour alimenter la colonne de gauche d'éléments.( ce sont des noms d'ordinateur dans mon cas dans les petites boites blanches à la place des noms d'animaux)
Je voudrais, quand je clique sur un bouton , sauvegarder les noms des éléments qui sont dans la colonne de droite dans une table de ma BDD.
J'arrive grâce à la DOM de javascript à parcourir la colonne de droite qui est une DIV et à récupérer les noms d'ordinateurs mais je ne sais pas comment les enregistrer dans ma BDD.
Premiere Question ? faut-il que j'utilise de l'ajax, je suppose que oui car je vais effectuer une requete d'insertion.
Est-ce qu'une fonction comme cela se rapproche de ce que je souhaite faire ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| function save()
{
var xhr = getXhr()
xhr.onreadystatechange = function()
{
if(xhr.readyState == 4)
{
if(xhr.status == 200)
document.getElementById('res').innerHTML= xhr.responseText;
}
};
var nombre = document.getElementById("dropContent").childNodes.length;
for ( var i = 0; i<nombre ; i++){
xhr.open("POST","checkpc2.php",true);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
premier = document.getElementById("dropContent").childNodes[i].firstChild.data;
xhr.send("ordi="+premier);
}
} |
la variable "premier" correspond au nom de l'ordinateur que je veux sauvegarder
checkpc2.php correspond au fichier php où j'effectue la requete d'insertion:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <?php
if(isset($_POST["save"]))
{
include('../connect.php');
$reponse=mysql_query("INSERT INTO pccheck SET NomOrdinateur='$_POST[ordi]'")or die(mysql_error());
mysql_close();
}
?> |
Mon problème est que je ne sais pas si déjà j'écris bien le code de ce que je souhaite faire, et je n'arrive pas à effectuer d'insertion, je dois pas arriver à accéder au fichier checkpc2.php à mon avis.
merci de votre aide.
Ca avance...faut faire l'autre colonne
ce que je souhaite faire :
http://www.dhtmlgoodies.com/scripts/...ag-drop-2.html
Nikel d-rek, j'ai fais ce que tu m'as dit et ça fonctionne, je retrouve bien les noms des PC dans ma table.
Cependant j'ai un problème, car ce que je fais me permet d'insérer les noms des PC qui se trouvent dans la DIV "dropContent" qui est la colonne de gauche...ce qui n'est pas le but final car je veux ceux de la colonne de droite mais je voulais déjà tester le code pour voir si j'arrivais à faire de l'ajax et donc à sauvegarder les noms d'ordinateurs.
Maintenant que ça marche je m'étais dis que dès que je changerais par dropContent2 qui correspond à la DIV de la colonne de droite ça marcherait toujours !!Mais NON !! lol
Quand je déplace mes éléments dans la colonnes de droite et que je regarde le code source et ben dropContent2 est toujours vide alors que j'ai bien des éléments dedans ! Ce doit être la faute du drag & drop qui en fait ne modifie rien à la page... Mais comment je peux récupérer les éléments dans la colonne droite ? ou alors faudrait ke j'exécute le script dès que je lâche l'élément dans la colonne de droite ?
Que faire ? Faudrait peut être que je mette ma fonction dans une autre fonction du drag and drop ?
Vous pouvez télécharger l'exemple de drag & drop ici :
http://www.dhtmlgoodies.com/index.ht...ag-drop-custom
merci