這是我有:獲取最後一個ID PDO
$stmt = $handler->prepare('SELECT id FROM users');
$stmt->execute();
$id = $handler->lastInsertId();
echo $id;
所以,我想結果是,例如,「有註冊用戶的$ id」。
這是我有:獲取最後一個ID PDO
$stmt = $handler->prepare('SELECT id FROM users');
$stmt->execute();
$id = $handler->lastInsertId();
echo $id;
所以,我想結果是,例如,「有註冊用戶的$ id」。
你永遠不需要從表中選擇「最後的ID」。每當你想到你需要它時,你就需要別的東西。例如,無論「Last id」與註冊的用戶數量無關。相反,你必須計數用戶:
$count = $handler->query('SELECT count(id) FROM users')->fetchColumn();
echo "There is $count registered users";
'SELECT id FROM users ORDER BY id DESC LIMIT 1'這也是可行的,但也許它不是正確的,謝謝。 – Monk
是的,它甚至不是靠近正確的那個 –
PDO::lastInsertId
- 返回上次插入行或序列值的ID。
— https://secure.php.net/manual/en/pdo.lastinsertid.php。
你想要的是一個計數註冊用戶的,見Row count with PDO。
要檢索最後插入的ID或序列值,請參閱PDO get the last ID inserted。
他不需要計算*結果*。只是因爲他沒有他們。 –
如果您選擇了一些數據,得到了一些結果,然後想對它們進行計數,則可以使用「結果」一詞。雖然OP沒有任何查詢結果。他得到的唯一結果就是伯爵本身,顯然沒有計算它的重要性。 –
'lastInertId'在成功執行INSERT操作後可用。你想要'SELECT MAX(id)' – hjpotter92
[行數與PDO]可能的重複(http://stackoverflow.com/questions/883365/row-count-with-pdo) –