Ho una pagina in cui utilizzo una funzione (JS) per il drag&drop, e che consente di spostare degli elementi sulla pagina, registrandone l'ordine su db - via request AJAX e PHP.
Funziona tutto perfettamente.
In un'altra pagina, invece, devo utilizzare una variante della stessa funzione, che consente il drag&drop da una colonna a sinistra ad una a destra.
E qui, invece, il drag&drop funziona ma non registra i dati.
Questa è la funzione JS:
Codice PHP:
$(document).ready(function(){
$(function() {
$("#contentLeft ul, #contentRight ul").sortable({
connectWith: '.connSort', opacity: 0.8, cursor: 'move', update: function() {
var order = $(this).sortable("serialize") + '&action=updateRecordsListings';
$.post("sortoffer.php", order, function(theResponse){
$("#contentRight").html(theResponse);
});
}
});
});
});
E questo il codice della pagina PHP che dovrebbe gestire la registrazione:
Codice PHP:
$action = $_POST['action'];
$updateRecordsArray = $_POST['recordsArray'];
if ($action == "updateRecordsListings"){
$listingCounter = 1;
foreach ($updateRecordsArray as $idValue) {
$query = "UPDATE offerte SET hotel_pos = " . $listingCounter . " WHERE id = " . $idValue;
mysql_query($query) or die('Error, insert query failed');
$listingCounter = $listingCounter + 1;
}
}
Non dà errore, semplicemente non registra i dati...