g_p_ の回答履歴

全117件中81~100件表示
  • データベースへのデータの受け渡し

    今データベースとCGIを自分で作り掲示板のような物を作成しています。 その中で、データベースにデータを受け渡す部分を if($syoujyou ne "" and $geninn eq "" and $taisyo eq ""){ $INS = $dbh->prepare("INSERT INTO $DBtable (syurui,syoujyou,geninn,taisyo) VALUES (\'$syurui\',\'$syoujyou\',\'$geninn\',\'$taisyo\')"); $INS->execute or $err2 = "execute"; } 上記のように記述しています。 このままでCGIを実行し、書き込みを行うとデータがデータベースに受け渡されません。 試しにif文を除き強制的に実行してもダメでした。 その代わり、if文を除くと何も書き込まない状態(受け渡しの変数内<(\'$syurui\',\'$syoujyou\',\'$geninn\',\'$taisyo\')>がNULL)だと書き込まれます。 つまりデータベースには何もない状態でテーブルの中にカラムが作成されます。 データベースは create table データベース名 ( id INT(4) AUTO_INCREMENT NOT NULL, syurui TEXT NOT NULL , syoujyou TEXT NOT NULL, geninn TEXT NOT NULL, taisyo TEXT NOT NULL, PRIMARY KEY(id) ) AUTO_INCREMENT = 1; のようにして作っています。 更に、上記の中のINSERT文をprintし、表示された物 INSERT INTO データベースの名前 (syurui,syoujyou,geninn,taisyo) VALUES ('ハード','あ','い','う') を直接プロンプトから実行した場合データは正しく挿入されます。 更にデータを消す文として if(($delpass == '****') and ($delfilid ne "")){ $DELETE = $dbh->prepare("DELETE FROM $DBtable WHERE id=\'$delfilid\'"); $DELETE->execute; $DELETE->finish; } と記述しているのですが、これは正常に動作します。 何がいけないのかが判らないので詳しい方教えてください。

  • Net::Telnetモジュールをインストールしたいのですが、どうやればよいのかわかりません。

    perlにNet::Telnetモジュールをインストールしたいのです。 私自身調査したのですが、linuxでのやりかたしか載っていなかったので、どうしたらよいのかわかりません。 というかそもそもwindowsで組み込むことができるのでしょうか。 windows上でインストールしたいのですがどうすればよいのでしょうか? perl初心者なのでよくわからない質問をしているかもしれませんが、何卒、初心者の私にでもわかるように説明していただけると非常に嬉しいです。 よろしくお願い致します。

  • Net::Telnetモジュールをインストールしたいのですが、どうやればよいのかわかりません。

    perlにNet::Telnetモジュールをインストールしたいのです。 私自身調査したのですが、linuxでのやりかたしか載っていなかったので、どうしたらよいのかわかりません。 というかそもそもwindowsで組み込むことができるのでしょうか。 windows上でインストールしたいのですがどうすればよいのでしょうか? perl初心者なのでよくわからない質問をしているかもしれませんが、何卒、初心者の私にでもわかるように説明していただけると非常に嬉しいです。 よろしくお願い致します。

  • IIS上でフリーCGIが動かない

    Windos2003Server IIS6.0環境で ActivePerl5.8.8 を導入しましたが、 KENTWEBなどで配布されているフリーCGIをブラウザから開くと、 画面が真っ白のまま何も表示されていません。(エラー表示もありません) 以下のテスト用CGIを作成し、フリーCGIと同フォルダに置いてアクセスすると正常動作します。 --------------------------- #!/user/local/bin/perl print "Content-type: text/html\n\n"; print "こんにちわ\n" --------------------------- この現象の原因としてどのようなことが考えられるでしょうか。 ご存知の方がおられましたらご教示ください。

    • 締切済み
    • wanna
    • Perl
    • 回答数2
  • 検索結果画面の値の引継ぎとreset

    現在、検索用のテキストボックスとセレクトボックすをHTML内にformで作成し、検索ボタンが押された場合にplを実行し、テキストボックスにヒットする内容又は、セレクトボックスにヒットする内容を検索結果として表示するようにしています。 perlのコード内でパラメータを渡し、再度結果画面を作る際に、検索の値自体は表示することが出来たのですが、resetボタンをつけたものの、resetがききません。perlのソース内で値を設定しているため、初期値が、最初の画面の検索値になってしまうためだと思いますが、resetを有効にするためにはどのようなつくりにしたらいいでしょうか?

    • ベストアンサー
    • bambi0817
    • Perl
    • 回答数2
  • perlの初心者本買ってきたものの・・・

    つい最近perlに手を付けて、非常に手こずっています。何に手こずっているかも申しますと、ほんの通りにプログラムを書いてもうまく動作しないことです。本は「Perl/CGI超入門」(藤森○絵)筆です。入力フォームのボタンをクリックしてもWEBページ(localhost)が「開くことができません」とでます。HTML、○.plどちらも指定したフォルダに入っています。HTMLのページは入力フォームですがちゃんとWEBに出ます。でも、フォームの中の文字列を取得してCGIのページになると表示されません。perlはCygwin,Activperlとも試してみました。CGIのページに跳んだときのURLは本に書いているURLと同じくでます。 著者へ質問できるようなアドレスも無く、技術評論者に質問できるようなページもないので、なすすべ無しといったところです。私のPCの設定に問題があるのかもと思い、インターネットセキュリティーソフトをおアンインストールしてみましたが同じでした。内心、これを超初心者として出版しているのであれば、本当に初心者のものは皆頭にきてしょうがないだろうなというのが本音です。perl自体の言語で引っかかっているのではなく、サンプルプログラムが動作しない(コピペで)。どなたか同じ本を買った方で、原因が分かるか方おりませんでしょうか。

    • ベストアンサー
    • ityounomi
    • Perl
    • 回答数7
  • 検索結果画面の値の引継ぎとreset

    現在、検索用のテキストボックスとセレクトボックすをHTML内にformで作成し、検索ボタンが押された場合にplを実行し、テキストボックスにヒットする内容又は、セレクトボックスにヒットする内容を検索結果として表示するようにしています。 perlのコード内でパラメータを渡し、再度結果画面を作る際に、検索の値自体は表示することが出来たのですが、resetボタンをつけたものの、resetがききません。perlのソース内で値を設定しているため、初期値が、最初の画面の検索値になってしまうためだと思いますが、resetを有効にするためにはどのようなつくりにしたらいいでしょうか?

    • ベストアンサー
    • bambi0817
    • Perl
    • 回答数2
  • 巨大ファイルの行をを逆順に並べ替えたい>perl

    下記、perlスクリプトで通常は逆順に並べ替えることができると思うのですが、ファイルの行数が1000万行程度あり、実行すると、PCのメモリを食いつぶしてしまいまともに動作しません。 どのようにすればよいでしょうか? もしくは、これに相当するようなフリーソフトはありますか? ご存知の方教えてください。 宜しくお願い致します。 #!/usr/local/bin/perl open(OUT, "1all.txt"); open (FH , ">out_all.txt"); print FH foreach( reverse <OUT> ); close(FH); close(OUT);

  • ログファイルの記録数

    # ログ更新 unshift(@new,"$num<>$addr\n"); open(OUT,">$logfile") || &error("Write Error: $logfile"); print OUT @new; close(OUT); 上記ログの書込みに、最大保存数を設定したいのですが、どのようにすればいいのでしょうか。 $max = 3; とした場合、3行超えたら古いファイルを消したいと考えています。よろしくお願いいたします。

  • ログファイルの記録数

    # ログ更新 unshift(@new,"$num<>$addr\n"); open(OUT,">$logfile") || &error("Write Error: $logfile"); print OUT @new; close(OUT); 上記ログの書込みに、最大保存数を設定したいのですが、どのようにすればいいのでしょうか。 $max = 3; とした場合、3行超えたら古いファイルを消したいと考えています。よろしくお願いいたします。

  • 標準入力からデータが読込めない

    現在perlにてcgiを作成しています。 以下のようなcgiを作成したのですが、POSTで受取ったデータが 標準入力より取得できません。 解決策、又は、調査方法等ご存知の方いらっしゃいましたら教えてください。 --------- a.cgi -------- #!/usr/bin/perl print "Content-type: text/html\n\n"; if( $ENV{'REQUEST_METHOD'} eq "POST" ){ read( STDIN, $buffer, $ENV{'CONTENT_LENGTH'} ); }else{ $buffer = $ENV{'QUERY_STRING' }; } print <<"HTML"; <HTML><HEAD><TITLE>テスト</TITLE> <META http-equiv=Content-Type content="text/html;"> </HEAD> <BODY> <FORM id=Form1 name=Form1 action=a.cgi method=post> HTML print <<"HTML"; <INPUT type=hidden value=aaa name=text1> <INPUT onclick="return confirm('送信します。よろしいですか?');" type=submit value=送信 name=Button1> </FORM> </BODY> </HTML> HTML exit; -------------------------------------------------- $ENV{'REQUEST_METHOD'} は POST を取得できていますし、 $ENV{'CONTENT_LENGTH'} も文字数は取得できています。 どうか宜しくお願い致します。

  • ファイルの上書き

    初心者です。 ファイル(count.dat)にデータのカウント数を上書きしていきたいのですが、実行しますとファイルが壊れてしまいどこで失敗しているのか分かりません。。 以下のように記述したのですが、アドバイス頂けないでしょうか。 ちなみにcount.datの中身は以下の通りです。 0,0 1,0 2,0 3,0 4,0 5,0 6,0 $max_numの値が別に算出されており、$max_numが1だったら上記の1,0を1,1に、$max_numが2だったら上記の2,0を2,1に上書きしたいと思っています。$max_numでない部分(3,0や4,0や5,0)はそのまま変更なしで保存させたいです。 #ファイルの読み込み $num=0;#過去の人数 $qNo=0;#Qナンバー $l=0; open openDat,'<count.dat' or die "file not Exist!!"; while (<openDat>){ $a[l]=$_; $qNo=substr($a,0,1); if($max_num=$qNo){       $num[l]=substr($a[l],2); $num[l]+=1; $a[l]="$qNo".","."$num[l]"; print $a[l]; }else{ $num[l]=substr($a[l],2); } $l+=1; } close openDat; open openDat,'>count.dat' or die "file not Exist!!"; for( $j=0; $j<=6; $j++) { print openDat $l,"\n"; } close openDat;

    • ベストアンサー
    • kujitan
    • Perl
    • 回答数3
  • 標準入力からデータが読込めない

    現在perlにてcgiを作成しています。 以下のようなcgiを作成したのですが、POSTで受取ったデータが 標準入力より取得できません。 解決策、又は、調査方法等ご存知の方いらっしゃいましたら教えてください。 --------- a.cgi -------- #!/usr/bin/perl print "Content-type: text/html\n\n"; if( $ENV{'REQUEST_METHOD'} eq "POST" ){ read( STDIN, $buffer, $ENV{'CONTENT_LENGTH'} ); }else{ $buffer = $ENV{'QUERY_STRING' }; } print <<"HTML"; <HTML><HEAD><TITLE>テスト</TITLE> <META http-equiv=Content-Type content="text/html;"> </HEAD> <BODY> <FORM id=Form1 name=Form1 action=a.cgi method=post> HTML print <<"HTML"; <INPUT type=hidden value=aaa name=text1> <INPUT onclick="return confirm('送信します。よろしいですか?');" type=submit value=送信 name=Button1> </FORM> </BODY> </HTML> HTML exit; -------------------------------------------------- $ENV{'REQUEST_METHOD'} は POST を取得できていますし、 $ENV{'CONTENT_LENGTH'} も文字数は取得できています。 どうか宜しくお願い致します。

  • 値の比較がしたいのです

    Perl超初心者です。 ある7つの変数$max[0]~$max[6]がありまして、それをすべて比較して同じ値がないか、あればどれとどれが同じなのか、を知りたいのですが今の自分の知識では一つひとつの組み合わせすべて書かなければなりません・・ 3つあったら、また追記しなければ、、などとしていたらすごい長文になってしまいました。 for文を使うのかもしれないと思いましたが、わかりやすいサイトに行きあたりません。何かヒントを頂けましたら幸いです。

    • 締切済み
    • Rhide
    • Perl
    • 回答数6
  • Perlで分数を保持したい

    初心者です。 Perlで分数を保持したいのです。以下のように記述しましたが、保持できていないようです。。 とりあえず整数で持ってきて、Perl内で分数に置き換えるということを考えていますが面倒そうです。分数で直に持ってこられる方法がありましたら教えてください。 Perl内記述 #Q1シングル for ($i=0;$i<=97;$i++){ $val_name ="Q1_"."$i"."_chk"; $name = 'Q1'; if ($data{$name} eq "$i"){ $$val_name = ' checked'; }else{ $$val_name = ''; } } HTML内記述 <TR height="25"> <TD align="center"><INPUT type="radio" name="Q1" value="1/3" _Q1_1/3_CHK_></TD> <TD>A</TD> </TR> ちなみに上記記述において、1/3の部分が整数であればこのプログラムは正常に動きます。なので1/3の持ってきかただけなのですが、 お願い申し上げます。

    • ベストアンサー
    • kujitan
    • Perl
    • 回答数4
  • Perlで分数を保持したい

    初心者です。 Perlで分数を保持したいのです。以下のように記述しましたが、保持できていないようです。。 とりあえず整数で持ってきて、Perl内で分数に置き換えるということを考えていますが面倒そうです。分数で直に持ってこられる方法がありましたら教えてください。 Perl内記述 #Q1シングル for ($i=0;$i<=97;$i++){ $val_name ="Q1_"."$i"."_chk"; $name = 'Q1'; if ($data{$name} eq "$i"){ $$val_name = ' checked'; }else{ $$val_name = ''; } } HTML内記述 <TR height="25"> <TD align="center"><INPUT type="radio" name="Q1" value="1/3" _Q1_1/3_CHK_></TD> <TD>A</TD> </TR> ちなみに上記記述において、1/3の部分が整数であればこのプログラムは正常に動きます。なので1/3の持ってきかただけなのですが、 お願い申し上げます。

    • ベストアンサー
    • kujitan
    • Perl
    • 回答数4
  • ファイルの上書き

    初心者です。 ファイル(count.dat)にデータのカウント数を上書きしていきたいのですが、実行しますとファイルが壊れてしまいどこで失敗しているのか分かりません。。 以下のように記述したのですが、アドバイス頂けないでしょうか。 ちなみにcount.datの中身は以下の通りです。 0,0 1,0 2,0 3,0 4,0 5,0 6,0 $max_numの値が別に算出されており、$max_numが1だったら上記の1,0を1,1に、$max_numが2だったら上記の2,0を2,1に上書きしたいと思っています。$max_numでない部分(3,0や4,0や5,0)はそのまま変更なしで保存させたいです。 #ファイルの読み込み $num=0;#過去の人数 $qNo=0;#Qナンバー $l=0; open openDat,'<count.dat' or die "file not Exist!!"; while (<openDat>){ $a[l]=$_; $qNo=substr($a,0,1); if($max_num=$qNo){       $num[l]=substr($a[l],2); $num[l]+=1; $a[l]="$qNo".","."$num[l]"; print $a[l]; }else{ $num[l]=substr($a[l],2); } $l+=1; } close openDat; open openDat,'>count.dat' or die "file not Exist!!"; for( $j=0; $j<=6; $j++) { print openDat $l,"\n"; } close openDat;

    • ベストアンサー
    • kujitan
    • Perl
    • 回答数3
  • Perlで分数を保持したい

    初心者です。 Perlで分数を保持したいのです。以下のように記述しましたが、保持できていないようです。。 とりあえず整数で持ってきて、Perl内で分数に置き換えるということを考えていますが面倒そうです。分数で直に持ってこられる方法がありましたら教えてください。 Perl内記述 #Q1シングル for ($i=0;$i<=97;$i++){ $val_name ="Q1_"."$i"."_chk"; $name = 'Q1'; if ($data{$name} eq "$i"){ $$val_name = ' checked'; }else{ $$val_name = ''; } } HTML内記述 <TR height="25"> <TD align="center"><INPUT type="radio" name="Q1" value="1/3" _Q1_1/3_CHK_></TD> <TD>A</TD> </TR> ちなみに上記記述において、1/3の部分が整数であればこのプログラムは正常に動きます。なので1/3の持ってきかただけなのですが、 お願い申し上げます。

    • ベストアンサー
    • kujitan
    • Perl
    • 回答数4
  • 引数に配列かスカラーかどちらか入力された時の関数内の処理

    以下のように、引数に配列かスカラーかどちらか入力される場合に 関数内で異なる処理をさせたいのですが、どうすればよいのでしょうか? sub test{ my $arv = shift; # arvが配列ならば、その要素を表示  # arvがスカラーなら、そのまま表示 }

    • ベストアンサー
    • bazax
    • Perl
    • 回答数4
  • 引数に配列かスカラーかどちらか入力された時の関数内の処理

    以下のように、引数に配列かスカラーかどちらか入力される場合に 関数内で異なる処理をさせたいのですが、どうすればよいのでしょうか? sub test{ my $arv = shift; # arvが配列ならば、その要素を表示  # arvがスカラーなら、そのまま表示 }

    • ベストアンサー
    • bazax
    • Perl
    • 回答数4