- 締切済み
日記の指定日のみ表示
200908.txt 01,2009/08/01,2009,08,日記タイトル,日記本文,302 02,2009/08/02,2009,08,日記タイトル,日記本文,303 03,2009/08/03,2009,08,日記タイトル,日記本文,304 上記のようなログがあり 「日,日付,年,月,タイトル,本文,通しナンバー」の順に並んでいます。 たとえば、8/1なら「8/1のみ表示」するには、どのように条件付けすれば宜しいのでしょうか? 色々やってみましたが、出来ませんでした。どなたか教えて下さい。
- みんなの回答 (3)
- 専門家の回答
補足
ご回答有難うございます。 「できなかった」の内容なのですが ↓こうすれば8/1のみを表示することが出来ます。 foreach my $diary (reverse@file) { my ($day,$date,$year,$month,$subject,$descrip,$mynum) = split(/,/, $diary); if($diary =~/'302'/){ print qq|$date $subject<br>$descrip<br><br>\n|; } } ↓でも、この表現ではできません。 if($diary =~/'$mynum'/){ (日記の通しナンバーはすべてに振られてあるので、全部の日記が表示されてしまいます。) ↓$mynumの値を○○の部分に代入する事ができないんです。 if($diary =~/'○○'/){ cgiの後ろに「diary.cgi?mode=main&action=view&YMD=20090801&w=1」等をつけて表示する方法は、検索しても本を調べてもやり方が書かれておらず、関係ありそうな部分を抜き出して「1ページにいくつ表示するか&html部分&次ページへのリンク等」組み込んでみましたがダメで、行き詰ってしまいました。 日記なので、プログラムに直接日付などを書かずに表示がしたいのですが、どのように勉強すればいいのかも分からなくなってしまいました。