gpt4 book ai didi

php - 插入时出现奇怪的 Mysql 问题

转载 作者:行者123 更新时间:2023-11-30 23:57:46 25 4
gpt4 key购买 nike

大家好,

不确定这里发生了什么,但是如果我运行这个:

$query = 'INSERT INTO users 
(`id`, `first_name`, `second_name`, `register_date`, `lastlogin_date`)
VALUES
("'. $user_id . '", "' . $first_name .'", "'. $second_name . '", "' . $date . '", "' . $date . ");';
$result = mysql_query($query);

我没有得到返回,但如果我把它改成这样就好了:

$query = 'INSERT INTO users (`id`, `first_name`, `second_name`, `register_date`, `lastlogin_date`) 
VALUES ("21021212", "Joe", "Bloggs", "20090202", "20090202");';
$result = mysql_query($query);

用户 id = bigint(20)

名字 = varchar(30)

第二个名字 = varchar(30)

日期 = 整数(8)

起初我以为是 vars 的问题,但它们完全一样,但仍然无法正常工作。

感谢任何帮助。

最佳答案

养成使用 mysql_real_escape_string 转义所有数据库输入的习惯- 真的,你应该使用某种包装器,比如 PDOADODb来帮助您做到这一点,但如果没有,您可以这样做:

$query = sprintf("INSERT INTO users ".
"(id, first_name, second_name, register_date, lastlogin_date)".
"VALUES('%s','%s','%s','%s','%s')",
mysql_real_escape_string($user_id),
mysql_real_escape_string($first_name),
mysql_real_escape_string($second_name),
mysql_real_escape_string($date),
mysql_real_escape_string($date));

$result = mysql_query($query);

同时使用 mysql_error 检查错误

 if (!$result)
{
echo "Error in $query: ".mysql_error();
}

关于php - 插入时出现奇怪的 Mysql 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/694763/

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