カレッヂ |
質問者 キク
投稿日 10/11(金) 21:26:44
http://www.rescue.ne.jp/CGI-BBS/soho/cargo/20020323203731.shtml の質問と似ています。 最終画面から「e-mailアドレス」以外のパラメーターを 決済リンク先に渡せなかったので 「最終のご確認」の「送信」ボタンへリンクを貼りました。 <FORM NAME="UserForm" ACTION="https://リンク先" METHOD="post" target="_blank"> (OS:windows2000 ブラウザー:MSIE6)からでは オーダー処理もでき、リンク先へも値を渡せるのですが、 (OS:Windows98/MacPowerPC ブラウザー:MSIE5)からですと クレジット決済へ値は渡せますが、 オーダー処理の<onClick="Ok()">が無視されてしまいます。 本来ならば、 オーダー処理完了→クレジット決済へリンク としたかったのですが、解りませんでした。 最終画面からでは 値を取り出すことはできないのでしょうか? ヒントだけでも頂けたら助かります。 お手数お掛けしますが、宜しくお願い致します。
プロバイダ参照:http://www.wbs.ne.jp/biz/manual/domain.htm |
回答者 呑兵衛@大阪
[削除]
投稿日 10/16(水) 16:02:02
> <FORM NAME="UserForm" ACTION="https://リンク先" METHOD="post" target="_blank"> NAME の属性値"UserForm"は header の JavaScript と同じですか? (function Ok() { document.UserForm.submit(); } になってますか?) ^^^^^^^^ あるいは <form> なんやかんや <form> なんやかんや onClick="Ok()" </form> なんやかんや </form> のような処理をされていませんか?</form> 以前に別の処理をする<form></form>を置く事は出来ません。 最終段階ではリスト @in に入っている値を展開しています。 @in はcart.cgi 初段のデコード部分で if ($key !~ /^_/) { push(@in,"$key\t$val"); } # なお、ラベル名の頭が_の場合はコマンド if ($key eq ".") { $l = $val; $orders .= "," if (defined($orders)); $orders .= $l; push(@in,".$t$val"); } のようになっています。研究してください。 |
質問者 キク
[削除]
投稿日 10/26(土) 22:55:16
呑兵衛@大阪様 回答ありがとうございました。 やはり最終画面から値を取り出したいと思います。 教えて頂いた箇所を見直したのですが、 どうしても、任意の値を取り出す方法が解りません。 @in(もしくは@order)から ・商品名(一つのみでも可。ただし $1$*xxxx円 を除く) ・合計金額の数字部分のみ の2つだけを指定する方法はあるのでしょうか? プログラムを大幅に見直さなければ 不可能なのでしょうか? 度々申し訳ありませんが、 何卒宜しくお願い致します。 |
回答者 呑兵衛@大阪
[削除]
投稿日 10/26(土) 23:35:13
sub cfm をよく見て研究して下さい。 カゴに入っている商品データは ($code,$name,$fee) = split(/\t/,$_,3); によって分解され、HTML出力されるデータに配列され、再び、顧客情報と共に@hidden に集められた後 foreach (@hidden) { ($key,$val) = split(/\t/,$_,2); print "<input type=hidden name=\"$key\" value=\"$val\">\n"; } によってデコード部分で リスト@in か、連想配列 %in ($in{$key} = $val;) に集められます。 要は目的のラベルに何らかのフラグを立てて、識別できるようにすればいいのです。 これ以上の解説は、ちょっぴり解説 Rescue.cgi をご覧ください。 なおシェアウェアーコードを取得されていない場合と、アダルトサイトの場合 これ以上の回答は私はできません。 |
質問者 キク
[削除]
投稿日 10/30(水) 23:32:41
呑兵衛@大阪 様 「ちょっぴり解説 Rescue.cgi」の カスタマイズ事例を参考にさせて頂きながら 挑戦しているところです。 本当にありがとうございました。 |
このページは終了したので返信(回答)は書きこめません
Web裏技 |