我想创建一个脚本,使用drag& amp;来命令数据库中的某些行。下降。行显示在表格中,我拖放行以重新排序。每个tr都有来自数据库的行id。当我拖放一行时,jquery序列化表内容并将其发送到php以保存行位置。
行位置未保存在db?
中可能会出现什么问题包含行的表:
$select_categories = mysqli_query($db_connect, "SELECT `id`, `title` FROM `categories` ORDER BY `category_order` ASC") or die(mysqli_error());
if(mysqli_num_rows($select_categories) != 0)
{
echo '<table cellpadding="0" cellspacing="0" class="manage_content" id="sort_rows" align="center">';
while($category = mysqli_fetch_assoc($select_categories))
{
echo '
<tr id="row-'.$category['id'].'">
<td width="700"><a href="'.$website_address.'/admin/categories_edit.php?id='.$category['id'].'">'.$category['title'].'</a></td>
<td><a href="'.$website_address.$_SERVER['PHP_SELF'].'?action=delete_content&id='.$category['id'].'" class="delete_content">Delete</a></td>
</tr>
';
}
echo '</table>';
}
的jQuery
$("#sort_rows tbody").sortable({
cursor: 'move',
delay: 180,
update: function()
{
var rowsOrder = $(this).sortable("serialize");
$.post("ajax_actions.php", { action:'change_rows_order', table:'categories', order:'category_order', rows_order:rowsOrder } );
}
}).disableSelection();
AJAX
if(isset($_POST['action']) && $_POST['action'] == 'change_rows_order')
{
$order_no = 1;
foreach($_POST['rows_order'] as $row_id)
{
$update_order = mysqli_query($db_connect, "UPDATE `".clear_tags($_POST['table'])."` SET `".clear_tags($_POST['order'])."` = '".$order_no."' WHERE `id` = '".$row_id."'") or die(mysqli_error());
$order_no++;
}
}
HTML
<table cellpadding="0" cellspacing="0" class="manage_content" id="sort_rows" align="center">
<tr id="row-10">
<td width="700"><a href="http://local.admin.com/admin/categories_edit.php?id=10">Editorial</a></td>
<td><a href="http://local.admin.com/admin/index.php?action=delete_content&id=10" class="delete_content">Delete</a></td>
</tr>
<tr id="row-11">
<td width="700"><a href="http://local.admin.com/admin/categories_edit.php?id=11">Fashion</a></td>
<td><a href="http://local.admin.com/admin/index.php?action=delete_content&id=11" class="delete_content">Delete</a></td>
</tr>
<tr id="row-12">
<td width="700"><a href="http://local.admin.com/admin/categories_edit.php?id=12">Street Style</a></td>
<td><a href="http://local.admin.com/admin/index.php?action=delete_content&id=12" class="delete_content">Delete</a></td>
</tr>
<tr id="row-13">
<td width="700"><a href="http://local.admin.com/admin/categories_edit.php?id=13">Portraits</a></td>
<td><a href="http://local.admin.com/admin/index.php?action=delete_content&id=13" class="delete_content">Delete</a></td>
</tr>
<tr id="row-14">
<td width="700"><a href="http://local.admin.com/admin/categories_edit.php?id=14">Clothing</a></td>
<td><a href="http://local.admin.com/admin/index.php?action=delete_content&id=14" class="delete_content">Delete</a></td>
</tr>
</table>
答案 0 :(得分:1)