我有一个搜索数据库的搜索页面。一旦搜索,它会将结果显示在一个可以编辑条目的页面上。但是,当我尝试编辑条目时,出现“主题编辑失败”。我看不出我做错了什么。 这里是edit.php。PHP搜索和编辑数据库
if (isset($_POST['submit']))
{
//form was submitted
$First_Name = mysql_real_escape_string($_POST["First_Name"]);
$Last_Name = mysql_real_escape_string($_POST["Last_Name"]);
$message = "Your details have been received";
//Database Query
$query = "UPDATE subjects SET ";
$query .= "First_Name = '{$First_Name}'";
$query .= "Last_Name = '{$Last_Name}'";
$query .= "LIMIT 1";
$result = mysqli_query($connect, $query);
if($result && mysqli_affected_rows($connect) == 1)
{
//Success
echo "Subject Edited. ";
}
else
{
//failure
echo "Subject Editing failed. ";
}
}
这里是形式:
<form action="edit.php" method ="post">
<p>First_Name
<?php
$fquery = $_GET['fquery'];
$lquery = $_GET['lquery'];
$fquery = htmlspecialchars($fquery);
$lquery = htmlspecialchars($lquery);
$fquery = mysql_real_escape_string($fquery);
$lquery = mysql_real_escape_string($lquery);
$raw_results = mysql_query("SELECT * FROM member
WHERE (`First_Name` = '$fquery') AND (`Last_Name` = '$lquery')") or die(mysql_error());
if(mysql_num_rows($raw_results) > 0){
$string = "";
while($results = mysql_fetch_array($raw_results)){
$string .= "<p class=\"name\">".$results['First_Name']." ";
}
}
else{
$string = "No results";
}
echo $string; ?>
<input type="text" name="First_Name" value ="" />
</p>
<p>Last Name:
<?php
$fquery = $_GET['fquery'];
$lquery = $_GET['lquery'];
$fquery = htmlspecialchars($fquery);
$lquery = htmlspecialchars($lquery);
$fquery = mysql_real_escape_string($fquery);
$lquery = mysql_real_escape_string($lquery);
$raw_results = mysql_query("SELECT * FROM member
WHERE (`First_Name` = '$fquery') AND (`Last_Name` = '$lquery')") or die(mysql_error());
if(mysql_num_rows($raw_results) > 0){
$string = "";
while($results = mysql_fetch_array($raw_results)){
$string .= "<p class=\"name\">".$results['Last_Name']." ";
}
}
else{
$string = "No results";
}
echo $string; ?>
<input type="text" name="Last_Name" value ="" />
</p>
一旦表单提交的数据库将更新查询。谢谢你的帮助!!
我没有看到问题。你有没有使用基本的调试方法,如'error_reporting(E_ALL);','mysqli_error()'并在执行前打印查询'print $ query; $ result = ..'? – kero
是的,我有@kingkero它没有给我任何错误,直到我添加他们都寄给我的代码。它不会给我在DreamWeaver中的错误,但提交时会吐出一个错误。警告:mysqli_affected_rows()期望参数1为mysqli,null在第29行中的/home/content/96/11465396/html/edit.php中给出的为null 主题编辑失败。 – King