2

インシデントの数を表示するインフォボックスがあります。

私は機能を持っています:

function getStateCounts()
{
    $query = sprintf("select t1.count, t2.State_name
        from (select count(*) as count, state
            from INC_DIST_SUMMARY S
                join SHAPE_LAYERS L on L.geo_id = S.shape_geo_id
            group by state) as t1, SHAPE_LAYER_STATE_DESC as t2 
            where t1.state=t2.state");

    $count = mysql_query($query);

    if (!$count) {
        echo "<error> Invalid query " . $query . "</error>"
        die("Invalid query: " . mysql_error());
    }

    return $count;
}

出力クエリの結果を「No of Incidents」に保存する必要があります。

while ($item = mysql_fetch_array($result, MYSQL_ASSOC)) {
    echo "<item><title geoid='" . $item['GEO_ID'] . "'>" .
         $item['STATE_NAME']."(".($item['STATE_ABBR']).")" .
         "</title><description cong_dist='".$item['DIST_NAME']."'>";
    echo $item['STATE_ABBR'] . $item['DIST_NAME'] . " &lt;br/&gt";" **No of Incidents:";**
    echo $item['INC_COUNT'] . "</description>";
    echo "</item>"

このインシデントの値を「インシデント数」に修正する必要があります。

while ($item = mysql_fetch_array($count, MYSQL_ASSOC)) {
    echo "<summary>";
    echo "<state>".$count['STATE']."</state>";
    echo "<count>".$count['COUNT']."</count>" 
    echo "</summary>";
}

「インシデント数」変数にクエリ値を表示するにはどうすればよいですか?

4

1 に答える 1

1

非 COUNT(*) クエリで rowCount() を実行します。

または、mysql(i)_num_rowsを実行します

$rowscounted を使用した手法の結果にラベルを付け、

if (!$count) {
            echo "<error> Invalid query " . $query . "</error>";
            die("Invalid query: " . mysql_error());
        }

        return $count;
}

と:

if ($rowscounted == 0) {
    echo "<error> Invalid query " . $query . "</error>";
        die("Invalid query: " . mysql_error());
    }
else {
echo '$rowscounted states were returned by your query.'
}

私はphpが初めてなので、おそらく最良の答えではないかもしれませんが、最近このような質問を自分で行ったので、これがうまくいくと思います. (初心者なので、塩をひとつまみ、ハッシュと一緒に飲んでください...)

于 2012-11-01T19:11:50.013 に答える