1

我正在为 PHP 类做一个最终项目,但在验证代码时遇到了麻烦。在代码的 else if 部分中,我总是在这两个 else if 语句中遇到错误,并且应用程序停止处理。下面的代码是 .php 文件的一部分,该文件具有用于设置提醒的 HTML 表单。

} else if (!checkdate($_POST['reminderMonth'],$_POST['reminderDate'],$_POST['remindereEar'])) {
    $error_message = "Selected date does not exist.";
} else if ($reminderDate <= $t_date) {
    $error_message = "Selected date has already occured.";

所有代码:

if(isset($_POST['submit'])) {
//get data
$t_date = date(Ymd);
$year = $_POST['reminderYear'];
$month = $_POST['reminderMonth'];
$day = $_POST['reminderDay'];
//validate data
$reminderDate = $year.$month.$day;
if (empty($_POST['reminderName'])) {
    $error_message = "Name is a required field.";
} else if (!checkdate($_POST['reminderMonth'],$_POST['reminderDate'],$_POST['remindereEar'])) {
    $error_message = "Selected date does not exist.";
} else if ($reminderDate <= $t_date) {
    $error_message = "Selected date has already occured.";
} else {
    $error_message = ''; }
//redirect
if(empty($error_message)) {
    mysql_query("INSERT INTO reminder_event 
                    (reminderName,reminderDescript,reminderDate) 
                 VALUES
                    ('{$reminderName}','{$reminderDescript}','{$reminderDate}')");
header("Refresh: 1;url=reminder_list.php");
} else {
echo($error_message); } }
4

3 回答 3

1

我看到 2 个错别字:

 $_POST['reminderDate'],$_POST['remindereEar']

它应该是:

$_POST['reminderDay'],$_POST['reminderYear']
于 2012-05-03T23:45:10.630 回答
1

你在remindDate 和remindereEar 上犯了一个错误。

它应该是:$_POST['reminderDay'], $_POST['reminderYear']

告诉我你在改变之后是否有更多错误。

于 2012-05-03T23:49:20.393 回答
1

date(Ymd) 会产生错误应该是

date('Y m d');

并确保 $reminderDate = $year.$month.$day; 以相同的方式格式化

$reminderDate = $year.' '.$month.' '.$day;

还有2个错别字:

$_POST['reminderDate'],$_POST['remindereEar']

不知道这是否是一个解决方案,但如果你按照自己的方式运行它看起来仍然会导致问题

于 2012-05-03T23:51:18.030 回答