[英]MYSQL Insert Data Into Table With Foreign Key From Another Table
我有兩張桌子: book
和borrowed_books
。
Book
Table 有book_ID | Book Name
book_ID | Book Name
Borrowed_Books
有student_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.