簡體   English   中英

同時插入和更新

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM