来自数据库的可排序列表


a sortable list that comes from database

我有一个简单的列表在html:

<ul id="sortable">
    <li id="1">item1</li>
    <li id="2">item2</li>
    <li id="3">item3</li>
</ul>

我用jQuery UI使其可排序。这允许用户移动每个项目的顺序:

$('#sortable').sortable();

但是当我从MySql数据库中获得相同的项目时,"可排序"不再工作,我无法改变项目的顺序。所以我的问题是:当列表来自数据库时,如何使列表可排序?

<?php  
$result = mysqli_query($con, 'SELECT * FROM principal ORDER BY ordre');
while ($row = mysqli_fetch_array($result)) {
?>
<ul id="sortable">
    <li id="<?php echo $row["id"] ?>"><?php echo $row["concepte"]?>;</li>
</ul>
<?php 

您正在为每个记录行生成ul元素,其中它应该是一个具有多个LI元素的单个ul,还修复LI HTML代码

<?php  
$result = mysqli_query($con, 'SELECT * FROM principal ORDER BY ordre');
echo '<ul id="sortable">';
while ($row = mysqli_fetch_array($result)) {
?>

    <li id="<?php echo $row["id"]; ?>"><?php echo $row["concepte"]; ?></li>
<?php 
   }
echo '</ul>';
?>

我不是PHP的家伙,但这看起来会产生一个ul与每次迭代?这样你的标记就乱了