[英]Insert and update at the same time
我有問題需要解決:我在MySQL中有2個表,分別名為Bata和Tranport。
對於表Bata,我有:id(PK,AI),電話,數量,價格和總計。
對於表Tranport,我具有:id(PK,AI),電話,姓名,地址等。
當用戶單擊“ Bata”頁面上的“提交”時,數據將保存到數據庫中,但“電話”字段將保留為空白。 當用戶在“傳輸”頁面上單擊提交時,它將數據保存到數據庫中。
問題是如何將“傳輸”字段中的電話號碼插入ID相同的Bata電話字段中? 我必須這樣做,因為最終用戶可以查看他們的訂單。
<?php
error_reporting(0);
ini_set('display_errors', false);
$tranport = $_POST['Tranport'];
$name = $_POST['billName'];
$phone = $_POST['billPhone'];
$company = $_POST['billCompany'];
$address = $_POST['billAdd1'];
$negeri = $_POST['negeri'];
$label = $_POST['mylabel'];
$date = $_POST['inputField'];
$input = "INSERT INTO tranport (deliverTyper , name , phone , company ,
address , state , rate , date )";
$input .= " VALUES ('$tranport', '$name', '$phone', '$company', '$address',
'$negeri', ' $label', '$date') ";
require_once("connection.php");
mysqli_query($conn,$input);
$query = "INSERT INTO bata (phone) VALUES ('$phone')";
mysqli_query($conn,$query);
if(mysqli_affected_rows($conn) <= 0)
{
print "Unable to create account.Please <a href='tranport.php'>click here</a>to try gain.";
}
else
{
mysqli_close($conn);
header("Location:try.php?sebab=pengguna baru");
exit();
}
mysqli_close($conn);
?>
您可以使用mysqli_insert_id($conn)
獲取為最后插入的條目的AUTO_INCREMENT列生成的ID。
您的代碼容易被注入。 您應該對PDO / mysqli使用正確參數化的查詢
您可以使用mysqli_insert_id($ conn)獲取為最后插入的條目的AUTO_INCREMENT列生成的ID。
這是獲取最后插入ID的示例代碼
<?php
$con = mysql_connect("localhost", "peter", "abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
$db_selected = mysql_select_db("test_db",$con);
$sql = "INSERT INTO person VALUES ('Børge','Refsnes','Sandnes','17')";
$result = mysql_query($sql,$con);
echo "ID of last inserted record is: " . mysql_insert_id();
mysql_close($con);
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.