[英]PHP/SQL: How to insert form input via SQL into 2 database tables with PHP?
我剛開始使用PHP和SQL,並且嘗試使用PHP創建網站的帳戶創建屏幕。 為此,我創建了一個表單文件,該文件具有對第二個文件的操作,該文件應將來自表單的輸入數據插入到本地數據庫的兩個表中。 (我將WAMP與phpMyAdmin一起使用)-
我的(數據庫)連接已建立,一切正常,並且沒有任何錯誤,當轉到phpMyAdmin並使用偽數據執行SQL語句時,它可以工作,但是當用戶填寫表單並單擊下一步時,它不會插入數據庫? 有人知道如何解決此問題嗎?
這是我當前的php代碼,應該通過SQL語句將數據插入2個不同的表中:
<?php
$_SESSION['user'] = $_POST['name']; //user naam ophalen van vorige pagina en onthouden voor gehele sessie
$name= $_SESSION['user'];
$_SESSION['wachtwoord'] = $_POST['access'];
$access= $_SESSION['wachtwoord'];
$_SESSION['mail'] = $_POST['email'];
$email= $_SESSION['mail'];
$_SESSION['huisdier'] = $_POST['pet'];
$pet= $_SESSION['huisdier'];
$savenewuser = "BEGIN;
INSERT INTO user (id, naam, email, pass)
VALUES (NULL, '$name', '$email', '$access');
INSERT INTO preferences (id, huisdier)
VALUES (LAST_INSERT_ID(), '$pet');
COMMIT;
ROLLBACK;";
mysqli_query($con, $savenewuser);
$result = mysqli_query($con, $savenewuser);
if (!$result) {
echo "Error: Account could not be created, try again later.";
} else {
echo "Account has been created!";
}
mysqli_close($con);
?>
執行后,我確實收到消息“錯誤:無法創建帳戶,請稍后再試。”。 當然。 -我想我必須對SQL語句進行一些更改,但是我不確定到底有多准確。
mysqli_query被調用兩次。 如果第二次調用兩次,則會出錯,因為您試圖給兩個人相同的ID(假設您正確設置了數據庫)。
如果那不起作用,我將嘗試用mysqli_multi_query替換mysqli_query。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.