関連する質問が解決しない場合は、別の質問をしてください。クエリ結果の特殊な表示に関する問題

WBOY
リリース: 2016-06-13 13:44:26
オリジナル
824 人が閲覧しました

質問が解決しないので、もう一度質問してください。クエリ結果の特殊表示について!
元の投稿: http://topic.csdn.net/u/20120214/16/171276bf-16a7-45a3-8224-fea338db7ee0.html?1686623126

この投稿にはもう返信できません。別の投稿を開く 1 つの投稿:

データベースの構造とフィールドは次のとおりです:


このような表示効果を実現するには:


上の友人 jordan102フォーラムがこれを書くのに協力しました。 クエリプロセス中の PHP ファイルコードは次のとおりです:

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><?php
mysql_connect('127.0.0.1','root','');
mysql_select_db('jiagedata');



$result=mysql_query("select year(add_date) as y,group_concat(yc_jiage) as str from yc_jiage group by year(add_date);") or die(mysql_error());

      echo '<table>';
while($row = mysql_fetch_assoc($result)){

      echo '<tr>';
      echo "<td>$row[y]</td>";
      foreach(explode(',',$row['str']) as $v);
            echo "<td>$v</td>";
      echo "<tr>";

}
      echo "</table>";
?>
ログイン後にコピー


実行結果は私が望むものではありませんが、次の結果:


明らかにすべてのデータがリストされているわけではありません。どこにエラーがあるのか​​教えてください。
jordan102 友達、まだいますか?

-----解決策---------
データ形式を変更します。試してみて、うまくいくかどうかを確認してください。
SQL ステートメントは次のように変更されます:
select year(add_date) as y,group_concat(yc_jiage) as str,group_concat(day(add_date)) as ss from yc_jiage group by year(add_date)

PHP コード
while($row=mysql_fetch_assoc($result)){
       $arr[$row[y]]=$row;
 }

 foreach($arr as $k=>$v){
      $s_arr=explode(',',$v[str]);$n_arr=explode(',',$v[ss]);
      foreach($n_arr as $k1=>$n)
           $tmp[$k][$n]=$s_arr[$k1];
 }
 echo '<テーブル幅="800" algn="center" セルスペース=0>';
 echo "<tr>";
 echo "<td>年と月</td>";
 for($i=1;$i;
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!