使用未定义的常量ugDept - 假设'ugDept'
当我尝试执行下面的代码时出现此错误
$_10thPercentage=number_format($_POST['tenthPercentage'], 2, '.', ' ');
$query="
INSERT INTO academic
VALUES (
'".$_SESSION['roll']."',
'".$_POST[tenthMedium]."',
".$_10thPercentage.",
'".$_POST[twelthStudiedStatus]."',
".$_10thPercentage.",
'".$_POST[techStudiedStatus]."',
'".$_POST[techDept]."',
'".$_POST[techPercentage]."',
'".$_POST[appStudiedStatus]."',
'".$_POST[appDept]."',
'".$_POST[appPercentage]."',
'".$_POST[ugStudiedStatus]."',
'".$_POST[ugDept]."',
'".$_POST[ugCgpa]."',
'".$_POST[pgStudiedStatus]."',
'".$_POST[pgDept]."',
'".$_POST[pgCgpa]."')";
mysql_query($query);
Run Code Online (Sandbox Code Playgroud)
只有特定值才会传递给帖子.所以代码不工作建议一些方法来解决它
Jon*_*hop 11
您可能需要更改所有$ _POST变量以使用引号(如果您不使用常量).像这样:
$_POST['ugDept']
Run Code Online (Sandbox Code Playgroud)
否则,PHP会查找名为ugDept的常量值,该值可能不存在.如果使用常量,请确保已正确定义.你可以这样做:
define('ugDept', 'someValueHere');
Run Code Online (Sandbox Code Playgroud)
另外,正如其他人所建议的那样,你需要清理你的输入,你应该使用Mysqli扩展,而不是mysql_*.就像现在一样,您的数据库存在SQL注入的风险,这很糟糕.
更新:要确保您的mysql_query通话成功与否,请执行以下操作:
$result = mysql_query('{YOUR QUERY HERE}');
if (!$result) {
die('Invalid query: ' . mysql_error());
}
Run Code Online (Sandbox Code Playgroud)
这将向您报告SQL错误.请注意,die在生产环境中,不一定是最好的事情; 但在发展中,它完成了这项工作.
| 归档时间: |
|
| 查看次数: |
132 次 |
| 最近记录: |