【问题标题】:Object of class mysqli could not be converted to string inmysqli 类的对象无法转换为字符串
【发布时间】:2015-11-18 03:32:30
【问题描述】:

我的问题与其他问题不同,我使用了截然不同的代码,我不确定如何处理或如何将其他人代码的解决方案应用于我的问题。

我收到了错误

Object of class mysqli could not be converted to string in

这是我的代码有问题的部分

    <?php
function aggiornamento($utente){
global $conn;
global $_CONFIG;
           $selezione=mysqli_query($conn, "SELECT * FROM ".$_CONFIG['db_account'].".account WHERE login = '".$utente."' LIMIT 1");
           while ($account = mysqli_fetch_array($selezione))
           {
    $_SESSION['IShop_Login']= $account['login'];
           }
} ?>

而第 5 行是“故障”行

【问题讨论】:

  • 谁能告诉我如何摆脱这个错误.....

标签: php string mysqli type-conversion runtime-error


【解决方案1】:

你可以用喜欢

$conn=mysqli_connect($host,$username,$password,$dbname);

先尝试连接你的数据库,然后像这样使用它

$selezione=mysqli_query($conn, "SELECT * FROM ".$_CONFIG['db_account'].".account WHERE login = '".$utente."' LIMIT 1");
           while ($account = mysqli_fetch_array($selezione))

你可以参考链接

http://php.net/manual/en/mysqli.query.php

我们有mysqli_query的程序风格

希望这能解决您的问题

【讨论】:

  • 好的,如果您已经这样做了,那么我认为查询中使用的变量有问题...我认为您应该先检查它的值...尝试打印 '$selezione' i 的值想想如果它返回 false 则只在输出窗口上打印查询...没有 mysqli_query 标记,您将了解传递了哪些值....
  • 没有 mysqli_query 标记它给出了意外的','我错误..它没有改变并回显 $selezione;什么都没有出现......当我在浏览器中打开文件时......也许我需要调试或其他什么?
  • nothing appers 表示错误,这意味着您查询创建问题,或者如果您的查询正确,则可能存在连接问题。现在我的建议是检查第一个查询,我认为像 mysqli_query($conn, "SELECT * FROM '".$_CONFIG['db_account']."'account WHERE login = '".$utente."' LIMIT 1"); 一样使用它,即看到 $_CONFIG 我已经更改了引号
  • 你能告诉我你的查询中account是什么,因为你使用了'。'给出数据库名称后???我认为您在数据库名称后附加了.account???
  • 点赞echo "SELECT * FROM '".$_CONFIG['db_account']."'.account WHERE login = '".$utente."' LIMIT 1";
【解决方案2】:

试试mysqli_fetch_assoc

while ($account = mysqli_fetch_assoc($selezione))
{
    $_SESSION['IShop_Login']= $account['login'];
}

【讨论】:

  • 它给出以下警告:注意:未定义变量:第 6 行中的选择警告:mysqli_fetch_assoc() 期望参数 1 为 mysqli_result,第 6 行中给出 null
【解决方案3】:

错误在:

mysqli_query($conn, "... WHERE login = '". $utente ."' LIMIT 1";

其中$utente 应该是一个字符串,但它是mysqli 的实例,即连接。看看你传递给这个function aggiornamento($utente) 的内容,并确保你传递的是字符串(带有登录名/用户名)而不是连接。

【讨论】:

  • 我不是代码的原始作者,但实际上我看不到传递给该函数的任何内容,除了仅存在于我编写的这段代码中。这里是初学者..:P
  • @P4P4DR4G0N:您在问题中粘贴的代码显示了函数的定义。问题在于它的使用。
  • 好吧,在大多数函数/变量被弃用之前,它曾经像 3-4 个月前一样正常工作,我不得不再次好好照顾它们。在我更新了不推荐使用的东西之后,开始出现这样的错误:/
猜你喜欢
  • 2019-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-05
  • 2015-07-27
  • 2012-04-29
  • 2011-04-06
相关资源
最近更新 更多