【问题标题】:How to not add the user to the database if the date is later than today's date?如果日期晚于今天的日期,如何不将用户添加到数据库?
【发布时间】:2017-02-09 20:35:27
【问题描述】:

我这里有个小问题。我是 PHP 和 JS 的新手,所以。我有一个 PHP 代码,里面有 MySQL 数据库。在 JS 文件中,我编写了代码,它检查用户输入的日期是否早于今天的日期。现在它将所有用户添加到数据库中,但我只需要添加早于今天日期输入的用户(仅添加带有 TRUE if 语句的用户)。我该怎么做?感谢您的帮助。

这是我的部分JS代码:

if (x.getTime() < today.getTime()) {
    alert ("Employees has been succesfully added to the database");
}
else
{
    alert ("You have entered date which is later than todays date. Re-enter it");
}
}

这是我的 PHP 代码:

<?php
try {
$db = new PDO( 'mysql:host=127.0.0.1;dbname=employees;charset=utf8','root','' );
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

if (isset($_POST['Submit'])) {
$name = $_POST['name'];
$surname = $_POST['surname'];
$employmentDate = $_POST['employmentDate'];

$insert = $db->prepare("INSERT INTO employee (name,surname,employment_date) VALUES (:name,:surname,:employmentDate)");

$insert->bindParam(':name',$name);
$insert->bindParam(':surname',$surname);
$insert->bindParam(':employmentDate',$employmentDate);
$insert->execute();
}
}
catch (PDOException $e) {
echo "There is something wrong with the database".$e->getMessage();
die();
}
?>

【问题讨论】:

  • 您不应该相信来自客户端的日期,您不知道它是如何生成的,也不知道主机设置的时间和日期。 x今天 是什么?我猜它们是日期,但它们是如何生成的?
  • 你能再补充一点吗?我假设您的 php 代码是数据实际插入数据库的位置,对吗?如果您将该检查放入 php 代码中并且仅在日期有效时才调用 sql 插入。
  • 我已经添加了我的 PHP 代码

标签: javascript date date-comparison


【解决方案1】:
var today, someday, text;
today = new Date();
someday = new Date();
someday.setFullYear(2100, 0, 14);

if (someday > today) {
    alert("Today is before January 14, 2100.");
return;
 }
   ...Database insert Code here

我相信已编辑以回答您的问题。如果您在正确的范围块中,您只需要调用数据库添加。

查看 W3 学校: http://www.w3schools.com/js/js_date_methods.asp

如果您想让生活更轻松,请使用 moment.js https://momentjs.com/

【讨论】:

  • 我这样做了,我的 JS 代码只是检查用户在表单中输入的日期(在 php 文件中)是否不迟于今天,以及它是否为真,它会打印结果。我想你没听懂我的问题。
  • 我认为这里没有任何内容不属于Compare two dates with JavaScript 的答案。
  • 如果日期验证失败,您需要退出或将 db insert 置于正确的范围内。我猜你的数据库代码在 IF 块下面,因此它总是触发
猜你喜欢
  • 2011-04-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多