【问题标题】:Organize States and Cities and display certain way PHP组织州和城市并以某种方式显示 PHP
【发布时间】:2013-06-11 04:25:35
【问题描述】:

我有这段代码假设显示$fstate,然后在它下面显示所有$fcity。它显示 $fcity 3 次,然后创建一个新列。我的问题是我可以让州和城市显示,但我不能让城市在适当的状态下显示。现在它显示所有州,然后显示它下面的城市。代码如下:

<?php
$fquery = "SELECT state, city, count(city) as num FROM needs WHERE country='$usercountry' AND status='posted' GROUP BY state, city ORDER BY state, city";
if ($result = mysql_query($fquery)) {
    $num_rows = mysql_num_rows($result);

    echo "<table>";
    $i = 1;
    $cols = 3;
$prev = "";

    while ($frows = mysql_fetch_array($result)) {
        $fcity = $frows['city'];
        $fstate = $frows['state'];
        $fcitycount = $frows['num'];  // num is holding your count by city

if ($fstate != $prev) {
echo "<tr>$fstate</tr><tr>";
$prev="$fstate";
}

        echo "<td><a href='node/browseresults.php?city=$fcity&state=$fstate'>$fcity, $fstate ($fcitycount)</a> </td>";
echo ($i < $num_rows) ? ((($i % $cols) == 0) ? '</tr>' : '') : '';
        $i++;
    }
    echo "</table>";
}

?>

这就是我现在得到的(示例):

ARMOSCTNTX

Brookland, AR (1)   Fayetteville , AR (2)   Harrisburg, AR (2)
Hot Springs, AR (1) Jonesboro, AR (1)   Searcy, AR (2)
St Louis, MO (3)
murrells inlet, SC (1)  Myrtle Beach, SC (1)
Memphis, TN (1)
Arlington, TX (1)

但我需要它看起来像这样:

AR
Brookland, AR (1)   Fayetteville , AR (2)   Harrisburg, AR (2)
Hot Springs, AR (1) Jonesboro, AR (1)   Searcy, AR (2)

MO
St Louis, MO (3)

SC
murrells inlet, SC (1)  Myrtle Beach, SC (1)

TN
Memphis, TN (1)

TX
Arlington, TX (1)

【问题讨论】:

    标签: php mysql sql html-table


    【解决方案1】:
    if ($fstate != $prev) {
    echo "<tr>$fstate</tr><tr>";
    

    您正在生成格式错误的表格。如果您的表格内容不在&lt;td&gt;&lt;th&gt; 标记内,则在呈现时,它们会出现在错误的位置。试试这个:

    if ($fstate != $prev) {
    echo "<tr><th>$fstate</th></tr><tr>";
    

    【讨论】:

    • 它工作了,但现在状态有点像制表符/缩进...有没有办法让它们左对齐?
    • @user2362601 - &lt;th&gt; 标签将它们以粗体显示并居中;尝试改用&lt;td&gt;
    • 没问题 - 很高兴能提供帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-18
    • 2012-11-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多