DATA fileに順番を付けて表示するには?

[上に] [前に] [次に]
hioo [E-Mail] [HomePage] 2000/03/26(日) 00:40:31
詳細は上記ホームページに記載していますがアドレス帳のスクリプトで、
登録した順番に番号を付け、また何番目に登録したかも表示したいのですが、
どうにもうまくいきません。
何方か、アドバイス頂けないでしょうか。

andi 2000/03/26(日) 00:52:58
open(DAT,"$data_file");
$count = <DAT>;
@data = <DAT>;
close(DAT);

push(@data.$new_data);

open(DAT,">$data_file");
print DAT ++$count;
foreach(@data){
  print DAT "$count,$_";
}
close(DAT);

う〜ん・・酔ってるけどあってる?

andi 2000/03/26(日) 00:55:55
あ、間違えてますね(笑)

$count++;
push(@data."$count,$new_data");

open(DAT,">$data_file");
print DAT $count;
foreach(@data){
  print DAT "$_";
}
close(DAT);

この辺は人に聞くより自分で勉強した方が良いかも。
自分の為には。

hiboo 2000/03/26(日) 02:37:48
andiさんありがとうございます。
すみませんうまく組み込めなくて悩んでいます。
恐れ入りますが、アドバイス頂けないでしょうか?


@r=<IN>;
close(IN);

print "<center><TABLE BORDER=1>";
print "<TR><td ALIGN=CENTER>No.</center>";
print "<td ALIGN=CENTER>名前</center>";
print "<td ALIGN=CENTER>年齢</center>";
print "<td ALIGN=CENTER>メールアドレス</center>";

############################ここが??###############################
print map {"<tr><td ALIGN=CENTER>$No++
$count++;
push(@data."$count,$new_data");

open(DAT,">$data_file");
print DAT $count;
foreach(@data){
  print DAT "$_";
}
close(DAT);
###################################################################
<td ALIGN=CENTER>$_->[1]
<td ALIGN=CENTER>$_->[2]
<td ALIGN=CENTER>$_->[3]<BR>"}

sort {$a->[2] cmp $b->[2]}
map {[$_, split /,/]} @r;

print <<"EOF";
</table></center>
</body></html>
EOF

[上に] [前に] [次に]