gpt4 book ai didi

php - SQL 不会在数据库中创建任何内容

转载 作者:太空宇宙 更新时间:2023-11-03 11:48:23 25 4
gpt4 key购买 nike

这是我的代码,但是当我在用户下输入我的数据库时,没有创建任何东西。它以前有效。

这是我的数据库信息

$odb = new PDO('mysql:host=' . DB_HOST . ';dbname=' . DB_NAME, DB_USERNAME, DB_PASSWORD);

if(!$odb){ die('Connection Failed!'); }

?>

这是我想创建用户的地方。

$steamid = $steamprofile['steamid'];

/*Check possible existing data*/

$SQLCheckLoginQuery = $odb -> prepare("SELECT COUNT(*) FROM `users` WHERE `steamid` = :SteamID");

$SQLCheckLoginQuery -> execute(array(':SteamID' => $steamid));

$countUsers = $SQLCheckLoginQuery -> fetchColumn(0);

if($countUsers <= 0){

$SQLInsertQuery = $odb -> prepare("INSERT INTO `users` (steamid) VALUES :SteamID");
$SQLInsertQuery -> execute(array(':SteamID' => $steamid));
}
?>

最佳答案

你的 mysql 查询似乎有错误,你的 VALUES 应该在括号之间:

$SQLInsertQuery = $odb -> prepare("INSERT INTO `users` (steamid) VALUES (:SteamID)");

编辑:在您的评论中,您向我们展示了users 的结构,avatar 列似乎是强制性的。所以你应该做一个默认值或者在你的插入查询中添加头像

$SQLInsertQuery = $odb -> prepare("INSERT INTO `users` (steamid, avatar) VALUES (:SteamID, :avatar)");

此外,您可以激活日志以查看是否抛出某些异常

$odb->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

关于php - SQL 不会在数据库中创建任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37077583/

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