我試圖在插入使用php + mysql後立即獲取插入行的內容。 有沒有辦法在php + mysql中立即獲取插入的行(所有列)。如何立即獲取插入的行內容,mysql,phpmyadmin
我是新來的php + mysql。
我試圖在插入使用php + mysql後立即獲取插入行的內容。 有沒有辦法在php + mysql中立即獲取插入的行(所有列)。如何立即獲取插入的行內容,mysql,phpmyadmin
我是新來的php + mysql。
試試這個:
<?php
$con=mysqli_connect("localhost","my_user","my_password","my_db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
mysqli_query($con,"INSERT INTO Persons (FirstName,LastName,Age)
VALUES ('Glenn','Quagmire',33)");
// Print auto-generated id
echo "New record has id: " . mysqli_insert_id($con);
mysqli_close($con);
?>
我已經得到了自動增量id,但也有一些其他列是增量生成的,因爲我需要獲取整行。 – raju
插入行獲取插入的行之後。 下面的例子使用php編寫的語句方法插入數據庫表並從數據庫表中獲取數據。
數據庫連接你將不得不創建php代碼。
數據庫連接
$servername = "your server name";
$username = "your username";
$password = "your password";
$db = "your database name";
$conn = new mysqli($servername, $username, $password, $db);
// Check connection
if ($conn->connect_error) {
die("Connection failed: try again after some time ");
}
$insert_stmt = $conn->prepare("INSERT INTO log (username, email, password)
VALUES (?, ?, ?)"));
$insert_stmt->bind_param('sss', $username, $email, $password);
$insert_stmt->execute();
執行此之後,立即就可以查詢在同一個表,並獲得該行。像這樣 -
$prep_stmt = "SELECT * FROM log WHERE username = ? LIMIT 1";
$stmt = $conn->prepare($prep_stmt);
$stmt->bind_param('s', the username you just inserted);
$stmt->execute();
$stmt->bind_result($the variable names in which you want to bind the
results separated by commas);
$stmt->fetch();
如果數據已插入,則可供您取回。
您可以通過獲得最新插入的行ID的內置PHP函數mysql_insert_id();
$id = mysql_insert_id();
你一個也
$id = last_insert_id();
獲得最新的行ID如果數據插入成功返回應該是一個新的ID
返回所有'POST'數據與'last_inserted_id' – C2486
如果你插入一個數據,它被插入然後有什麼需要問?你有這個數據你自己 –