2017-05-02 60 views
0

我想從MySQL中獲取最後添加的group_id,以便爲其他組獲取新的$group_id++從PHP中獲取MySQL中的最後一個group_id

我試圖

$group_id = ("select max(group_id) from posts"); 
    $group_id++; 

但是,當我回聲

echo $group_id; 

檢查的結果是: 「選擇職位最高(GROUP_ID)」

+3

你書寫的查詢。但是你必須運行它。請檢查如何運行查詢並獲取結果。 – siddiq

回答

0

你正在分配一個查詢字符串到一個變量..你甚至沒有運行查詢...?

你需要運行查詢,並將其分配給一個結果($ group_id_)

還有其他方法可以做到這一點,但它類似於你在做什麼。

$result= mysqli_query($conn, "select max(group_id) as max from posts"); 
$row = $result->fetch_assoc($result); 
$group_id = $row['max']; 
$group_id++; 
+0

謝謝,但這不起作用,它讓我0 –

+0

@FilipDržik嘗試 – clearshot66

+0

謝謝你這個作品優秀:) –

-2

這是最簡單的方法實施它最新的將有最高的ID,所以你從他們的ID從最高的ID開始到最低的順序排列,你只需要第一個。

閱讀關於http://php.net/manual/en/book.mysqli.php它解釋了使用php從數據庫查詢數據的一切。

$mysqli = new mysqli("localhost", "my_user", "my_password", "world"); 

if ($mysqli->connect_errno) { 
printf("Connect failed: %s\n", $mysqli->connect_error); 
exit(); 
} 
if($result = $mysqli->query("select group_id from posts ORDER BY group_id DESC LIMIT 1")){ 
// it has returned a result 
$group_id = $result->fetch_object(); 
$group_id++; 
} 
0

這是因爲您沒有執行SQL查詢,所以您正在執行任務。

正確的語法是這樣的:

$result = mysqli_query('SELECT * WHERE 1=1'); 
if (!$result) { 
    die('Invalid query: ' . mysql_error()); 
} 

搜索如何可以執行SQL查詢,如果你有麻煩,後期再次。

編輯:在鏈接上看看下面

https://secure.php.net/manual/en/mysqli.query.php

+1

不要使用mysql_query。它已被棄用。使用Mysqli或PDO。 – siddiq

+1

Mysql已被棄用,你應該使用mysqli – clearshot66

+0

@ clearshot66是的,我的錯誤...一旦我看到它,就糾正它....小型錯字 –

相關問題