Php 什么';指定和使用mysqli_insert_id()的返回类型时出错?
错误显示在这一行:Php 什么';指定和使用mysqli_insert_id()的返回类型时出错?,php,mysql,Php,Mysql,错误显示在这一行: $query1="UPDATE `users` SET password=''.md5(md5(mysqli_insert_id($link).$pass)).'' WHERE id=''.mysqli_insert_id($link).'' "; 错误如下: 可恢复的致命错误:类mysqli的对象无法转换为字符串 在第30行的/home/vhosts/nagarajhegde41.freevar.com/DiaryHome.php中
$query1="UPDATE `users`
SET password=''.md5(md5(mysqli_insert_id($link).$pass)).''
WHERE id=''.mysqli_insert_id($link).'' ";
错误如下:
可恢复的致命错误:类mysqli的对象无法转换为字符串
在第30行的/home/vhosts/nagarajhegde41.freevar.com/DiaryHome.php中
您依赖于在文本中执行代码,但语法不正确。我的建议是你甚至不要尝试。至少可以说,用字符串包装代码很不方便。看看使用常规代码语句有多容易:
$query1 = 'UPDATE users
SET password = ?
WHERE id = ?';
$params1 = [
md5(md5(mysqli_insert_id($link).$pass)),
mysqli_insert_id($link),
];
这样您就可以免费获得:
- 更简单的语法
- 可读代码
- 在所有PHP编辑器(即使是免费的)中正确的语法突出显示和代码完成
- 正确的错误报告,以及有用的行号信息
- 针对SQL注入的保护
$query1 = 'UPDATE users
SET password = ?
WHERE id = ?';
$params1 = [
md5(md5(mysqli_insert_id($link).$pass)),
mysqli_insert_id($link),
];
这样您就可以免费获得:
- 更简单的语法
- 可读代码
- 在所有PHP编辑器(即使是免费的)中正确的语法突出显示和代码完成
- 正确的错误报告,以及有用的行号信息
- 针对SQL注入的保护
另外,您可能需要检查。您的函数在引号中。它们不会运行。您的字符串用双引号括起来,但您正在尝试终止它并用单
“更新`users`SET password=''。
您的函数都在引号中。它们不会运行。您的字符串用双引号括起来,但您正在尝试终止它并用单个“UPDATE`users`SET password=''”连接。
但是,在您建议传递的整个字符串中,函数(如mysqli\u real\u escape\u string()或mysqli\u insert\u id()如何工作?如果我想使用,我必须使用concat,对吗?抱歉,我不能理解你的后续问题。
是,如果你是这个意思的话。但是函数在你建议传递的整个字符串中如何工作,像mysqli\u real\u escape\u string()或mysqli\u insert\u id()之类的函数?如果我想使用,我必须使用concat,对吗?对不起,我不明白你的后续问题。
就是这个,如果你是这个意思的话。