首页 > 解决方案 > 搜索并显示重复数据 php mysql

问题描述

桌子

我想搜索并执行具有相同 orderid 的数据。不幸的是它说

致命错误:无法在第 114 行的 C:\wamp64\www\Workshop1\admin\ordersearch.php 中使用类型为 mysqli_result 的对象作为数组

    if(isset($_POST['search']))
{
    // id to search
    $Orderid = $_POST['Orderid'];


    // connect to mysql
    $connect = mysqli_connect("localhost", "root", "","workshop1");

    // mysql search query
    $query = "SELECT * FROM orders WHERE Orderid =  $Orderid  ;";

    $result = mysqli_query($connect, $query);


    // if id exist 
    // show data in inputs
    if(mysqli_num_rows($result) > 0)
    {
      while ($row = mysqli_fetch_array($result))
      {?>

                            <td style='border-bottom: 1px solid #b3b3b3;' align='center'><?php echo $result["Orderid"];?></td>
                            <td style='border-bottom: 1px solid #b3b3b3;' align='center'><?php echo $result["productid"];?></td>
                            <td style='border-bottom: 1px solid #b3b3b3;' align='center'><?php echo $result["price"];?></td>
                            <td style='border-bottom: 1px solid #b3b3b3;' align='center'><?php echo $result["quantity"];?></td>
                            <td style='border-bottom: 1px solid #b3b3b3;' align='center'><?php echo $result["custid"];?></td>

<?php


      }  
    }

    // if the id not exist
    // show a message and clear inputs
    else {
        echo "Undifined ID";

    }


    mysqli_free_result($result);
    mysqli_close($connect);

}

标签: phpmysql

解决方案


您必须像这样编写代码,因为如果您不这样做,它将被识别$Orderid为字符串。

$query = "SELECT * FROM orders WHERE Orderid = '" . $Orderid. "' limit 1 "; 

并改变这个

<td style='border-bottom: 1px solid #b3b3b3;' align='center'>
    <?php echo $row["Orderid"];?>
</td>

推荐阅读