Mysqli - 日期的正确参数[重复]
Posted
技术标签:
【中文标题】Mysqli - 日期的正确参数[重复]【英文标题】:Mysqli - Correct parameter for date [duplicate] 【发布时间】:2014-04-21 13:07:52 【问题描述】:在 mysqli 中使用准备好的语句,并将日期插入 MySQL 数据库时,我应该使用什么参数?
示例代码:
<?php
$db = new mysqli('localhost', 'root', '', 'database');
$date = date("Y-m-d")
$stmt = $db->prepare("INSERT INTO table (date) VALUE (?)");
$stmt->bind_param("WHAT PARAMETER TO USE?", $date); // <--- What parameter?
$stnt->execute();
$stmt->close();
?>
总结:
当使用 MySQLI(行类型为“日期”)插入 MySQL 数据库时,在使用准备好的语句时,哪个参数与 bind_param
一起使用是正确的?它只是字符串的's',还是......?
如果我在上面写了一些糟糕的代码,我会很高兴知道。我是 MySQLi 的新手,很高兴知道我做错了什么。
提前致谢。
【问题讨论】:
如果您想插入当前日期或当前时间,使用 MySQL 函数更容易,如下所示:INSERT INTO table (date) VALUE (NOW())
其实我知道这一点。但这不是我要找的。span>
【参考方案1】:
您可以使用“s”,这可以用于日期、日期时间。 它被视为任何其他字符串。
$stmt->bind_param('s', $date);
【讨论】:
【参考方案2】:什么是“日期”类型?是整数还是字符串?
如果是字符串,使用s。
如果是整数,只有数字,使用i。
但是,在这种情况下,date('Y-m-d');
将输出为:2014-03-16
,你最好使用字符串。因为它有'-'。
【讨论】:
以上是关于Mysqli - 日期的正确参数[重复]的主要内容,如果未能解决你的问题,请参考以下文章
警告问题:期望参数 1 为 mysqli_result [重复]
mysqli_fetch_array() 期望参数 1 为 mysqli_result,布尔值在 [重复]
用户“root”的访问被拒绝; @localhost'(使用密码:YES) 和 mysqli_query() 期望参数 1 为 mysqli,bool 给定 [重复]
警告:mysqli_stmt_bind_param()期望参数1是mysqli_stmt,给定布尔值? [重复]