記事No | : 9142 |
投稿日 | : 2011/09/08(Thu) 00:02:06 |
タイトル | : Cosmo navigatorで新規登録エラー |
ID情報 | : stk2k |
投稿者 | : stk2k |
URL | : http://sazysoft.com |
COSMO NAVIGATOR Ver.5.0でスクリプトを設置したのですが、下記のエラーメッセージが出て新規登録が出来ません。
「不明な処理です」
(COSMO NAVIGATOR説明ページのサンプルでも上記エラーとなります)
新規登録画面では「mode=form」となるようですが、formがそのままregist.cgiに渡されてそこで23〜25行目のチェックに漏れているようなのですが、修正もしくは旧バージョンを入手することは可能でしょうか?
記事No | : 9144 |
投稿日 | : 2011/09/08(Thu) 07:44:59 |
タイトル | : Re: Cosmo navigatorで新規登録エラー |
ID情報 | : kent |
投稿者 | : KENT |
> COSMO NAVIGATOR Ver.5.0でスクリプトを設置したのですが、下記のエラーメッセージが出て新規登録が出来ません。
>
> 「不明な処理です」
>
> (COSMO NAVIGATOR説明ページのサンプルでも上記エラーとなります)
>
> 新規登録画面では「mode=form」となるようですが、formがそのままregist.cgiに渡されてそこで23〜25行目のチェックに漏れているようなのですが、修正もしくは旧バージョンを入手することは可能でしょうか?
本当ですね。ご指摘をありがとうございます。
以下の部分を修正してください。
■navi.cgi 363行目
$tmpl =~ s/!mode!/$in{mode}/g;
↓
$tmpl =~ s/!mode!/regist/g;
記事No | : 9145 |
投稿日 | : 2011/09/08(Thu) 08:44:06 |
タイトル | : Re^2: Cosmo navigatorで新規登録エラー |
ID情報 | : Fuyuki |
投稿者 | : BAL |
URL | : http://f43.aaa.livedoor.jp/~sumure/ |
ユーザー登録の場合登録は完了しても実際にログにはデータが入っていません。
管理者限定登録では以下のエラーになり登録できません。
Undefined subroutine &main::new_form called at admin.cgi line 199, <DATA> line 855.
記事No | : 9146 |
投稿日 | : 2011/09/08(Thu) 10:21:01 |
タイトル | : Re^3: Cosmo navigatorで新規登録エラー |
ID情報 | : kent |
投稿者 | : KENT |
> ユーザー登録の場合登録は完了しても実際にログにはデータが入っていません。
> 管理者限定登録では以下のエラーになり登録できません。
>
> Undefined subroutine &main::new_form called at admin.cgi line 199, <DATA> line 855.
ご指摘ありがとうございます。
管理モードの登録不具合は確認できましたなおで、修正しました。
新規登録のほうは、私のテスト環境では正常のようです。
記事No | : 9149 |
投稿日 | : 2011/09/08(Thu) 16:57:41 |
タイトル | : Re^4: Cosmo navigatorで新規登録エラー |
ID情報 | : teketen |
投稿者 | : てけてん |
> 新規登録のほうは、私のテスト環境では正常のようです。
初めて新規登録する際、ログに何も登録されていない状態なので、
push(@cls1,$cls1);
push(@cls2,$cls2);
push(@reco,$reco);
の値は空ですよね。
その為、ソートをすると@dataが空になっています。
admin.cgiでも同じ処理をしていますが、regist.cgiと何が違うかと言うと、その処理の前に
($cls1[0],$cls2[0]) = split(/:/, $in{cate});
にて、$cls1[0]と$cls2[0]に値が代入されています。
regist.cgiでは、
my ($mcat,$scat) = split(/:/, $in{cate});
となっており、代入する変数が違います。
記事No | : 9150 |
投稿日 | : 2011/09/09(Fri) 08:21:43 |
タイトル | : Re^5: Cosmo navigatorで新規登録エラー |
ID情報 | : kent |
投稿者 | : KENT |
> > 新規登録のほうは、私のテスト環境では正常のようです。
>
> 初めて新規登録する際、ログに何も登録されていない状態なので、
> push(@cls1,$cls1);
> push(@cls2,$cls2);
> push(@reco,$reco);
> の値は空ですよね。
> その為、ソートをすると@dataが空になっています。
> admin.cgiでも同じ処理をしていますが、regist.cgiと何が違うかと言うと、その処理の前に
>
> ($cls1[0],$cls2[0]) = split(/:/, $in{cate});
>
> にて、$cls1[0]と$cls2[0]に値が代入されています。
> regist.cgiでは、
> my ($mcat,$scat) = split(/:/, $in{cate});
> となっており、代入する変数が違います。
なるほど。それが原因ですね。
Perl5.12の環境では、正常に登録できましたが、試しにPerl5.6で試してみると登録ができませんでした。
ご指摘をどうもありがとうございました。
(修正箇所)
regist.cgi 82行目
$data[0] = "$num<>$mcat<>$scat<>$in{sub}<>$in{url}<>$in{name}<>$in{email}<>$mypw<>$in{comment}<>$time<>0<>$host<>\n";
↓
$data[0] = "$num<>$mcat<>$scat<>$in{sub}<>$in{url}<>$in{name}<>$in{email}<>$mypw<>$in{comment}<>$time<>0<>$host<>\n";
$cls1[0] = $mcat; # 追加
$cls2[0] = $scat; # 追加
記事No | : 9147 |
投稿日 | : 2011/09/08(Thu) 12:21:28 |
タイトル | : Re^2: Cosmo navigatorで新規登録エラー |
ID情報 | : stk2k |
投稿者 | : stk2k |
URL | : http://sazysoft.com |
ご対応有難うございます。
新規登録でエラーは出なくなりましたが、実際にはログファイルにデータが追加されておらず、サイトを検索できない状態です。
regist.cgiの109行目で@dataの中身が消えているようなのですが・・・
ちなみにperlのバージョンは5.8.8です。
(同じパーミッションでファイル出力すると出力できているので、パーミッションの問題ではないようです)
お手数をおかけしますが、ご確認いただければ幸いです。