我有一个选择列表,其中包含从我的数据库中提取的字符串,多个字符串包含空格并导致错误,起初PHP没有读取空格。我使用引文修复了它,但错误仍然存在。
这是我的PHP代码在一个文件中:
$AllDepartements = $db->getAllDepartements();
echo "<select name='Major' style='width: 270px'><option value=''>Select Major</option>";
While ($row = mysql_fetch_array($AllDepartements))
{
$Major = $row['DName'];
print "<option value='".$Major."'>$Major</option>";
}
print "</select><br>";
这是添加函数调用:
else if($tag =='add'){
$SSN = $_POST['SSN'];
$Class = $_POST['Class'];
$Major = $_POST['Major'];
$Minor = $_POST['Minor'];
if($db->addStudent($SSN,$Class,$Major,$Minor))
header('Location:' . $form . '.php?tag=list');
else
echo mysql_error();
//echo "ERROR!";
}
最后是函数本身:
public function addStudent($SSN,$Class,$Major,$Minor) {
if($result = mysql_query(" INSERT INTO student (SSN,Class,Major,Minor) VALUES ('$SSN','$Class',$Major,$Minor ")) {
return true ;
}
else
return false;
}
我收到的错误是:
您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第1行的''附近使用正确的语法
答案 0 :(得分:0)
您没有关闭VALUES
括号:
$result = mysql_query("INSERT INTO student (SSN,Class,Major,Minor) VALUES ('$SSN','$Class',$Major,$Minor)");
而且,您正在使用已弃用的mysql
库,稍后将省略该库。使用mysqli
或PDO等界面。
答案 1 :(得分:0)
INSERT查询中的SYNTAX错误...
"INSERT INTO student (SSN,Class,Major,Minor) VALUES ('$SSN','$Class',$Major,$Minor)"
^^^^^