PHP查询字符串问题


PHP Query String issue

我是一个小绿色与PHP,我有一个小问题,我希望得到一些帮助。我在一个文件中使用以下查询,我想在末尾添加排序顺序。我不确定如何转义查询的最后一部分,以使查询接受排序顺序。

$queryPro = "select * from pages WHERE MenuType='S' AND Activate='Y' AND SiteID='4000' AND SubMenuOf=".$rowCat["PageNumber"];

我想用的是

$queryPro = "select * from pages WHERE MenuType='S' AND Activate='Y' AND SiteID='4000' AND SubMenuOf=".$rowCat["PageNumber"] Order By SortOrder ASC;

但是这会产生一个错误。

任何帮助都将非常感激。

谢谢JW

您没有在字符串中包含ORDER BY...,导致语法错误,

$queryPro = "select...AND SubMenuOf=".$rowCat["PageNumber"] . " Order By SortOrder ASC";

作为旁注,如果变量的值(s)来自外部,则查询容易受到SQL Injection的攻击。请看看下面的文章,了解如何防止它。通过使用PreparedStatements,您可以摆脱在值周围使用单引号。

    如何防止SQL注入在PHP?