68user's page 掲示板

Prev< No. 1897〜1902> Next  [最新発言に戻る] [過去ログ一覧]
No. 1897 # 68user 2001/04/17 (火) 22:15:45
>>1896 りんたろお。
> 色々な環境を意識してhtmlファイルを書くべきなのだと
> 思うのです(私見?)。
このような考えの人が多ければ、UNIX 使いのような
マイノリティはもっと幸せになれるのですが、なかなか
そうもいかないようで…。

> 1 エンコーディング指定
x-euc-jp というのは、まだ EUC-JP というエンコーディング名が
IANA に登録されていなかった頃の暫定エンコーディング名ですので、
現在は EUC-JP とするのが適当です。

ただし、Netscape Navigator 3.x などの古いブラウザでは EUC-JP を
認識できないという問題がありますが、「新しめのブラウザを使え」と
言えるような立場なら EUC-JP にする方がよろしいです。

なお、META でなく、CGI プログラムが出力するヘッダで
    Content-type: text/html; charset=EUC-JP
とした方がよいです。META は、ヘッダにエンコーディングを
明示できない場合の代替手段ですので。

ただし、ブラウザは間抜けなので、エンコーディングを明示しても
自動認識に失敗することはあります。

> 2 フォームのエンコーディング
基本的に、フォームのあるページのエンコーディングで
フォームのデータが送られてきます。少なくとも Netscape
Navigator と Internet Explorer はEUC-JP なページの
フォームで入力すると、入力内容を EUC-JP で送ります。

ただし、規格として決まっているわけではありませんので、
そうでないブラウザもあります (Lynx がそうかな)。

なので、入力データは jcode.pl などで EUC-JP や Shift_JIS に
変換するのがよいでしょう。1行追加するだけなので、たいした
手間ではないです。

> 3 半角入力
これは、半角カナということですか? なら 4 へ。

> 4 機種依存文字
    http://X68000.startshop.co.jp/~68user/webcgi/char-code-2.html
が参考になるかと思います。この掲示板では機種依存文字を自動変換
していますが、「機種依存文字があればエラー」とするのは簡単です。
    http://X68000.startshop.co.jp/~68user/cgi-bin/cvsweb.cgi/public_html/cgi-bin/wwwboard.cgi
の、sub conv_wrong_char あたりをどうぞ。

No. 1898 # ふくし [E-mail] 2001/04/19 (木) 05:56:45
ずっと以前から悩んでいたことなのですが、どこで聞いていいかわからず、
ここで書きます。よろしくお願いします。

会社の FreeBSD で Perl を使っていますが、nfs mount でいろんな
マシンで同じスクリプトを使えるようになっていますが、
あるスクリプトが急に text file busy と言われます。

語感からするとエディット中に実行したとか、
複数の人が一つのスクリプトを実行しているとか
いう感じですが、そうなっていても実行できるスクリプトは
実行できますし、どう考えてもヒマなファイルが同様の原因で
怒られます。

で、こうなってしまったら、件のスクリプトのディレクトリに行き
% cp busyscript foo
% rm busyscript
% mv foo busyscript
% chmod 755 busyscript
これで百発百中修復します。

なぜなんでしょう。どなたかご教示をお願いします。

No. 1899 # kate [E-mail] 2001/04/19 (木) 10:54:26
つい最近、perlを勉強しはじめた者です。本に掲載されているごく
簡単な例を実際サーバにUPして試しているのですが、
エラーメッセージが出てしまい、困り果てています。
よろしければ、アドバイスをお願い致します。

#!/usr/local/bin/perl5
print "what is your name?";
$name = <STDIN>;
chomp($name) ;
If ($name eq "kate") {
    print "Hello,kate! How good of you to be here!\n";
} else {
    print "Hello, $name\n";
}

以上です。
エラーメッセージは
syntax error at test.cgi line 7, near "}"
Execution of test.cgi aborted due to compilati
on errors.
です。

No. 1900 # りんたろお。 2001/04/19 (木) 12:07:11
>>1899 kate
(あれ、使い方がわからない…。(>_<))
kateさんのPerlの質問ですが、5行目の「If」を「if」にすると
できますよ。あとついでなのですが、
            "what is your name?\n";
とすると良いですね!(^^ゞ

No. 1901 # りんたろお。 2001/04/19 (木) 12:09:00
>>1897 68user
ありがとうございます。これから試してみますので、結果が出たらまた
ご報告いたします。→みなさま。

No. 1902 # kate 2001/04/19 (木) 18:36:27
1900
りんたろお。さんありがとうございました。
ケアレスミスというか、本当にしょうもないミスだったの
ですね・・(^-^;
アドバイスありがとうございました!また、ヨロシクお願いします。

Prev< No. 1897〜1902> Next  [最新発言に戻る] [過去ログ一覧]