-1

ページ システムを実行しようとしていますが、このコードが有効かどうか疑問に思っています...

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

5 に答える 5

4

いいえ、有効ではありません。Order By終わり近くにある必要があり、途中であってはなりません。

また、mysql_query を使用しないでください。安全ではありません。代わりに PDO を使用してください。

SELECT * FROM blog_posts 
WHERE id > '". $startat ."' 
AND id < '". $nextPage ."' 
ORDER BY `date` DESC 
LIMIT 25"
于 2012-09-20T12:31:54.307 に答える
0

クエリは次のようになります

  <br>
    $get = mysql_query("SELECT * FROM blog_posts WHERE id > \
'". $startat ."' AND id < '". $nextPage ."' 
ORDER BY date DESC  LIMIT 25");
于 2012-09-20T12:33:20.063 に答える
0

あなたWHEREORDER BY節は逆です。試す:

"SELECT * 
FROM blog_posts 
WHERE id > '". $startat ."' AND id < '". $nextPage ."'
ORDER BY `date` DESC 
LIMIT 25"

そして、私はどこからでもユーザー入力から来ないことを望ん$startatでいます。$nextPage代わりに、実際にはPDOまたはmysqliを使用する必要があります-mysql_queryは理由により非推奨になりました。

于 2012-09-20T12:33:39.920 に答える
0

いいえ、節の順序が間違っています - これを試してください:

$get = mysql_query("
    SELECT 
        * 
    FROM 
        blog_posts 
    WHERE 
        id > '". $startat ."' 
        AND id < '". $nextPage ."' 
    ORDER BY 
        `date` DESC 
    LIMIT 25");
于 2012-09-20T12:32:04.417 に答える
0

いいえ、order byパーツは の後に来る必要がありwhere clauseます。

次のようになります。

SELECT * 
    FROM 
        blog_posts 
    WHERE 
        id > '". $startat ."' 
        AND id < '". $nextPage ."' 
    ORDER BY 
        `date` DESC 
    LIMIT 25"
于 2012-09-20T12:34:45.353 に答える