ソートされたリスト項目の新しい順序でデータベースを更新しようとしています。私はこのチュートリアルに従おうとしていましたが、チュートリアルの後半でかなり迷子になり、深みがないと感じました(以前に作成され、フォーラムで利用できなくなったコードを参照するのに役立ちませんでした)。http://www.youtube.com/watch?v=3mOs0VY_sIw
次のようなリストを並べ替えようとしています (追加またはエントリを削除できるもの) http://dev.michaelbole.com/cms/
以下は私のフロントエンドを示しています:
<ul id="sortable">
<?php
$sortget = mysql_query("SELECT data FROM sortable", $connection);
$sortget = explode(',', $sortget[0]['data']);
print_r($sortget);
$result = mysql_query("SELECT *FROM bookwrite", $connection);
if (!$result){
die("Database query failed: " . mysql_error());
}
while ($row = mysql_fetch_array($result)) {
echo "<li id='item_".$row["id"]."'>"."<h1>".$row["post_title"]."</h1>"."<p>".$row["post_details"]."</p>"."</li>";
}
?>
</ul>
JS:
$(function() {
$( "#sortable" ).sortable({
containment: 'parent',
tolerance: 'pointer',
cursor: 'pointer',
revert: 'true',
opacity:'0.60',
update: function(event, ui) {
var postData = $(this).sortable('serialize');
console.log(postData);
$.post('save.php', {list: postData}, function(o) {
console.log(o);
}, 'json');
}
});
$( "#sortable" ).disableSelection();
});
そして保存します:
<?php
$list = $_POST['list'];
$output = array();
$list = parse_str($list, $output);
print_r($output);
$save = implode(',',$output['item']);
require_once("includes/connection.php");
echo $list;
mysql_query("UPDATE sortable SET 'data' = '$save'", $connection);
?>