Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MYSQLI-PHP:显示产品页面问题_Php_Mysql_Mysqli - Fatal编程技术网

MYSQLI-PHP:显示产品页面问题

MYSQLI-PHP:显示产品页面问题,php,mysql,mysqli,Php,Mysql,Mysqli,我有一个管理员插入产品页面, 我正在尝试创建一个显示产品页面,以便所有访问该网站的用户都能看到产品。我试图布局所有数据完全相同,这样当一个新产品插入到网站时,它看起来与其他产品一样,并且不需要每次添加样式或创建新布局 但我没有运气,我尝试了两种不同的方法,但什么都没有表现出来 尝试1: <?php $select_prods = $dbc->query("SELECT * FROM Rest_Details"); while($row_prods = $se

我有一个管理员插入产品页面, 我正在尝试创建一个显示产品页面,以便所有访问该网站的用户都能看到产品。我试图布局所有数据完全相同,这样当一个新产品插入到网站时,它看起来与其他产品一样,并且不需要每次添加样式或创建新布局

但我没有运气,我尝试了两种不同的方法,但什么都没有表现出来

尝试1:

     <?php
    $select_prods = $dbc->query("SELECT * FROM Rest_Details");
    while($row_prods = $select_prods->fetch_array(MYSQLI_BOTH)){
    session_start();

    $_SESSION['rest_name'] = $row_prods['Resturant_name'];
    $_SESSION['rest_name'] = $row_prods['Resturant_name'];
    $_SESSION['rest_addlin1'] = $row_prods['Res_Address_Line_1'];
    $_SESSION['rest_addlin2'] = $row_prods['Res_Address_Line_2'];
    $_SESSION['rest_city'] = $row_prods['City_name'];
    $_SESSION['rest_pcode'] = $row_prods['Resturant_Postcode'];
    $_SESSION['rest_avg'] = $row_prods['Avg_Del'];
    $_SESSION['rest_Est_Del'] = $row_prods['Est_Del'];

    echo "
          <div id='products_box'>

    <p id='name'> $_SESSION['rest_name']</p>
     </div>
        "
      }


请添加两种情况下的预期结果,例如您希望发生的事情,以及实际结果,例如实际发生的事情。您不应使用第一个示例。基本上,您正在为while循环的每次迭代重写
$\u会话
全局变量。第二个例子应该能像预期的那样工作,所以我不确定您想得到什么?我认为您缺少了对
mysqli_stmt_execute()
mysqli_stmt_bind_result()
mysqli_stmt_fetch()
的一些函数调用,您有什么理由把所有东西都塞进
$\u会话中吗?应将其用于请求之间持久化的数据,并尽量少用。用临时的东西把它弄得乱七八糟是个糟糕的计划。@jerneva use';'在echo语句的末尾
           <?php
        $select_prods = "SELECT * FROM Rest_Details";
        //$run_prods = mysqli_query($dbc, $select_prods);
        $run_prods = mysqli_prepare($dbc, $select_prods) or die(mysqli_error($dbc));

        while ($row_prods = mysqli_fetch_array($run_prods)) {
            $rest_id = $row_prods['Resturant_ID'];
            $rest_name = $row_prods['Resturant_name'];
            $rest_add = $row_prods['Res_Address_Line_1'];
            $rest_city = $row_prods['City_name'];

            echo "

   <div id='product'>
        <h3>$rest_name </h3> 
        <p>$rest_add</p>
        <a href='product_page.php'><button>Feed Me!</button></a>    
    </div>
   ";
        }
    ?>
<?php
        $sql = "SELECT * FROM Rest_Details";
        $query = $dbc->query($sql);
        while ( $products = mysqli_fetch_assoc ($query) ) {
            $rest_id   = $products['Resturant_ID'];
            $rest_name = $products['Resturant_name'];
            $rest_add  = $products['Res_Address_Line_1'];
            $rest_city = $products['City_name'];  
            echo $rest_id.'<br>'; 
            echo $rest_name.'<br>';  
            echo $rest_add.'<br>';  
            echo $rest_city.'<br>'; 
        } 
?>