在PHP中从phpmyadmin订购项目
我正在尝试用PHP做一个简单的CMS。在滑块管理中,我想更改添加的照片的顺序在PHP中从phpmyadmin订购项目,php,sorting,content-management-system,phpmyadmin,Php,Sorting,Content Management System,Phpmyadmin,我正在尝试用PHP做一个简单的CMS。在滑块管理中,我想更改添加的照片的顺序 <a href="slideup.php?order=<?php echo $result['order']; ?>&id=<?php echo $result['id']; ?>" title="Up"><img src="../images/up.png" alt="Up" /></a> <a href="slidedown.php?orde
<a href="slideup.php?order=<?php echo $result['order']; ?>&id=<?php echo $result['id']; ?>" title="Up"><img src="../images/up.png" alt="Up" /></a>
<a href="slidedown.php?order=<?php echo $result['order']; ?>&id=<?php echo $result['id']; ?>" title="Down"><img src="../images/down.png" alt="Down" /></a>
当我点击图标时,代码正常工作。但结果是什么也没发生。我的代码有问题还是逻辑错误
谢谢。在您的mysql\u query()之后,请输入以下内容,因为我相信您有一个mysql错误:
echo mysql_error();
让我们知道它说了什么。在编写查询时,如果字段是varchar、date等,则只应使用单引号将值括起来,而不是数字等。我猜您的ID是一个数字,而且您的订单似乎也是一个数字,因此在您的更新中,您应该有如下内容:
mysql_query("UPDATE `slider` SET `order`=$neworder WHERE `id`=$id") or die(mysql_error());
这至少应该让您开始了,尽管您可能会有逻辑问题,因为我不太明白为什么您要更新滑块表中的每一行,将旧顺序更改为新顺序,而不考虑ID。OT:您当前的代码容易受到sql注入的影响
echo mysql_error()代码>什么也没给我。单引号没有改变任何东西,因为你这么做了。它不会给你一个错误。我正在更新slider table,因为我将幻灯片信息保存在那里。在我显示的同时,从数据库中获取数据。对于这些情况,这是一种糟糕的方法吗?
function goUp($order, $id)
{
$db = new DB_CONNECT();
if(!$order == 1)
{
$neworder = $order - 1;
mysql_query("UPDATE `slider` SET `order`='$order' WHERE `order`='$neworder'") or die(mysql_error());
mysql_query("UPDATE `slider` SET `order`='$neworder' WHERE `id`='$id'") or die(mysql_error());
}
header('Location: ../admin/slider.php');
}
function goDown($order, $id)
{
$db = new DB_CONNECT();
$totalslide = 0;
$query = mysql_query("SELECT COUNT(`id`) as count FROM `slider`") or die(mysql_error());
$result = mysql_fetch_array($query);
$totalslide = $result['count'];
if(!$order == $totalslide)
{
$neworder = $order + 1;
mysql_query("UPDATE `slider` SET `order`='$order' WHERE `order`='$neworder'") or die(mysql_error());
mysql_query("UPDATE `slider` SET `order`='$neworder' WHERE `id`='$id'") or die(mysql_error());
}
header('Location: ../admin/slider.php');
}
echo mysql_error();
mysql_query("UPDATE `slider` SET `order`=$neworder WHERE `id`=$id") or die(mysql_error());