根据优先级从数据库中选择行

时间:2018-02-20 01:04:31

标签: javascript php loops

我正在制作一个简单的幻灯片,它从数据库中获取数据。我已经创建了一个php循环,以便从数据库中的表中获取所有行。它工作正常(代码写在文本下面)。在决赛中,每一行都有一个充满严重信息的div。然后我使用javascript简单地添加和删除类" .visible "逐渐地,它循环。

但现在我想创建像优先系统这样的东西。我想我会在表格中添加一个列,我可以写一个数字,让我们说从1到3.如果一行的优先级为1,它将显示自己每三个div的循环,而如果优先级设置为3,它将显示每个循环。我只是不知道如何完成它。

我不知道自己是否清楚,如果你对任何事情都不了解,请随意问我一个问题。

非常感谢。

        $query = "SELECT *
                FROM tbpolozky
                WHERE active = 1";

        $statement = $conn->prepare($query);
        $statement->execute();

        $produkty = $statement->fetchAll();

         ?>

         <!DOCTYPE html>
         <html lang="cs">
         <head>
            <meta charset="UTF-8">
            <title>DongleAd - Slideshow</title>
            <link rel="stylesheet" href="slideshow.css">
         </head>
         <body>
            <div class="slider">
                <?php $i=0; foreach($produkty as $p): ?>
                <div class="slide <?php if($i==0){echo('active');} ?>">
                    <div class="container">
                        <div class="slide_popis">
                            <div class="popis">
                                <h1><?= $p['nazev_produktu'] ?></h1>
                                <p><?= $p['popis_produktu'] ?></p>
                            </div>
                            <div id="logo"></div>
                        </div>
                        <div class="slide_produkt">
                            <img src="<?= $p['img_url'] ?>" alt="">
                            <span><?= $p['cena'] ?> Kč</span>
                        </div>
                    </div>
                </div>
                <?php $i++; ?>
            <?php endforeach; ?>
            </div>

1 个答案:

答案 0 :(得分:0)

我不知道你是如何展示它的,你可以尝试使用modulus这样的东西

<?php
 $counter = 0;
  $names =array('Jose'=>'1','Javier'=>'3','Jerome'=>'1','Anna'=>'3','Joselito'=>'1','Javi'=>'3','Andrew'=>'1','Bob'=>'3','Doc'=>'1','Dope'=>'3','Brod'=>'1','Brad'=>'3',
          'Duke'=>'1','John'=>'3','Doe'=>'1','Michael'=>'3');
foreach($names as $name => $priority) {



if($priority == '1') // Check for priority first
{
 if($counter % 3 === 1 ) {
    echo "<div style = 'background-color:green;'>" . $name . "Priority no." . $priority . "</div>"; // do something every third loop ( DISPLAY THE LOWEST )
 }
}else{
     echo "<div style = 'background-color:blue;'>" . $name . "Priority no." . $priority . "</div>";  // DISPLAY THE HIGHEST 
}
++$counter;
}
?>