gpt4 book ai didi

php - PDO - 插入(INSERT INTO ...)代码不起作用

转载 作者:行者123 更新时间:2023-12-01 00:13:28 24 4
gpt4 key购买 nike

我正在尝试将当前日期/时间作为用户上次登录的时间插入到数据库中。由于某种原因,这不起作用。
在同一页面上运行的其他插入脚本运行良好,连接正常。
我使用相同的语法在整个站点中插入其他内容,所以我没有弄错。
我可以保证在输入密码时执行 else 部分。

这是我正在谈论的一段代码。

if(!$pwVer){ 
// code to execute if the password is incorrect.
} else {

$dateT = date("Y-m-d H:i:s");

$up_date = $con->prepare("INSERT INTO tbl_user_test (user_last_login) VALUES (:l_login)");
$up_date->bindParam(':l_login', $dateT);

$up_date->execute();

validateUser($userid); //sets the session data for this user


header("Location: cart.php");
$con = null;
die();
}

一些背景:

  • 如果密码正确,$pwVer 返回 `true`。
  • `tbl_user_test` 和 `user_last_login` 的写入与它们在数据库中的完全相同。

提前致谢!

最佳答案

I'm trying to insert the current date/time to the database as the last time the user logged in. For some reason this doesn't work.

您的代码中没有可见的错误,因此应该执行。一个可能的问题是 PDO 处于静默模式,它不会告诉您发生了什么错误或是否发生了错误。将 PDO 设置为失败并出现异常。

此外,您无需自己构建当前日期;您可以使用 SQL 的 NOW()

<?php
$con->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
try {
$up_date = $con->prepare("INSERT INTO tbl_user_test (user_last_login) VALUES (NOW());");
$up_date->execute();
}
catch( Exception $e ) {
echo $e; exit;
}

header("Location: cart.php");
$con = null;
die();

关于php - PDO - 插入(INSERT INTO ...)代码不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11339372/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com