访问由while循环

时间:2016-05-21 17:52:07

标签: php html mysql

我会尽量清楚。我的问题是我使用php从mysql获取数据。该表有多个记录。要显示表记录,我使用while循环作为条件具有mysqli_fetch_array()。表中的记录必须以echo显示(因为我想在页面上将它们显示为html),但是从while循环生成的每个div都有一个链接将我发送到另一个页面,如果客户端点击该链接它将获取当前div信息(在数据库中的表有多个记录后,信息将不同)将在下一页显示。希望你理解它。提前谢谢!

while($rows1 = mysqli_fetch_array($query1,MYSQLI_ASSOC))
                            {
                             echo "<div class=\"row\">
                                <div class=\"col-md-6\">
                                    <div class=\"thumb\">
                                        <figure>
                                            <img src=\"images/extra-images/room-grid1.jpg\" alt=\"\"/>
                                            <figcaption>
                                                <a rel=\"prettyPhoto[gallery2]\" href=\"images/extra-images/room-grid1.jpg\">
                                                    <i class=\"fa fa-search\"></i>
                                                </a>
                                            </figcaption>
                                        </figure>
                                    </div>
                                </div>
                                <div class=\"col-md-6\">
                                    <div class=\"text\">
                                        <h4>".$rows1['Dh_lloji']."</h4>
                                        <p>".$rows1['Dh_Pershkrimi']."</p>
                                        <ul class=\"room-grid-meta\">
                                            <li>Max: ".$rows1['Dh_Kapaciteti']."</li>
                                            <li>Size: ".$rows1['Dh_madhesia']."</li>
                                            <li>Floor: ".$rows1['Dh_Kati']."</li>
                                        </ul>
                                        <div class=\"retail room-grid-retail\">
                                            <span>
                                                <sup>$</sup>
                                                ".$rows1['Dh_cmimi']."
                                                <sub>night</sub>
                                            </span>";
                                            if(isset($_SESSION['Emri_Mbiemri']) != '')
                                            {
                                                echo "<a class=\"btn-3\" href=\"payment.php\">Book now</a>";
                                            }else{
                                                $error = "You must be logged in to book!";
                                            }

                                        echo "<br>".$error."</div>
                                        <div id=\"price_room\">".$rows1['Dh_cmimi']."</div>
                                    </div>
                                </div>
                            </div>";

                                $count++;
                            }

3 个答案:

答案 0 :(得分:3)

看起来你至少需要你的自定义计数器,它将在循环内增加,并根据此计数器设置div的id,并在生成的链接中使用它

答案 1 :(得分:0)

试试这个逻辑

while ($row = $select->fetch_assoc()) {
 echo $row["track_title"] . " by " . $row["artist"] . "<br />";
 $path = $row['path'];
 $path = str_replace("..", "", $path);
 $id = $row['id'];

 # make sure $path doesn't contain ' character
 echo "<canvas class='wave' data-path='$path' data-id='$id' width='1024' height='128'></canvas>";
}

JS

$('.wave').each(function(){
 var wavesurfer = Object.create(WaveSurfer);

 wavesurfer.init({
  canvas: this,
  waveColor: 'violet',
  progressColor: 'purple'
 });

 wavesurfer.load($(this).data('path'));
});

答案 2 :(得分:0)

我为我的问题找到了解决方案,我想与你们分享。我给定义while循环生成的每个链接的链接提供了$ count ...

<a class=\"btn-3\" href=\"payment.php?id=$count\">Book now</a>

之后,我使用多维数组来存储数据库中房间的当前divs变量(在我的案例房间价格,数量和id)...

$room_prices[$count][0] = $rows1['Dh_cmimi'];
                                $room_prices[$count][1] = $count;
                                $room_prices[$count][2] = $rows1['ID_Dhoma'];

在客户端点击特定链接后,他将获得id,这样我就可以在我的多维数组中搜索价格和该房间的ID ..

for($i = 0; $i < $count; $i++)
                            {
                                    if($_GET['id'] == $room_prices[$i][1]){
                                      $sess_room_price = $room_prices[$i][0];
                                      $sess_room_id = $room_prices[$i][2];
                                    }
                            }

在我得到这些后,我将它们存储在全局会话变量中,以便在另一页上使用它们......

$_SESSION['Rooms_Price'] = $sess_room_price;
                    $_SESSION['Rooms_ID'] = $sess_room_id;

所以这为我做了工作......希望这有助于其他人。