我在這裏做錯了什麼。我無法弄清楚如何使更新塊工作。當我點擊「更新」按鈕時,它會返回到edit.php但與PHP不更新數據庫中的行
錯誤。錯誤是:注意:未定義變量:POST在 C:\ XAMPP \ htdocs中\ LIBSYS \ edit.php第45行上
說明:未定義變量:POST在C:\ XAMPP \ htdocs中\ LIBSYS \ edit.php上 線46
說明:未定義變量:ID在C:\ XAMPP \ htdocs中\ LIBSYS \ edit.php上 線48
更新成功
線45,46,48具有
echo $author = $POST['author']; //line 45
echo $isbn = $POST['isbn']; //line 46
$sql = "UPDATE booklist SET Author='$author', Title='title', ISBN = '$isbn' WHERE ID = '$id' "; //line 48
edit.php的完整源代碼都低於:
<?php
include('databaseConnection.php');
?>
<html>
<head>
<link rel="stylesheet" type="text/css" href="./css/librarySystem.css">
<title> Edit Book Information </title>
</head>
<div>
<?php
if(isset($_REQUEST['edit'])) //FIRST IF
{
$id = $_REQUEST['edit'];
$sql_select = "SELECT * FROM booklist WHERE ID=$id";
$result=mysql_query($sql_select);
// collect all the data using mysql_fetch_array and assign to our $variables
while($row = mysql_fetch_array($result))
{
$id = $row['ID'];
$title = $row['Title'];
$author= $row['Author'];
$yearLevel = $row['YearLevel'];
$isbn = $row['ISBN'];
}
//displays form for user to edit book information
echo "<form method='POST' action='edit.php'>";
echo "Enter New or Correct Title: <input type='text' name='title' value='$title' > <br />";
echo "Enter New or Correct Author: <input type='text' name='author' value='$author'> <br />";
echo "Enter New or Correct ISBN: <input type='text' name='isbn' value='$isbn' > <br/>";
echo "<input type='submit' name='save' value='Update' > <br />";
echo "</form>";
} //END 1st IF
else if(isset($_POST['save']))
{
echo $title = $_POST['title'];
echo $author = $POST['author'];
echo $isbn = $POST['isbn'];
$sql = "UPDATE booklist SET Author='$author', Title='title', ISBN = '$isbn' WHERE ID = '$id' ";
$result = mysql_query($sql);
if($result == true)
{
echo "Successfully Updated" ;
}
//header('Location: ./booklist.php');
}
?>
我怎樣才能糾正更新塊。當我點擊「更新」但是不會真正更新該行時,它似乎會進入if(isset($ _ POST ['save']),請幫助我卡住了,我不明白爲什麼「當我有$ _ POST [‘作者’] ...
我會很感激任何幫助或解釋。謝謝。
您的代碼是廣泛開放給SQL注入。你也使用不推薦的'mysql_ *'。使用'mysqli_ *'或'PDO'代替 – SuperDJ