簡體   English   中英

MYSQL 使用另一個表的外鍵將數據插入表中

[英]MYSQL Insert Data Into Table With Foreign Key From Another Table

我有兩張桌子: bookborrowed_books

Book Table 有book_ID | Book Name book_ID | Book Name

Borrowed_Booksstudent_ID | Book Name student_ID | Book Name

兩個表中的書名都已編入索引。

我將 Book Table 的值添加到 HTML 表單選擇/選項中,並且正在讀取它,但問題是當我嘗試插入值時,它沒有讀取選項名稱或值。

HTML:

<select id="heard" class="form-control">
<option value="">Choose Book</option>
 <?php require_once '../mysql/bookssql.php';
  while($row = mysqli_fetch_array($data, MYSQLI_ASSOC)){ 
   echo '<option name="borrow_book" value="'.$row['Title'].'">' .$row['Title']. '</option>';
  }
 ?>
</select>

PHP 插入代碼:

<?php $borrow_book = $_POST['borrow_book'];
 $upload = "INSERT INTO `borrowed_books` (`student_ID`, `Book Name`) VALUES ('23, '$borrow_book');";
?>

名稱應該在<select>元素中,而不是在<option>中。

<select id="heard" name="borrow_book" class="form-control">
<option value="">Choose Book</option>
 <?php require_once '../mysql/bookssql.php';
  while($row = mysqli_fetch_array($data, MYSQLI_ASSOC)){ 
   echo '<option value="'.$row['Title'].'">' .$row['Title']. '</option>';
  }
 ?>
</select>

您在$upload中有一個錯字,在23之前有一個額外'

您應該停止將變量直接替換到查詢字符串中,並使用帶參數的准備好的語句。 請參閱如何防止 PHP 中的 SQL 注入?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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