php - 显示超过 8 个 div 类

标签 php javascript css jquery

我的 PHP 代码有问题。我在 mysql 数据库中存储了 8 行 channel ,我使用 var totalrowcount 为 div 类显示 8 个框,以显示我从 mysql 存储的行,但是当我存储超过 8 个 div 类时,我无法显示超过 8 个框mysql 中的 8 行。

我想为具有任意数字范围的 div 类创建无限框以匹配行,具体取决于我在 mysql 数据库中存储的行数。

这是我发现问题出处的代码:

    var totalrowcount = 8;
<div class="mainWrap">
    <div class="row" id="row1">
        <div id="image1" class="channelList div_1_1"></div>
        <div class="rowSubPgm">
            <div id="programe1" class="pgmFirstRow div_1_2"></div>
            <div id="programe2" class="pgmFirstRow div_1_3"></div>
            <div id="programe3" class="pgmFirstRow div_1_4"></div>
        </div>
    </div>
    <div class="clear"></div>
    <div class="row"  id="row2">
        <div id="image2" class="channelList div_2_1"></div>
        <div class="rowSubPgm">
            <div id="programe4" class="pgmFirstRow div_2_2"></div>
            <div id="programe5" class="pgmFirstRow div_2_3"></div>
            <div id="programe6" class="pgmFirstRow div_2_4"></div>
        </div>
    </div>
    <div class="clear"></div>
    <div class="row"  id="row3">
        <div id="image3" class="channelList div_3_1"></div>
        <div class="rowSubPgm">
            <div id="programe7" class="pgmFirstRow div_3_2"></div>
            <div id="programe8" class="pgmFirstRow div_3_3"></div>
            <div id="programe9" class="pgmFirstRow div_3_4"></div>
       </div>
    </div>
    <div class="clear"></div>
    <div class="row"  id="row4">
        <div id="image4" class="channelList div_4_1"></div>
        <div class="rowSubPgm">
            <div id="programe10" class="pgmFirstRow div_4_2"></div>
            <div id="programe11" class="pgmFirstRow div_4_3"></div>
            <div id="programe12" class="pgmFirstRow div_4_4"></div>
       </div>
    </div>
    <div class="clear"></div>
    <div class="row"  id="row5">
        <div id="image5" class="channelList div_5_1"></div>
        <div class="rowSubPgm">
            <div id="programe13" class="pgmFirstRow div_5_2"></div>
            <div id="programe14" class="pgmFirstRow div_5_3"></div>
            <div id="programe15" class="pgmFirstRow div_5_4"></div>
        </div>
    </div>
    <div class="clear"></div>
    <div class="row" id="row6">
        <div id="image6" class="channelList div_6_1"></div>
        <div class="rowSubPgm">
            <div id="programe16" class="pgmFirstRow div_6_2"></div>
            <div id="programe17" class="pgmFirstRow div_6_3"></div>
            <div id="programe18" class="pgmFirstRow div_6_4"></div>
       </div>
    </div>
    <div class="clear"></div>
        <div class="row"  id="row7">
        <div id="image7" class="channelList div_7_1"></div>
        <div class="rowSubPgm">
            <div id="programe19" class="pgmFirstRow div_7_2"></div>
            <div id="programe20" class="pgmFirstRow div_7_3"></div>
            <div id="programe21" class="pgmFirstRow div_7_4"></div>
        </div>
    </div>
    <div class="clear"></div>
        <div class="row"  id="row8">
        <div id="image8" class="channelList div_8_1"></div>
        <div class="rowSubPgm">
            <div id="programe22" class="pgmFirstRow div_8_2"></div>
            <div id="programe23" class="pgmFirstRow div_8_3"></div>
            <div id="programe24" class="pgmFirstRow div_8_4"></div>
        </div>
    </div>
    <div class="clear"></div>

我可以毫无问题地从 mysql 输出无限行,但我不能为 div 类显示超过 8 个框。如果我想创建类,我必须更改每一行末尾的最后一个数字,例如:pgmFirstRow div_9_4、pgmFirstRow div_10_4 等等。

我打算在 mysql 中存储几千行,我发现如果要添加几千行代码来添加 div 类对我来说太过分了。

有谁知道如何创建代码以允许我添加无限数量的 div 类,使用 totalrowcount 的数组来匹配我存储在 mysql 中的行,以允许我为 div 类添加任意范围的框? ?

如有任何建议,我们将不胜感激。

最佳答案

这就是为什么他们发明了 forwhile 循环。您可以使用循环继续打印 div 和行,直到到达结尾。

PDO 示例:

$query = $con->prepare("/* Your QUERY*/");
try {
// Try to execute the query
$query->execute();
}
catch(PDOException $e) {
// Error jumps here
echo $e->getMessage();
}
// Set fetch mode so we can retrieve the data by an object
$query->setFetchMode(PDO::FETCH_OBJ);

while($row = $query->fetch()){
/* While there are rows available we continue executing this loop */
/* You can get data using $row->id for example */
echo 
"<div class=\"clear\"></div>
<div class=\"row\"  id=\"row".$row->id."\">
    <div id=\"image".$row->id."\" class=\"channelList div_".$row->id."_1\"></div>
    <div class=\"rowSubPgm\">
        <div id=\"programe".$row->id."\" class=\"pgmFirstRow div_".$row->id."_2\"></div>
        <div id=\"programe".$row->id."\" class=\"pgmFirstRow div_".$row->id."_3\"></div>
        <div id=\"programe".$row->id."\" class=\"pgmFirstRow div_".$row->id."_4\"></div>
    </div>";
}

mysql_* 示例。 (我不推荐使用这个。我只是为你写的,以防你更熟悉这个而不是 PDO。切换到 PDO 总是一个好主意。

// Assuming you already executed the query
while($row = mysql_fetch_assoc($result)){
// Here it's pretty much the same as PDO. Only now the $row is an array instead of an object
echo
    "<div class=\"clear\"></div>
    <div class=\"row\"  id=\"row".$row['id']."\">
    <div id=\"image".$row['id']."\" class=\"channelList div_".$row['id']."_1\"></div>
    <div class=\"rowSubPgm\">
        <div id=\"programe".$row['id']."\" class=\"pgmFirstRow div_".$row['id']."_2\"></div>
        <div id=\"programe".$row['id']."\" class=\"pgmFirstRow div_".$row['id']."_3\"></div>
        <div id=\"programe".$row['id']."\" class=\"pgmFirstRow div_".$row['id']."_4\"></div>
    </div>";
}

编辑:

顺便说一句,我不建议同时显示所有行。想象一下,您的行增长到数千,并且您想要打印一千条记录。我敢打赌 mysql 服务器和浏览器都会对这个事实感到不安 :) 相反,请尝试对您的行进行分页。

关于php - 显示超过 8 个 div 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16928279/

相关文章:

javascript - 将 JSON 数组排序为多个数组

javascript - 克隆对象时如何修改其值?

javascript - jQuery - 取消选中复选框

css - 垂直居中图像,在一行内,每 4n+1 个元素清除 float 创建行

javascript - 使用 jQuery 编写波纹淡入淡出效果的最佳方法

php - 对象数组的排序算法

php - 限制用户访问管理面板

php - 如何巧妙处理 Artisan 命令中的异常

javascript - 如何在提交空白表单时隐藏图像?

css - 响应 : Resize width and height of element in ratio while resizing window