Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 如何在一行中显示从数据库值生成的有序列表?_Html_Css - Fatal编程技术网

Html 如何在一行中显示从数据库值生成的有序列表?

Html 如何在一行中显示从数据库值生成的有序列表?,html,css,Html,Css,在下面的php代码中,我获取从数据库购买的项目列表。因为它是以逗号分隔的值存储的,所以我将其分解并在while循环中获取。作为一个输出,我得到了购买物品的有序列表。。 但我希望有序列表水平显示 现在输出如下: 购买的物品 咖啡壶 洗衣机 例如,输出应为: 购买物品:1)咖啡机2)洗衣机 请帮助我如何通过列表或其他方式获得这种输出 <? echo "<strong>Items Bought:</strong>"; echo "<ol>

在下面的php代码中,我获取从数据库购买的项目列表。因为它是以逗号分隔的值存储的,所以我将其分解并在while循环中获取。作为一个输出,我得到了购买物品的有序列表。。 但我希望有序列表水平显示

现在输出如下:

购买的物品

  • 咖啡壶
  • 洗衣机
  • 例如,输出应为:

    购买物品:1)咖啡机2)洗衣机

    请帮助我如何通过列表或其他方式获得这种输出

    <?
        echo "<strong>Items Bought:</strong>";
            echo "<ol>";
                        $q=mysql_query("select * from lead where id='$ID'");
                        $rs=mysql_fetch_object($q);
                        $prod_interest = $rs->interested_in;
                        $prod_name = explode(",", $prod_interest);
    
                        $pname='';
                        for($i = 0; $i < count($prod_name); $i++){
    
                        $prd_name= $prod_name[$i];
                        //taking the product name for the id
                        $productname=mysql_query("select * from product where id='$prd_name'");
    
                        while ($prow=mysql_fetch_object($productname))
                        {
                    ?>
                    <li value="<? echo $pname=$prow->id;?>"><? echo $pname=$prow->name;?></li>
                    <?
                            }
                        }
                        echo "</ol>";
                    ?>
    

    我认为这个问题更多的是HTML问题,您的LIs可能是浮动的,这就是为什么您会得到一个从右到左的列表

    编辑:

    哦,那么您想将此样式添加到页面:

    <style>
    ol li {
        float: left;
    }
    </style>
    
    
    欧利{
    浮动:左;
    }
    
    编辑2:

    <style>
    ol li {
        float: left;
        padding-left: 10px;
        display: block;
        list-style-type: decimal;
    }
    </style>
    
    
    欧利{
    浮动:左;
    左侧填充:10px;
    显示:块;
    列表样式类型:十进制;
    }
    
    这听起来像是CSS问题,而不是PHP问题。默认情况下,列表应垂直显示,除非您有reset.css或类似的“重置”列表行为

    如果要确保它打印垂直有序列表,请执行以下操作:

    <ol class="vertical_ol">
        <li>One</li>
        <li>Two</li>
        <li>Three</li>
    </ol>
    

    这是一个HTML/CSS而不是PHP问题。使用
  • 可以得到一个垂直排列的列表。。例如:

  • 项目1
  • 项目2
  • 当您希望它们水平时,您可以

    使用CSS将块
  • 元素转换为内联元素:

    echo '<ol>';
    while ($prow=mysql_fetch_object($productname)) {
      echo '<li style="display: inline">';
      echo $prow->id . ' ' . $prow->name;
      echo '</li>';
    }
    echo '</ol>';
    
    while ($prow=mysql_fetch_object($productname)) {
      echo $prow->id . ' ' . $prow->name . ' ';
    }
    

    有序列表不会自动生成垂直列表吗?然后可以用css来设置样式。不,我得到的是一个正常的垂直有序列表。我想把它水平展示,希望这次你能让我看到。!我想我不是唯一一个误解你的人,我们都知道你有水平的东西,想要垂直的,看看所有的评论和答案:P我修正了它,看看我的编辑它就像水平的mathieu…但是它没有数字..我希望它像1)Item1 2)Item2一样显示。。。。现在它显示为Item1Item2Item3我希望我也能有间隔..我尝试了所有方法,但没有成功(虽然我不精通css,但它可以工作,谢谢你的帮助…但我不知道为什么我没有得到数字HMMM…好主意Kaai…但我不希望产品id位于第一行。我希望根据产品的数量进行1,2,3编号。。
    while ($prow=mysql_fetch_object($productname)) {
      echo $prow->id . ' ' . $prow->name . ' ';
    }