gpt4 book ai didi

php - mysql_query() 函数的 mysql 查询错误

转载 作者:行者123 更新时间:2023-12-01 00:17:09 25 4
gpt4 key购买 nike

if (!empty($name) || !empty($degree) || !empty($college)|| !empty($gender) || !empty($mail) || !empty($phone) || !empty($city)) 
{
mysql_query($con,
"INSERT INTO regstration(name,degree,college,gender,mail,phone,city)
VALUES('$name','$degree','$college','$gender','$mail','$phone','$city')"
) or die("error");
}

错误信息是:

mysql_query() expects parameter 1 to be string given resource C://...... line 21

最佳答案

您的查询的第一个问题是您在调用 mysql_query 时反转了查询字符串和连接对象。

此外,您评论说手机号码是整数格式,其他资源是 varchar。然后,您应该调整插入查询以不引用整数值:

$sql= 
"INSERT INTO regstration(name,degree,college,gender,mail,phone,city)
VALUES('$name','$degree','$college','$gender','$mail',$phone,'$city')";
mysql_query($sql, $con) or die("error : " . mysql_error());

重要说明:

  • 当发生 mysql 错误时,您可以使用 mysql_error() 访问错误消息(参见上面的代码);重要的是要有完整的错误消息以便分析错误,而不是泛泛的错误提及。

  • SO 上的任何人都会强烈建议 use prepared statements and parameterized queries ,以保护您的代码免受 SQL 注入(inject)攻击,并使您的查询更具可读性和可维护性。使用参数化查询时,此类拼写错误更容易检测到。

  • mysql extension is deprecated :您应该考虑迁移到 mysqliPDO .

关于php - mysql_query() 函数的 mysql 查询错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54517702/

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