CGI-BBS > SO−HO > ショッピングバスケット > プロver6.04の改造で支払い方法別に料金を追加したい。


カレッヂ
カレッヂ


質問者 emirin  投稿日 6/3(月) 15:15:23
現在、プロ6.04を使用しております。

過去の質問「cargo6 お支払い方法設定方法」へのお答え(呑兵衛@大阪さん)を
参考にさせていただいて支払方法を選択することができました。
私の仕様では、支払方法は代引きとクレジットの2種類ですが、代引きを選択したときだけ
料金を加算する方法を教えていただけないでしょうか?
よろしくお願いいたします。

プロバイダ参照:http://web.arena.ne.jp/
サーバのOS:WINサーバ
パソコンのOS:Win95系
エディタ:
FTPソフト:
サーバ移転:していない
改造:している 改造前正常動作
CGI習熟度:middle

回答者 呑兵衛@大阪  [削除]  投稿日 6/10(月) 15:21:24
http://www.rescue.ne.jp/CGI-BBS/soho/cargo/20020116132048.shtml
の 3 の部分
sub cfm のここを変更
if ($val eq "collect") { $val = "代引き"; $tesuryo = "手数料の金額を入れる”"; }

引き続き sub cfm で

push(@hidden,".\t送料 ($area)");
push(@hidden,".\t$tsuka2$soryo2$tsuka3");
push(@hidden,".\t");

$ALL += $soryo;

#ここから

print qq!<tr>\n!;
print qq!<td bgcolor=$cell_color align=left>代引き手数料</td>\n!;
print qq!<td bgcolor=$cell_color align=right>$tsuka2$tesuryo$tsuka3</td>\n!;
print qq!</tr>\n!;

push(@hidden,".\t代引き手数料");
push(@hidden,".\t$tsuka2$tesuryo$tsuka3");
push(@hidden,".\t");

$ALL += $tesuryo;

# ここまで

($ALL,$ALL2) = &comma($ALL);

質問者 emirin  [削除]  投稿日 6/11(火) 10:54:02
呑兵衛@大阪 様、いつもわかりやすく教えていただいてありがとうございます。
感謝しております。
無事、最終確認画面に代引き手数料の行が追加されたのですが、金額が表示されません。
*円となってしまいます。

以下のように変更したのですが・・・

$key = "お支払方法";
        if ($val eq "collect") { $val = "代引き"; $tesuryo = "315"; }
        else { $val = "クレジット"; }

どのように変更したらよいですか?
よろしくおねがいいたします。
回答者 呑兵衛@大阪  [削除]  投稿日 6/12(水) 18:32:42
いやぁ〜すんません。

if ($in{'pay'} eq "collect") { $tesuryo = "手数料の金額を入れる"; }

の間違えです。
質問者 emirin  [削除]  投稿日 6/14(金) 10:57:47
呑兵衛@大阪 様、ありがとうございます。
教えていただいた通り変更したのですが、未だ{ $tesuryo = "315"; }が
反映されません。自分なりに原因を探ったのですがわかりません。
もう一度、教えていただけますか?よろしくお願いいたします。
回答者 呑兵衛@大阪  [削除]  投稿日 6/16(日) 13:00:38
多分、カスタマイズが不完全になっていると思います。
メールで cart.cgi を添付して送って頂けませんか。

返信(回答)する


Web裏技