我有一个删除页面,它可以从我的数据库中删除一个预先加载到选项框中的条目。但是,当我输入任何随机文本时,它会重定向到我的'remove-module-complete.php'页面。如果它们是数据库中的实际条目,我只希望它指向'remove-module-complete.php'。我的javascript似乎没有用。
我目前有一些验证说,jQuery中的条目“没有匹配任何项目”,但是如果我按下提交,它仍指示我“模块删除完成”。
任何帮助?
这是我的PHP
<?php
if (isset($_POST['submit'])){
$moduleCode = $_POST['moduleCode'];
$moduleCodeLen = strlen($moduleCode);
if ($moduleCodeLen=6){
$sqlTwo = "DELETE FROM MODULES WHERE id = '$moduleCode'";
mysql_query($sqlTwo);
$resTwo =& $db->query($sqlTwo);
if(PEAR::isError($res)){
$errorVar = ($res->getMessage());
echo "<script type='text/javascript'>alert('Invalid entry, please try again. Error code: $errorVar');</script>";
die;
}
else echo "<script> location.replace('http://project.ac.uk/remove-module-complete.php'); </script>";
}
else echo "<script type='text/javascript'>alert('Invalid entry, please try again');</script>";
}
?>
答案 0 :(得分:0)
好像你有一些错误(注释行):
if (isset($_POST['submit'])) {
$moduleCode = $_POST['moduleCode'];
$moduleCodeLen = strlen($moduleCode);
// '==', not '='
if ($moduleCodeLen==6) {
$sqlTwo = "DELETE FROM MODULES WHERE id = '$moduleCode'";
mysql_query($sqlTwo);
$resTwo =& $db->query($sqlTwo);
// there is no $res variable in the given part of the code
// maybe you need to use $resTwo variable here?
if (PEAR::isError($res)) {
$errorVar = ($res->getMessage());
echo "<script type='text/javascript'>alert('Invalid entry, please try again. Error code: $errorVar');</script>";
die;
}
else echo "<script> location.replace('http://project.ac.uk/remove-module-complete.php'); </script>";
}
else echo "<script type='text/javascript'>alert('Invalid entry, please try again');</script>";
}