2014-02-27 37 views
2

我有我的PHP頁面,並在查詢變量$page我想用這個像:做簡單的數學在SQL查詢

$query = mysqli_query($con, "SELECT * FROM third LIMIT (3*($page-1)),3"); 
//right here I want to this math but it gives me error. 

我嘗試了以這種方式太

$query = mysqli_query($con, "SELECT * FROM third LIMIT (3*{$page-1}),3"); 

它給我的留言:

語法錯誤,意外 ' - ',期待 '}'

SQL中應該如何進行數學運算?

回答

1

請注意,你的問題不是SQL的一個,但PHP如何插值字符串。

你的問題是,PHP將插值變量轉換爲字符串,而不是表達式。

您可以在上面做這樣的建議:

$query = mysqli_query($con, "SELECT * FROM third LIMIT " . (3*($page-1)) . ",3"); 

或者你可以這樣做:

$limit = 3*($page-1); 
$query = mysqli_query($con, "SELECT * FROM third LIMIT $limit,3"); 
+0

$ query = mysqli_query($ con,「SELECT * FROM third LIMIT」。(3 *($ page-1))。「,3」);劑量工作。 $ query = mysqli_query($ con,「SELECT * FROM third limit $ limit,3」);效果很好。 WTF? – user3301042

+0

我不知道「不起作用」是什麼意思。我也對「WTF」沒有很好的迴應。 –

+0

WTF總是在互聯網上使用它並不意味着有人說你的壞事,並感謝您的答案 – user3301042

5
$query = mysqli_query($con, "SELECT * FROM third LIMIT " . (3*($page-1)) . ",3"); 

PHP纔算值和串聯:)

+0

毗連運算符是'.' :) –

+0

@scrowler你說得對,用java所有工作一天:) – Aquillo

+0

這個答案不起作用 – user3301042