0

我对 PHP 中的日期函数有疑问。我不知道如何正确使用它。我从未学过 PHP,也找不到任何方法。我只需要知道日期功能如何正常工作。当我尝试将日期添加到数据库中时,查询不起作用。我在我的项目中使用了 mySql 和 php,尽管有破解的风险,但我没有发布任何东西。我只是一个做项目的学生,我们学校没有任何 IT 老师。您的帮助将不胜感激。

$date = date("Y-m-d");

if($type == 'borrow')

    $query="UPDATE books set Availablity = ".$zero." where ID=".$id."";
    mysql_query($query) or die (" borrow operation failed due to query 1");
    $query1="INSERT into borrowed (BookID, BookName, BorrowedID, BorrowedName,
    DateBorrowed, Extended, Returned) values('".$id."','".$bkName."','".$userid."'
    ,'".$userName."',".$date."','".$zero."','".$zero.")";
    mysql_query($query1) or die (" borrow operation failed to due query 2");
    echo "borrow begun";
4

3 回答 3

2

如果您需要 mysql 数据库中的当前日期,请尝试使用当前时间戳作为列类型,而不是使用 php 函数。在这里我找到了一些关于如何做的链接

http://dev.mysql.com/doc/refman/5.0/en/timestamp-initialization.html

于 2013-03-16T10:09:42.750 回答
0

我已经进行了更正。用这个,

$query1="INSERT into borrowed (BookID, BookName, BorrowedID, BorrowedName,
    DateBorrowed, Extended, Returned) values('".$id."','".$bkName."','".$userid."','".$userName."','".$date."','".$zero."','".$zero.")";

确保 DateBorrowed 的类型为 Date 或 DateTime。

于 2013-03-16T10:06:09.067 回答
0

首先,您确保您已在 MySQL借用表中进行了修改。
修改:将DateBorrowed类型更改为TIMESTAMP。之后,您按照以下代码作为参考。

if($type == 'borrow')
{
    $query="UPDATE books set Availablity = ".$zero." where ID=".$id."";
    mysql_query($query) or die (" borrow operation failed due to query 1");
    $query1="INSERT into borrowed (BookID, BookName, BorrowedID, BorrowedName,
    DateBorrowed, Extended, Returned) values('".$id."','".$bkName."','".$userid."'
    ,'".$userName."',now()','".$zero."','".$zero.")";
    mysql_query($query1) or die (" borrow operation failed to due query 2");
    echo "borrow begun";
}

在此之后,您不必担心日期功能。顺便说一句,日期函数格式是正确的。因此,错误仅存在于您的查询中。只有当您没有正确配置数据库表时才会发生这种类型的错误。所以,我建议你重新检查你的表结构。

于 2013-03-16T10:34:34.903 回答