多列中的PHP列表

多列中的PHP列表,php,list,Php,List,我有一个从查询生成的长列表,但我需要输出最多4个列表(4列),每个列表中最多17个结果(总共最多68个),因为有一个设置的高度和宽度来适应这个,我是php新手,所以我不确定从哪里开始。我希望这是有道理的 <li class="dir">List title <?php // The following query gets all brands that appear in the mens categories and orders by ma

我有一个从查询生成的长列表,但我需要输出最多4个列表(4列),每个列表中最多17个结果(总共最多68个),因为有一个设置的高度和宽度来适应这个,我是php新手,所以我不确定从哪里开始。我希望这是有道理的

<li class="dir">List title
        <?php
        // The following query gets all brands that appear in the mens categories and orders by manufacturer name
        $mens_categories_products_query = "SELECT * FROM `products_to_categories` `pc` ";
        $mens_categories_products_query .= "LEFT JOIN `products` `pr` ON `pc`.`products_id` = `pr`.`products_id` ";
        $mens_categories_products_query .= "LEFT JOIN `manufacturers` `mn` ON `pr`.`manufacturers_id` = `mn`.`manufacturers_id` ";
        $mens_categories_products_query .= "WHERE `pc`.`categories_id` IN (";
        $mens_categories_products_query .= substr($mens_categories_products_ids, 0, strlen($mens_categories_products_ids)-1);
        $mens_categories_products_query .= ") GROUP BY `pr`.`manufacturers_id` ORDER BY `mn`.`manufacturers_name`";
        //$mens_manufacturers_query = tep_db_query("SELECT * FROM `manufacturers` ORDER BY `manufacturers_name` ASC;");

        // Run the new query 
        $mens_manufacturers_query = tep_db_query($mens_categories_products_query);
        $mens_manufacturers_list = "";
        while ($mens_manufacturers = tep_db_fetch_array($mens_manufacturers_query)) {

            $mens_manufacturers_list .= '<li><a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $mens_manufacturers['manufacturers_id']) . '">' . $mens_manufacturers['manufacturers_name'] . '</a></li>';

        }

        echo "<ul>$mens_manufacturers_list</ul>";
        ?>
        </li>    
列表标题
尝试添加一个icrement变量,并在17行添加另一个ul

$i = 0;
$mens_manufacturers_list = '<ul>';
$dbresult = tep_db_fetch_array($mens_manufacturers_query);
while ($mens_manufacturers = $dbresult) {
    $i++;
    $mens_manufacturers_list .= '<li><a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $mens_manufacturers['manufacturers_id']) . '">' . $mens_manufacturers['manufacturers_name'] . '</a></li>';

    if($i%17==0){
        $mens_manufacturers_list .= '</ul>';
    }
    if(count($dbresult) < $i){
        $mens_manufacturers_list .= '<ul>';
    }
}
echo $mens_manufacturers_list;
$i=0;
$mens_制造商_列表=“
    ”; $dbresult=tep\u db\u fetch\u数组($mens\u manufacturers\u query); 而($mens_制造商=$dbresult){ $i++; $mens_manufacturers_list.='li>'; 如果($i%17==0){ $mens_制造商_列表。='
'; } 如果(计数($dbresult)<$i){ $mens_制造商_列表=“
    ”; } } echo$mens\u制造商名单;
尝试添加一个icrement变量,并在17行添加另一个ul

$i = 0;
$mens_manufacturers_list = '<ul>';
$dbresult = tep_db_fetch_array($mens_manufacturers_query);
while ($mens_manufacturers = $dbresult) {
    $i++;
    $mens_manufacturers_list .= '<li><a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $mens_manufacturers['manufacturers_id']) . '">' . $mens_manufacturers['manufacturers_name'] . '</a></li>';

    if($i%17==0){
        $mens_manufacturers_list .= '</ul>';
    }
    if(count($dbresult) < $i){
        $mens_manufacturers_list .= '<ul>';
    }
}
echo $mens_manufacturers_list;
$i=0;
$mens_制造商_列表=“
    ”; $dbresult=tep\u db\u fetch\u数组($mens\u manufacturers\u query); 而($mens_制造商=$dbresult){ $i++; $mens_manufacturers_list.='li>'; 如果($i%17==0){ $mens_制造商_列表。='
'; } 如果(计数($dbresult)<$i){ $mens_制造商_列表=“
    ”; } } echo$mens\u制造商名单;
也许是这样的

$i = 1;
print "<ul>";
while ($mens_manufacturers = tep_db_fetch_array($mens_manufacturers_query)) {
            if ($i % 17 == 1) { 
                print "<ul>";
            }
            if ($i == 68) {
                print '<li><a href="readmore.php">Read more</a></li>';
            }
            else {
                print '<li><a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $mens_manufacturers['manufacturers_id']) . '">' . $mens_manufacturers['manufacturers_name'] . '</a></li>';
            }
            if ($i % 17 == 0) { 
                 print "</ul>";
            }
            $i++;    
}
更新:


更新代码以更正第一个
    上的编号循环。在第68条条目上添加了“阅读更多”链接。

    可能是这样的吗

    $i = 1;
    print "<ul>";
    while ($mens_manufacturers = tep_db_fetch_array($mens_manufacturers_query)) {
                if ($i % 17 == 1) { 
                    print "<ul>";
                }
                if ($i == 68) {
                    print '<li><a href="readmore.php">Read more</a></li>';
                }
                else {
                    print '<li><a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $mens_manufacturers['manufacturers_id']) . '">' . $mens_manufacturers['manufacturers_name'] . '</a></li>';
                }
                if ($i % 17 == 0) { 
                     print "</ul>";
                }
                $i++;    
    }
    
    更新:


    更新代码以更正第一个
      上的编号循环。在第68条条目中添加了“阅读更多”链接。

      thorn,我对代码做了一些更改,我想知道如何让您的更新代码与阅读更多一起在以下方面工作:

              <?php $i = 1;
              echo "<li class=\"dir\">BRANDS<ul>";
              $skate_manufacturers_query = tep_db_query($skate_categories_products_query);
              while ($skate_manufacturers = tep_db_fetch_array($skate_manufacturers_query)) {
      
              if ($i % 17 == 0) 
              echo "</ul></li><!-- start col --><li class=\"dir\">&nbsp;<ul>";
              echo '<li><a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $skate_manufacturers['manufacturers_id']) . '">' . $skate_manufacturers['manufacturers_name'] . '</a></li>';
              if ($i % 18 == 0) 
              echo "<!-- end one col -->";
              $i++;    
              } ?>
      
          </ul> <!-- needs these added -->
      </li>  <!-- needs these added -->   
      
      
      

    thorn,我对代码做了一点修改,我想知道如何使用read more让您的更新代码在以下方面发挥作用:

            <?php $i = 1;
            echo "<li class=\"dir\">BRANDS<ul>";
            $skate_manufacturers_query = tep_db_query($skate_categories_products_query);
            while ($skate_manufacturers = tep_db_fetch_array($skate_manufacturers_query)) {
    
            if ($i % 17 == 0) 
            echo "</ul></li><!-- start col --><li class=\"dir\">&nbsp;<ul>";
            echo '<li><a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $skate_manufacturers['manufacturers_id']) . '">' . $skate_manufacturers['manufacturers_name'] . '</a></li>';
            if ($i % 18 == 0) 
            echo "<!-- end one col -->";
            $i++;    
            } ?>
    
        </ul> <!-- needs these added -->
    </li>  <!-- needs these added -->   
    
    
    


谢谢,我应该在什么时候添加此代码?我假设在//下运行新查询,但我不确定要保留或替换什么?是的,那将是正确的位置。这将输出四个
内部
  • ,然后您可以根据您的容器进行样式设置。您可以从
    //运行新查询
    直到
    echo“
      $mens\u manufacturers\u list
    因为我没有使用$mens\u manufacturers\u list变量。非常感谢,stackoverflow是一个很棒的资源,我是新来的,非常感谢您的反馈!希望对你有用!如果这个答案对你有用,请考虑把它标记为接受。谢谢,我在什么地方添加这个代码?我假设在//下运行新查询,但我不确定要保留或替换什么?是的,那将是正确的位置。这将输出四个
    内部
  • ,然后您可以根据您的容器进行样式设置。您可以从
    //运行新查询
    直到
    echo“
      $mens\u manufacturers\u list
    因为我没有使用$mens\u manufacturers\u list变量。非常感谢,stackoverflow是一个很棒的资源,我是新来的,非常感谢您的反馈!希望对你有用!如果这个答案适用于你,请考虑将它标记为接受。你可以在<代码> $i++<代码>另一个条件下,<代码>如果($i=1){$MunsSuffer-ErrsSyList.=“
  • 品牌名称
  • ”;否则……/代码>嗨,我没有太多的运气,因为我认为在添加代码时,我不是很正确。这一行的无效参数返回:警告:为FOREACH()提供的无效参数是:FOREACH($dbresult as$mens_manufacturers){谢谢,我应该用“while”替换什么?很抱歉,我不擅长php,需要详细说明!您可以在
    $i++
    之后添加另一个条件,
    如果($i==1){$mens_manufacturers_list.=“
  • Brand name
  • ”}否则…
    嗨,我运气不太好,因为我认为我在添加代码时没有完全正确,它作为此行的无效参数返回:警告:行中为FOREACH()提供的无效参数是:FOREACH($dbresult as$mens_manufacturers){谢谢,我应该用“while”确切地替换什么-对不起,我不擅长php,需要详细说明!好的,我让它工作了,我如何让它在68时停止输出结果,一种最大结果的事情…好的,我让它工作了,我如何让它在68时停止输出结果,一种最大结果的事情。。。