CGIなどのの質問を受付ます。
現在SPAM対策の為、一部ホストアドレスを規制中。
▼スレッド
│
└◇1553:Re[5]:編集実行時の分類について [moon★] 04/02 13:20
└◇1554:Re[6]:編集実行時の分類について [とんとん] 04/13 <
> ご指摘いただいたnik.cgiの記述部分は、一切変更していません。スレッド一覧
何ででしょうねぇ?
実際に動作しているところは見れますか?
> ちなみに、こんなことは可能でしょうか?。
>
> 1)分類選択のリストの先頭を、「選択してください」ではなく、特定の分類にしてしまう。
> 2)以下の記述2か所に、テーマのID(上の例では[9])を直接書いてしまう。
> 3)$tmp .= qq|<option value="">選択してください</option>\n|;
> ↓
> $tmp .= qq|<option value="theme_data[9] ">theme_data[9] </option>\n|;
>
> 4)$tmp .= qq|<option value="">選択してください</option>\n|;
> ↓
> $tmp .= qq|<option value="theme_data[9] ">theme_data[9] </option>\n|;
>
分類を複数つけられるように設定している場合、同じように出力しているので、単純に編集しただけだとすべてに適用されてしまいます。
nik.cgi 4583行目辺り
for (1 .. $theme_siyousu) {
$theme_name = 'theme' .$_;
$theme_name_n = 'new_theme' .$_;
$tmp .= qq|分類<select name="$theme_name">\n|;
$tmp .= qq|<option value="">選択してください</option>\n|;
foreach $theme_log (@theme_log) {
を
for (1 .. $theme_siyousu) {
$theme_name = 'theme' .$_;
$theme_name_n = 'new_theme' .$_;
$tmp .= qq|分類<select name="$theme_name">\n|;
if($_ == 1) {
$tmp .= qq|<option value="9">日々のできごと</option>\n|;
} else {
$tmp .= qq|<option value="">選択してください</option>\n|;
}
foreach $theme_log (@theme_log) {
とすればできるような。
すでに書き込まれているものを編集する場合、すでに書き込まれているデータを読み込んでから出力しています。
ここで種別が戻ってしまうとなると、種別を読み取ってないとかそんな感じでしか予想ができません。
しかもうちのサイトでは正常に動いているということはそもそもの不具合ではないと。
原因究明は難しいですねぇ。
いろいろありがとうございます。スレッド一覧
まっさらなファイルをアップロードし直して、1つづつやり直しています。
とりあえず、まっさらなファイルを上げ直したら、問題は解消したので、コツコツと1つづつ確認しながら、デザインの変更をやり直してます。
>実際に動作しているところは見れますか?
すみません。作業を繰り返している最中に、うっかり上書きでアップロードしてしまって、問題が発生したcgiファイルを消失してしまいました。
####################
$tmp .= qq|分類<select name="$theme_name">\n|;
if($_ == 1) {
$tmp .= qq|<option value="9">日々のできごと</option>\n|;
} else {
$tmp .= qq|<option value="">選択してください</option>\n|;
}
foreach $theme_log (@theme_log) {
とすればできるような。
####################
一応試してみたのですが、CGIのエラーになってしまいました。
以下のようにしたら動作はしたのですが、どの分類に選びかえても、編集モードに入ると「日々のできごと」が選ばれている、という状態になってしまいました。
####################
$tmp .= qq|分類<select name="$theme_name">\n|;
if($_ == 1) {
$tmp .= qq|<option value="9">日々のできごと</option>\n|;
$tmp .= qq|<option value="">選択してください</option>\n|;
}
foreach $theme_log (@theme_log) {
####################