0

あるフィールドをテーブルから別のフィールドに挿入する際に問題があります。メンバーテーブルと予約テーブルの 2 つのテーブルがあります。両方のテーブルにmember_IDがあります。メンバー テーブルからmember_IDの値を取得し、予約テーブルに挿入します。

これは私のコードです:

$type=$_POST['serv_name'];
$no=$_POST['reserv_hours'];
$time=$_POST['reserv_time'];
$date=$_POST['reserv_date'];
$ID=$_POST['member_ID'];
$fn=$_SESSION['fn'];

$sql=mysql_query("INSERT INTO reservation (serv_name,reserv_hours,reserv_time,reserv_date,member_ID)
VALUES ('$type','$no','$time','$date',$ID)");

$sql1=mysql_query("INSERT INTO reservation (reserv_ID,serv_name,reserv_hours,reserv_time,reserv_date,member_ID)
(SELECT r.reserv_ID,r.serv_name,r.reserv_hours,r.reserv_time,r.reserv_date,m.member_ID  FROM reservation r LEFT JOIN member  m ON r.member_ID=m.member_ID)");

$result = ($sql.$sql1);
if($result)
{
    header("Location:payment.php");
}
else
{
    echo "ERROR!";
    header("refresh:5;url=main.php");
}

動作しており、データベースに登録されていますが、予約テーブルのmember_IDは 0 のままです。助けてください。前もって感謝します。

4

2 に答える 2

0
FROM reservation r

エイリアスを忘れた

于 2013-09-07T12:08:31.663 に答える
0

クエリを見ると、2 つの間違いがあります。

SELECT のみを見ていきます。

  1. テーブルにエイリアスを設定する必要があります.r.fieldsを使用しましたが、どのテーブルがrであるかを宣言していません.

  2. そのIDで結合された結合テーブルからmemIDを選択しています...あなたが持っているテーブルを取得するのではなく、別のテーブルでそれをフェッチするのはなぜですか?

そうは言っても、ここに提案があります:

SELECT r.reserv_ID,r.serv_name,r.reserv_hours,r.reserv_time,r.reserv_date,r.member_ID  FROM reservation r
于 2013-09-07T12:11:59.273 に答える