Perl
- 半角カナ入力について
perlを使って入力項目を作っている人間です。 ある事に苦戦しています。 半角カナを入力すると文字化けが出てしまうので半角カナを入力しないように注意を促しているのですが、どうしても半角カナを入れてしまう人が入るので、半角カナを入力した時点で、注意事項をCGIで処理したいと思います。 しかし、CGIで処理する場合はどのようにすればいいのか解りません。 何かヒントなどを教えて頂けないでしょうか ? 又参考になるURLなどがありましたら教えて下さい。 お願します。
- 2,3度連続して入る同データを1回分だけ有効
PerlでCGI(フォームに入力したデータをCSVに貯めています)を作っているのですが、送信フォームを2,3回クリックする人がいるので同じデータが入ってきてしまうので、制限をかけたいのです。 一定時間内に同じデータが入ってきたら1回しか有効化しないという制限を入れれば良いのでしょうが、記述の仕方がわかりません。 どなたかお知恵をお貸しください。
- 処理終了後、他のプログラムへPOST方式でsubmitして、移動する方法
処理終了後、他のプログラムへPOST方式でsubmitする方法はないでしょうか。 GET方式を使えば出来ますが、POST方式で値を渡したいのですが、可能でしょうか。 という質問があり、とても参考になりましたが、その後の処理がわかりません。 ユーザーが登録後、自分のサーバで処理終了し、 他のサーバーにある、パスワードとIDをPost方式で受け取るcgiへ引継ぎ、ログイン後の画面へ移行したいです。 そのプログラムは、GETでは、受け取れないようです。 LWPモジュールが使えないため、socketで、サーバ間の通信を考えていますが、どのようにして、ユーザーの接続を他のサーバ側に引き継いでよいのかわかりません。 お力をお貸しください。 よろしくお願いいたします。
- POSTで配列のデータを渡す方法は?
初歩的な質問で申し訳ございません。配列でデータを入力し、POSTで配列のデータを渡す方法を知らなくて困っています。いろいろ調べましたが、見つかりません。 だれか、教えてください。 ..... &ReadParse(*in); for ($i = 0 ; $i <=10 ; $i++){ $data[$i] = $in{'data[$i]'}; } sub main { 。。。以下修正部分・。。。 print "<form method=\"POST\" action=\"$userpro\">"; print " <input type=\"hidden\" name=\"mode\" value=\"miss1\"><p>"; print " <input type=\"text\" name=\"data[1]\" size=\"20\" value=\"$data[1] \">"; print " <input type=\"text\" name=\"data[2]\" size=\"20\" value=\"$data[2] \">"; print " <input type=\"text\" name=\"data[3]\" size=\"20\" value=\"$data[3] \">"; ...... print " <p><input type=\"submit\" value=\"修正\" name=\"B1\"></p>\n" ; print "</form>\n" ; ・・・・ } #Submit後実行される関数 sub miss1 { print "Content-type: text/html\n\n"; for ($i = 0 ; $i <=10 ; $i++){ print "$i-$data[$i]<br>"; } exit; } 結果は 0-空(空白) 1-空(空白) 2-空(空白) 。。。 にです。 何が間違っているでしょうか。よろしくお願いします。
- 指定した文字列を複数含むという条件
たとえば、「test」という文字列を2個含む場合に真を返すような条件を作れません。 「2つ以上」ではなくて、「2つ」でもけっこうです。 「test」という文字列が1つであれば偽、2つならば真にしたいでのす。
- ベストアンサー
- saru_monmon
- Perl
- 回答数2
- docファイルのダウンロード
ホームページ上からサーバーにあるdocファイル(ワードファイル)をダウンロードさせたいのですが、左クリックをするとダイアログが出ないで、IE内でワードが開いてしまいます。 ワードを開かせずにdocファイルを保存させる方法はありますでしょうか? 右クリックで「対象をファイルに保存」は使用しないでやりたいのですが・・・ perlでdocファイルのバイナリを書き出す、みたいな方法なのでしょうか?
- 論理演算子について
論理演算に使う「or」なんですが、制御構文ifと組み合わせて以下のような使い方をしてみました。 $data01='aaa'; $data02='あああ'; $data03='test'; if ($data01 =~ m/aaa/ or $data02 =~ m/あああ/ or &data03 =~ m/test/){ 特定の処理; } このorによる論理演算ははどこまでできるのでしょうか? 上のスクリプトは問題なく動いていますが、ちょっと不安です。 専門書を見ても、orによる論理演算は<条件1 or 条件2>としか書いてなく <条件1 or 条件2 or 条件3 or ・・・>と書いても大丈夫なのでしょうか? いくつもの比較はorを使わないほうがよろしいとは思うんですが、このorが便利なのでこれで済むなら使いたいと思います。
- 締切済み
- saru_monmon
- Perl
- 回答数2
- URLエンコードされたデータを戻すには
POSTでCGIに渡す文字列はURLエンコードされていて、元に戻すにはデコードが必要ですが、もともとURLエンコードされたデータをデコードしたデータにできないでしょうか。 普通は、 読める文字→URLエンコード→CGIによる処理→URLデコード→読める文字 ですが、 もとのデータがURLエンコードされた状態だと、 URLエンコードされた文字→URLエンコード→CGIによるURLデコード→URLエンコードされた文字 となってしまいます。 たとえば、「%82%a0%82%a0%82%a0」というデータ形式から、「あああ」というデータを得たいのです。
- 締切済み
- saru_monmon
- Perl
- 回答数1
- unixのperlで
UNIXのPerlでは引数は@ARGVに入ると思うのですが、 a.pl *.c "*.c" という引数を入れるとファイルが展開されそのフォルダの中の "12-1.c" とか "12-2.c" とかいう引数が、配列に1つずつ入ってきました。 引数の文字列を何の修正もなしに(できればスペースも)受け取る方法はないですか?
- 共通のURLで、PCからも携帯からも見られるようにしたい
教えてください! 共通のURL http://www.○○.com/ (index.cgi) にて、PCユーザーやimode,J-sky等携帯からアクセスを受けた際、各ブラウザ?に適したページに自動でとばしたいと思っています。 質問の一つは、そのようなソース(ソフト?)が、入手可能かどうかという点と、自分で作る場合、 $ENV{'HTTP_USER_AGENT'}; で得られる情報の一覧は、どこかで調べることが出来るのか? 頭何文字で判断すればよいのか?それとも機種毎に設定しなければ行けないのか? という点です。 ご指導お願いいたします。
- 必須項目のチェック
CGI内で必須項目のチェックをしたいと思っています。 ラジオボタン(name=電話)が(value=1)を選択された時、 テキストエリア(name=電話1、name=電話2、name=電話3) がすべて入力されていないとエラーが出るチェックをかけたいと思っています。 入力した後にでる確認画面で、nameを項目名として出しているのでnameを日本語につける必要がありました。 nameの指定を英字にしても良いのですが、チェックをかけた後、日本語に変換をかける方法がわからないのです。 お力をお貸しください!よろしくお願いします。
- ベストアンサー
- milk_tea22
- Perl
- 回答数5
- 置換の順番について
置換する目的は 半角カナを全角カナにする事なのですが、そこで問題が生まれました。 sjisに変換した後に、置換をすると文字化けになり、反対にする事によって正常に置換する様になっています。良くそこの仕組みが分からないのですがどうか教えて頂けないでしょうか?宜しくお願いします。 ###参照プログラム### ★#半角文字を全角文字に置換するケース &jcode::h2z_sjis(\$value); &jcode::convert(*value, 'sjis'); ★#文字化けを起こすケース &jcode::convert(\$value, 'sjis'); &jcode::convert(\$str, 'euc'); print "str : $str<br>\n";
- ローカルサーバーバでヒアドキュメント
perl5で、ローカルサーバーソフトHTTPDをしようしているんですが、 ヒアドキュメントがどうやってもうまく使用できません。 文法はきちんと書いているんですが、もしかしたら、ローカルサーバーでの設定、Perlのバージョンの問題かと疑いはじめました。 なにか問題点がありますでしょうか
- 締切済み
- saru_monmon
- Perl
- 回答数3
- Perl5.5の入手方法について
この度CGI作成のため「Perl5.5」以上を捜しています。 どなたかご存じではないでしょうか。レンタルサーバへの 対応のため捜しています。宜しくお願い致します。
- Apacheのログからアクセス履歴をWeb表示するのにCGIは必要?
Apacheのログ(/usr/local/apache/logs/access_log)を利用して アクセスカウンタのようなものを作りたいと考えています。 月毎の使用数を調べ、それを棒グラフ(PNGフォーマット)で表示させる、といったものです。 これをつくるにあたりCGIは必要なのでしょうか。 もし必要であれば、どのように使うのでしょうか。 ちなみに、開発環境は FreeBSD ver3.4, Apache ver1.3, perl ver5.005_03で、 ブラウザ(Netscape Navigator 4.7)で 本に掲載されていたCGIプログラムを動かしてみたところ 実行できませんでした。 #HTML文書が表示されるだけで #そのHTML文書が意図する表示はされなかった。 ○このApacheはCGIが使えているのか ○アクセスカウンタにCGIは必要かどうか を教えていただけたらと思います。 よろしくお願いします。
- Telnetモジュールで繋がりません。
RHL7のperlのプログラムでモジュールを使い、ルータ(BA512R)へtelnet接続し、WAN側のIPアドレスを取得しようと思っています。 プログラムの問題のある行は、 $t->login('user','password'); のようです。 これでも他のTELNETがあるlinuxサーバへは問題なく繋がるのですが、BA512Rへは繋がりません。 通常、telnetを起動し、openを実行すると、user名、password、の順で聞いてきますが、BA512Rは、passwordをいきなり聞かれ、それでログインできます。 この辺が問題なのでしょうか。 しかし、$t->login('','password')としても、BA512Rには繋がりませんでした。 済みませんが、お教えください。 (ちなみに、DDNSサイトを利用してサーバ公開の為のものです。)