Php 此SQL行有效吗?

Php 此SQL行有效吗?,php,sql,database,Php,Sql,Database,正在尝试创建一个页面系统,并怀疑此代码是否有效 $get = mysql_query("SELECT * FROM blog_posts ORDER BY `date` DESC WHERE id > '". $startat ."' AND id < '". $nextPage ."' LIMIT 25") $get=mysql\u查询(“从blog中选择*按`date`DESC WHERE id>'”、“$startat.”和id

正在尝试创建一个页面系统,并怀疑此代码是否有效

$get = mysql_query("SELECT * FROM blog_posts ORDER BY `date` DESC WHERE id > '". $startat ."' AND id < '". $nextPage ."' LIMIT 25")
$get=mysql\u查询(“从blog中选择*按`date`DESC WHERE id>'”、“$startat.”和id<'”、“$nextPage.”限制25)发布订单

否—它无效<代码>按顺序必须接近尾端,不能在中间。

另外,您不应该使用mysql\u查询,这是不安全的。改用PDO

SELECT * FROM blog_posts 
WHERE id > '". $startat ."' 
AND id < '". $nextPage ."' 
ORDER BY `date` DESC 
LIMIT 25"
SELECT*FROM blog\u posts
其中id>“$startat.”
id<“$nextPage.”
按“日期”说明订购
限值25“

否,您的子句顺序错误-请尝试以下操作:

$get = mysql_query("
    SELECT 
        * 
    FROM 
        blog_posts 
    WHERE 
        id > '". $startat ."' 
        AND id < '". $nextPage ."' 
    ORDER BY 
        `date` DESC 
    LIMIT 25");
$get=mysql\u查询(“
挑选
* 
从…起
博客文章
哪里
id>“$startat.”
id<“$nextPage.”
订购人
`日期`说明
限额(25”);

您的查询应该如下所示

  <br>
    $get = mysql_query("SELECT * FROM blog_posts WHERE id > \
'". $startat ."' AND id < '". $nextPage ."' 
ORDER BY date DESC  LIMIT 25");

$get=mysql\u查询(“从id>\ “$startat.”和id<“$nextPage.” 订单日期描述限制25“;
您的
WHERE
ORDER BY
子句是向后的。请尝试:

"SELECT * 
FROM blog_posts 
WHERE id > '". $startat ."' AND id < '". $nextPage ."'
ORDER BY `date` DESC 
LIMIT 25"
“选择*
从博客文章
其中id>“$startat.”和id<“$nextPage.”
按“日期”说明订购
限值25“

我希望
$startat
$nextPage
不要来自任何地方的用户输入。你真的应该使用PDO或mysqli,mysql\u查询被弃用是有原因的。

否,
order by
部分应该在
where子句之后

应该是这样的:

SELECT * 
    FROM 
        blog_posts 
    WHERE 
        id > '". $startat ."' 
        AND id < '". $nextPage ."' 
    ORDER BY 
        `date` DESC 
    LIMIT 25"
选择*
从…起
博客文章
哪里
id>“$开始
而id<'”$下一页“
订购人
`日期`说明
限值25“

尝试时是否出现(SQL)错误?如果是的话:这可能是无效的……你的问题解决了吗?如果没有,请向我们更新问题的其余部分。或者接受一个答案!