从数据库中获取特定网页的数据

时间:2018-04-17 04:49:33

标签: php ajax html5 pdo

我正在创建一个网站,人们可以在其中发布有效期限的东西。并且我将所有数据存储在具有到期日期的数据库中,因此在页面上仅显示有效数据并且过期不会显示在页面上。目前我正在使用这个PHP脚本

    <?php
$servername = "******";
$username = "********";
$date=date("Y/m/d");
try {
    $conn = new PDO("mysql:host=$servername;dbname=******", $username, "*******");
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $query = "select id, item1, item2, item3, expirydate, description from table WHERE expirydate>= ?";
    $statement = $conn->prepare($query);
    $statement->execute(array($date));
        foreach($statement->fetchAll(PDO::FETCH_ASSOC) as $row){
            echo"<div class='col-md-12'>";
                echo"<div class='agent-item'>";
                    echo"<div class='row'>";
                        echo"<div class='col-md-3'>";
                            echo"<img src='img/uploads/$row[item1]' class='img-responsive' alt=''>";
                        echo"</div>";
                        echo"<div class='col-md-6'>";
                            echo"<h6 class='mb-xs'>Description</h6>";
                            echo"<p>'$row[item2]'</p>";
                        echo"</div>";
                        echo"<div class='col-md-3'>";
                            echo"<p>address</p>";
                        echo"</div>";
                    echo"</div>";
                echo"</div>";
            echo"</div>";
        }
    }
catch(PDOException $e)
    {
        echo "Connection failed: " . $e->getMessage();
    }
?>

问题是fetchAll获取了我真正不想要的所有数据。我想每页显示10个项目,所以我想获取10个项目,当用户点击下一页时,所以在第2页我想要获取接下来的10个项目并在第2页上显示它。我正在努力2天才能实现这一目标但是我每次失败,即使我只尝试了fetch()方法,但它只在foreach循环中迭代一次。 有人可以帮我解决我如何才能获取10个项目,并在下一页如何获取10个项目,这些项目应该在之前的10个项目之后开始。

  

请注意:要跟踪项目,选择ID不是最佳选择   因为失效日期不同,这意味着如果id 2用户有失效日期   在1周后,所以id 3用户在此之前有到期日。

提前致谢

1 个答案:

答案 0 :(得分:0)

首先,如果您只想获取10条记录,请在查询中添加Limit,如下所示

select id, item1, item2, item3, expirydate, description from table WHERE expirydate >= ? Limit 10 ;

它只会获取匹配的10条记录 检查您的查询是否正常

下一步在此处获取战利品以创建webage的分页

https://www.w3schools.com/howto/howto_css_pagination.asp