アプリ版:「スタンプのみでお礼する」機能のリリースについて

前の質問から一歩前進して、ここまできました。
エラーがでる箇所はA HREF のところです(一応。。)
インラインフレームheute_artikel の中に、この関連属性をつけたファイルの名前を改行しながら表示したいのですが、よろしくご指導ください。

$todaystr= "$month.$day"; #次に検索する/表示する

opendir(DIR, "kalender");
while ($file = readdir(DIR)) {};
closedir(DIR);

# 検索 関連づけして、inLineFrame heute_artikelへ
for (@file) {
$FLname = $_;
$find = index $FLname, $todaystr;
if ($find =1) {<a href=$FLname target="heute_artikel"></a>\n; }
}

A 回答 (3件)

まず。


> if ($find =1) {<a href=$FLname target="heute_artikel"></a>\n; }
}

の「{<a(以下略)」が文法的に不正です。
表示したいのなら、

{ print '<a href="', $FFLname, '" target="heute_artikel">', "</a>\n"; }

――のように、記述する必要(これが唯一の正解というわけでもないですが)があります。

また、「if ($find =1)」とありますが、これだと代入してしまいますので、必ず条件が成立します。この手のは潜在的なバグの元になりやすいです。

このほかにも、「@fileが突然出てくる。値が未定義ではないか」、「$todaystrをindex()で$FLnameから探しているが、本当にこの方法で問題ないか」とかが指摘できそうです。

まずは、文法エラーの解消を試みては。
    • good
    • 0
この回答へのお礼

osamuyさま、ご親切なアドバイス感謝します。
ホントにひどいミスばかり、こんな初心者もいるというわけで世間の年寄りたちもやる気になったのではないでしょうか。。
 次のようにやってみました。見よう見まねです。。
所期の目的まであと一歩です。つまり、print で表示するInlineフレームはあらかじめ別のところでtargetを決めてあるので、そのフレームに表示されましたが、タイトルをクリックしたファイルの内容を別のInlineフレームに表示させるには、どうすればいいのですか?
済みませんが、引き続きご指導ください。

$todaystr= "$month.$day";

$dirname='kalender'; #今日のカレンダーデータhtmがあるディレクトリ
opendir(DIR, $dirname);
while (defined($dir = readdir(DIR))) {
if ($dir =~ /\.s?html?$/ && index($dir, $todaystr)==0)
{
print qq|<a href="$dirname/$dir">$dir</a><br>|;
}
}
closedir(DIR);

print "</BODY>\n";
print "</HTML>\n";
__END__

お礼日時:2003/09/14 16:26

> タイトルをクリックしたファイルの内容を別のInlineフレームに表示させる



ご自身が質問文で記述されているように、target属性で指定すればよいのでは。
動的に変えたいというのなら、Client側JavaScriptでなんとかなりそうな気がします。
    • good
    • 0
この回答へのお礼

osamuyさま、ご返事頂きありがとうございます。
print qq|<a href="$dirname/$dir">$dir</a><br>|;
検索で探し当てたファイルの名前を、これでInlineフレームAに表示できました。targetはHTMLスクリプトでかいてあります。
 次の問題は、このリンクをクリックして、別のInlineフレームBに、ファイルの中身を表示したいのですが、それをさせるためのtarget属性は、どう書くのか、わかりません。JavaScriptだと思います。またあちこちに解説されているテーマですが、正確にわかりません。
 このPerl コーナーではそのご教示をお願いできませんでしょうか?

お礼日時:2003/09/14 23:16

> このリンクをクリックして、別のInlineフレームBに、ファイルの中身を表示したいのですが、


> それをさせるためのtarget属性は、どう書くのか、わかりません。

【ファイルa.html】
<iframe name="f1" width=640 height=80 frameborder=1 src="b.html"></iframe>
<hr>
<iframe name="f2" width=640 height=80 frameborder=1 src="about:blank"></iframe>

【ファイルb.html】
<a href="http://www.goo.ne.jp/" target="f2">Test</a>

ファイルa.html内に二つのインラインフレームがあって、フレームf1に表示されているb.htmlのリンクをクリックすると、フレームf2にgooを表示します。
――という話でしょうか?
外れているにしろ、Perlの話ではなく、HTMLの話と思いますので、そちらについて調べてみては。
どういうHTMLを組み立てられれば良いかが分からないと、Perlのコードの書き方も決められませんので。
    • good
    • 0
この回答へのお礼

osamuyさま、また御教示頂きましてありがとうございました。はいHTMLの話として切り替えることにいたし、このフォーラムでは終わりにいたします。ご親切ありがとうございました。

お礼日時:2003/09/17 07:17

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!