aktualisieren Ich arbeite mit Jstree. Der Baum funktioniert gut. Ich sende JSON zu einer PHP-Datei mit JQuery. Das funktioniert gut.Wie MYSQL-Tabelle in PHP mit JSON
$("#button3").click(function(){
//json object
var objtree = $("#container").jstree(true).get_json('#', { 'flat' : true });
var fulltree = JSON.stringify(objtree);
var myarray = $.parseJSON(fulltree);
var params = { myarray: myarray };
var paramJSON = JSON.stringify(params);
//sending to php file
$.post('update.php',{ data: paramJSON });
});
Dann in der PHP-Datei (update.php), aktualisiere ich mySQL Tabelle durch: alle Datensätze in $ Tabellenname Löschen ($ sql1) und die Informationen aus dem JSON bekommen Einfügen ($ sql2). Das funktioniert gut.
Aber was ich will, ist nicht alles in der Tabelle zu löschen, dann fügen Sie sie brandneu. Aber eine SQL-Anweisung, um die alten Werte (unter Verwendung der ID vielleicht?) Zu aktualisieren und die neuen Werte einzufügen.
So wie:
If id exists:
update row
else:
insert new row
Ich bin neu in PHP und SQL. Mein Problem ist also, die PHP-Syntax für den Zugriff auf JSON-Array-Informationen zu kennen. Also bitte jedes Beispiel würde sehr geschätzt werden!
Siehe: http://dev.mysql.com/doc/refman/5.7/en/insert-on-duplicate.html Verwenden Sie auch parametrisierte Abfragen. Sie sind offen für SQL-Injektionen. – chris85
Hier ist einfach so viel falsch. Bitte verwenden Sie ein Framework, da es Sie vor unzähligen SQL Injection-Schwachstellen schützt, für die Ihr Code offen ist. Sie vertrauen Benutzereingaben ohne Validierung und erstellen Abfragen mit String-Verkettung (verwenden Sie parametrisierte Abfragen wie @ chris85 empfiehlt). Es gibt auch eine Menge Syntaxfehler im obigen Code - nicht sicher, ob es tatsächlich laufen würde, um ehrlich zu sein. –