• ベストアンサー
  • 暇なときにでも

web上でのファン投票についてⅡ

前回の続きです。そこのUTLは,  http://allstar.sanyo.co.jp/vote.htmlです。

共感・応援の気持ちを伝えよう!

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.2
noname#25358
noname#25358

 まずURLは「http://allstar.sanyo.co.jp/vote/vote.html」ですよね?(^_^;  で、調べたら1つ分かりました。  FORMタグのACTIONオプションに指定ミスがあります。  ACTIONオプションは相対パスで記述しなければいけない(絶対パスでもOKなのかも知れませんが、俺は絶対パスで指定されているところを見たことがありません)ので、ACTIONオプションの内容を「../cgi-bin/cgi-com.pl」にしてみてください。  これでとりあえず動くと思います。もっとも、Perlプログラムそのものにもバグがあるようですが、それは外側からはソースが見れないので何とも言えないです。

共感・感謝の気持ちを伝えよう!

その他の回答 (1)

  • 回答No.1
  • yoda
  • ベストアンサー率36% (291/804)

http://allstar.sanyo.co.jp/(vote/)vote.html 上のアドレスのカッコの中の部分が足りないのでアクセスが出来ないのだと思います。 カッコ内の部分を付け足してアクセスして下さい。

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • web上でのファン投票についてⅢ

    すいませんシロートなもんで,“ACTIONオプションを・・・”ってなんですか? どうやるんですか?

  • web上でのファン投票について

    インターネットでファン投票をしようと思って,サイトを開いたらすだれのようになって, 上手く行きません。対処方法を知っている人は方法を教えてください。

  • 交差投票

    交差投票(クロスウ゛ォート)とは、どういう意味または、効果があるのでしょうか?

  • 投票サイト

    http://www.ff-13.net/html/contents/vote.html のような投票サイトを作りたいのですがよくわかりません。 HTMLだけじゃだめなものでしょうか?

    • ベストアンサー
    • HTML
  • HP(ブログ)で投票!!!

    よくHP(ブログ)内でランク投票というのをしていますよね? たとえば http://www2.azaq.net/free/vote/vote.cgi?bztomo このような感じです  自分もこのような投票を設置したいのですがどうすればいいですか こういうのは疎いものでよろしくお願いします

  • インターネット投票の税金

    インターネット投票でボートレースをしていますが、経費とは的中票にかけた購入金額でしょうが、ボートレースオフィシャルサイトに於ける自分の<年別収支>では画像のように示されます。税務署では、画像の収支により税金をかけるかの判断をするでしょうか。 よろしく、お願いします。

  • ファン投票

    ファン投票は終わって、公式ページに6月26日の中間発表が出ています。しかし、最終発表が7月3日とあります。これは、6月26日の各部門の1位+監督選抜ってことですか。谷ファンで、6月26日の発表で谷が2位なんですが、辞退しないかぎり決定って事ですよね。

  • ファン投票

    オールスターのファン投票が始まりましたが 1日5回までの投票は有効とあります。 これは約1ヶ月間毎日5回同じ選手に投票をすれば 1人で150票くらい好きな選手に投票を入れられるって事なのでしょうか?

  • 連続投票の制限

    投票cgiを設置したいのですがうまくいきません、集計を1日一回だったのを少し改造して即時集計にしました 一応動くのですが、連続投票できてしまいます。 連続投票を一定時間制限できるようにしたいのですがうまくいきません 60秒くらい間をおいてから投票できるようにできますか? ip制限もあるみたいなのですがこれも機能してないです・・・ 改善できるなら元のソースがかなり変わってもかまいません 連続投票制限だけでも機能できればと思っています。よろしくお願いします local $times = time(); sub vote{ if($FORM{id}){ my $fl=0; if(!$CK_ref){$fl=1;} else{ if(index($ENV{'HTTP_REFERER'},index.html>=0){$fl=1;} } if($fl){ $FORM{id}=~s/\n//g; my $vote = $FORM{vt2}?1:0; open(OUT,">>vote_temp.cgi"); #時間用のログファイルに書き込み print OUT "$FORM{id}<>$ENV{'REMOTE_ADDR'}<>$FORM{vt}<>$vote<>".$times."<>\n"; close(OUT); &reset_vote if $VT_RESET < $times; my(@log_lines,%pt,%pt2,%cnt,$name,$value,%CKIP); open(IN,"vote_temp.cgi"); my @log = <IN>; close(IN); if(@log){ my $cktime = $times - 60; #60秒制限 open(IN,"vote_ck_IP.cgi"); #投票した人のIPを記録したログ while(<IN>){ my @ck = split('<>'); next if $_[1] < $cktime; $CKIP{$_[0]} = $_[1]; } close(IN); foreach(@log){ chop; my @rank = split('<>'); #ID<>IP<>評価<>おすすめ<>時間\n next if $CKIP{"$rank[0]_$rank[1]"}; $pt{$rank[0].'_'.$rank[2]}++; $pt2{$rank[0]}++ if $rank[3]; $cnt{$rank[0]}++; $CKIP{"$rank[0]_$rank[1]"} = $rank[4]; } open(OUT,">vote_temp.cgi"); close(OUT); open(OUT,">vote_ck_IP.cgi"); while(($name, $value) = each(%CKIP)){ print OUT "$name<>$value<>\n"; } close(OUT); open(IN,"log.cgi"); my @data = <IN>; close(IN); foreach(@data){ #集計処理長かったので省略 } open(OUT,">vote_bf.cgi"); open(IN,"vote_log.cgi"); while(<IN>){ print OUT $_; } close(IN); close(OUT); open(OUT,">vote_log.cgi"); print OUT @log_lines; print OUT "\n1;\n"; close(OUT); } &make_vote_ck('set'); } } sub reset_vote{ my @log; foreach my $i(1..$LAST_ID){ next if !@{$VT[$i]}; $VT[$i][18] = $VT[$i][7]; $VT[$i][19] = $VT[$i][8]; $VT[$i][20] = $VT[$i][0]; foreach my $j(0..8){ $VT[$i][$j] = 0; } push(@log,'$VT['.$i.'] = ['.(join(',',@{$VT[$i]}))."];\n"); } open(OUT,">vote_log.cgi"); print OUT @log; print OUT "\n1;\n"; close(OUT); &make_vote_ck('reset'); } sub make_vote_ck{ if($_[0] eq 'set'){ my @t =localtime($times + 86400); $VT_TIME = timelocal(0,0,5,$t[3],$t[4],$t[5]); $VT_RANK = $VT_RUI = $VT_RECO = $VT_RCRUI = $VT_COUNT = $VT_CTRUI = $VRK_CK = 1; } if($_[0] eq 'reset'){ my @m =localtime($times); $m[4] += 1; if($m[4] > 12){ $m[4] = 1; $m[5] += 1; } $VT_RESET = timelocal(0,0,2,1,$m[4],$m[5]); $VT_RANK = $VT_RECO = $VRK_RS = $VRK_CK = 1; } if($_[0] eq 'restore'){ $VT_RANK = $VT_RUI = $VT_RCRUI = $VT_RECO = $VT_COUNT = $VT_CTRUI = $VRK_CK = 1; } open(OUT,">vote_ck.cgi"); print OUT "\$VT_TIME = '".$VT_TIME. "';\n"; print OUT "\$VT_RESET = '".$VT_RESET. "';\n"; print OUT "\$VT_RANK = '".$VT_RANK. "';\n"; print OUT "\$VT_RUI = '".$VT_RUI. "';\n"; print OUT "\$VT_RECO = '".$VT_RECO. "';\n"; print OUT "\$VT_RCRUI = '".$VT_RCRUI. "';\n"; print OUT "\$VT_COUNT = '".$VT_COUNT. "';\n"; print OUT "\$VT_CTRUI = '".$VT_CTRUI. "';\n"; print OUT "\$VRK_CK = '".$VRK_CK. "';\n"; print OUT "\$VRK_RS = '".$VRK_RS. "';\n"; print OUT "\$LAST_ID = '".$LAST_ID. "';\n"; print OUT "\n1;\n"; close(OUT); }

    • ベストアンサー
    • Perl
  • ストアドプロシージャからメール送信(gmail)

    オラクルバージョン:10.2.0.1.0 OS:Solaris10 オラクルのストアドプロシージャから、Gmailのsmtpサーバーを使用してメール送信を行いたいのですが、うまくいきません。 確認すべきことや試してみること、そもそもストアドからは送信できない等、情報はありませんでしょうか? http://otn.oracle.co.jp/forum/message.jspa?messageID=35042600&#35042600 を参考に以下の処理を書きましたが、 UTL_SMTP.command(smtp,'auth login'); でエラーになってしまいます。 DECLARE mlsvr varchar2(40) := 'smtp.gmail.com'; mlfr varchar2(40) := 'xxxx@gmail.com'; mlto varchar2(40); mlsub varchar2(80); mlmsg varchar2(2000); smtp utl_smtp.connection; BEGIN mlto := 'xxxx@gmail.com'; mlsub := 'タイトル'; mlmsg := 'メール本文'; --メール送信 smtp := utl_smtp.open_connection(mlsvr, 587); utl_smtp.ehlo(smtp, 'gmail.com'); utl_smtp.command(smtp, 'STARTTLS'); dbms_output.PUT_LINE('ここまではくる'); utl_smtp.command(smtp, 'auth login'); dbms_output.PUT_LINE('ここはこない'); utl_smtp.command(smtp, utl_encode.text_encode(mlfr, 'JA16SJISTILDE', 1)); utl_smtp.command(smtp, utl_encode.text_encode('xxx', 'JA16SJISTILDE', 1)); utl_smtp.command(smtp, 'MAIL FROM: <' || mlfr || '>'); utl_smtp.command(smtp, 'RCPT TO: <' || mlto || '>'); utl_smtp.open_data(smtp); utl_smtp.write_data(smtp, 'To:' || mlto || chr(13) || chr(10)); utl_smtp.write_data(smtp, 'From:' || mlfr || chr(13) || chr(10)); utl_smtp.write_data(smtp, 'Subject:=?iso-2022-jp?B?'); utl_smtp.write_raw_data(smtp, utl_encode.base64_encode( utl_raw.cast_to_raw(mlsub) )); utl_smtp.write_data(smtp, '?=' || chr(13) || chr(10)); utl_smtp.write_data(smtp, 'MIME-Version: 1.0' || chr(13) || chr(10)); utl_smtp.write_data(smtp, 'Content-Type: text/plain;' || chr(13) || chr(10)); utl_smtp.write_data(smtp, chr(9) || 'charset="iso-2022-jp"' || chr(13) || chr(10)); utl_smtp.write_data(smtp, 'Content-Transfer-Encoding: base64' || chr(13) || chr(10)); utl_smtp.write_data(smtp, chr(13) || chr(10)); utl_smtp.write_raw_data(smtp, utl_encode.base64_encode( utl_raw.cast_to_raw(mlmsg) )); utl_smtp.close_data(smtp); utl_smtp.quit(smtp); [実行結果] ここまではくる Error [row:1,col:1] ORA-29278: SMTPの一時エラー: 421 Service not available ORA-06512: "SYS.UTL_SMTP", 行21 ORA-06512: "SYS.UTL_SMTP", 行97 ORA-06512: "SYS.UTL_SMTP", 行159 ORA-06512: 行19