亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將數據插入 2 個單獨的 mySQL 表

將數據插入 2 個單獨的 mySQL 表

明月笑刀無情 2022-12-29 16:20:43
以下是我正在嘗試做的簡化版本?;旧衔矣?2 個注冊表,每個表單的內容將寫入不同的表。當我加載表單時,我在第 xx 行收到許多未定義索引錯誤,并且我仍然在第 75 行和第 84 行的這個示例中收到錯誤,我認為錯誤歸因于某些字段是“必需的”,但該頁面尚未加載為它使用一些 JS 飄走了。... 請幫忙!<?phpob_start(); //Turns on output bufferingsession_start(); //This starts a session variable where it store the input so the user doesnt have to start over if they get an error$con = mysqli_connect("localhost","root","","test-sql"); //connection variables    $timezone = date_default_timezone_set("Europe/London");     if(mysqli_connect_errno()){        echo "failed to connect:" . mysqli_connect_errno();    }?><html>    <head>            <! here we add the links and the jquery>    <title>Register Project</title>    </head>    <body>                <div id="first">                    <form action="test-sql.php" method="POST">                        <input type="text" name="Inf_fname" placeholder="First Name" required>                        <br>                        <input type="text" name="Inf_lname" placeholder="Last Name" required>                        </form>                    </div>                <div id="second">                                    <form action="test-sql.php" method="POST">                                               <br>                    <input type="text" name="Cust_fname" placeholder="First Name" required>                    <br>                                                                   <input type="text" name="Cust_lname" placeholder="Last Name" required>                    <br>                        <input type="submit" name="register_button" value="Register">                                               </form>                    </div>    </body>    </html>
查看完整描述

1 回答

?
HUWWW

TA貢獻1874條經驗 獲得超12個贊

由于您一次只提交一種格式,因此您不能插入到兩個表中。您需要檢查提交的是哪個表單,并插入到相應的表中。每個表單都需要一個具有不同名稱或值的提交按鈕,因此您可以分辨出在 PHP 中使用了哪一個。


您還應該使用準備好的語句而不是將變量替換到 SQL 中,以防止 SQL 注入。我已經展示了如何做到這一點。


<?php

ob_start(); //Turns on output buffering

session_start(); //This starts a session variable where it store the input so the user doesnt have to start over if they get an error

$con = mysqli_connect("localhost","root","","test-sql"); //connection variables

  

$timezone = date_default_timezone_set("Europe/London");

  

if(mysqli_connect_errno()){

    echo "failed to connect:" . mysqli_connect_errno();

}

?>


<html>

<head>

<! here we add the links and the jquery>

<title>Register Project</title>

</head>

<body>

        

<div id="first">

    <form action="test-sql.php" method="POST">

    <input type="text" name="Inf_fname" placeholder="First Name" required>

    <br>

    <input type="text" name="Inf_lname" placeholder="Last Name" required>

    <input type="submit" name="inf_submit" value="Register">

    </form>

</div>


<div id="second">

                

    <form action="test-sql.php" method="POST">

                        

    <br>

    <input type="text" name="Cust_fname" placeholder="First Name" required>

    <br>

                                               

    <input type="text" name="Cust_lname" placeholder="Last Name" required>

    <br>

    

    <input type="submit" name="cust_submit" value="Register">

                        

    </form>

</div>

</body>


</html>


 <?php


 $inf_fname = "";

 $cust_fname = "";

 $inf_lname = "";

 $cust_lname = "";


 if(isset($_POST['inf_submit'])) {


     $inf_fname = strip_tags($_POST['Inf_fname']);

     $inf_fname = str_replace(' ', '', $inf_fname);

     $_SESSION['Inf_fname'] = $inf_fname;

     $inf_lname = strip_tags($_POST['Inf_lname']);

     $inf_lname = str_replace(' ', '', $inf_lname);

     $_SESSION['Inf_lname'] = $inf_lname;


     $stmt = mysqli_prepare($con, "INSERT INTO inf VALUES (?, ?)");

     mysqli_stmt_bind_param($stmt, "ss", $inf_fname, $inf_lname);

     mysqli_stmt_execute($stmt);

 } elseif (isset($_POST['cust_submit'])) {


     $cust_fname = strip_tags($_POST['Cust_fname']);

     $cust_fname = str_replace(' ', '', $cust_fname);

     $_SESSION['Cust_fname'] = $cust_fname;

     $cust_lname = strip_tags($_POST['Cust_lname']);

     $cust_lname = str_replace(' ', '', $cust_lname);

     $_SESSION['Cust_lname'] = $cust_lname;


     $stmt = mysqli_prepare($con, "INSERT INTO customer VALUES (?, ?)");

     mysqli_stmt_bind_param($stmt, "ss", $cust_fname, $cust_lname);

     mysqli_stmt_execute($stmt);

 }

 ?>



查看完整回答
反對 回復 2022-12-29
  • 1 回答
  • 0 關注
  • 156 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號