douduidui1046 2018-07-25 08:05
浏览 56
已采纳

too long

I have the following code:

$result=$db->query("SELECT * FROM gwub WHERE gwubStatus > 0") or die(mysqli_error($db));

if($result->num_rows>0) 
{
    while($row=mysqli_fetch_assoc($result)) {   

The query is running and doing what it requires on the database but I am still getting the following warning:

Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, string given

I am getting no mysqli errors and if i run command direct on database it works fine. There is only one result if that makes any difference?

  • 写回答

2条回答 默认 最新

  • dongwen1909 2018-07-25 09:10
    关注

    I'll bet anything you have an assignment to $result inside your loop, e.g. something like:

    while ($row = mysqli_fetch_assoc($result)) {
        $result = $row['some_column'];
    }
    

    After that assignment, $result no longer contains the result of the query, it contains that column, which is a string. The next iteration of the loop tries to use that string when it calls mysqli_fetch_assoc($result), and this fails.

    Solution: use a different variable inside the loop.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号