簡體   English   中英

PHP / SQL:如何使用PHP通過SQL將表單輸入插入2個數據庫表中?

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

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