teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

具体的な記述を追加

2020/08/25 09:02

投稿

sato_k
sato_k

スコア12

title CHANGED
File without changes
body CHANGED
@@ -1,8 +1,77 @@
1
- 買い物かごシステムCGIWEB MART)を利用し、
1
+ 買い物かごシステムCGIWEB MART(https://www.kent-web.com/cart/mart.htmlを利用し、
2
2
  特定の商品のみ送料を変更したいのですが、可能でしょうか?
3
3
 
4
- WEB MART
4
+ cgiに関してはあまり知識がなく、苦戦しております。
5
- https://www.kent-web.com/cart/mart.html
5
+ ご存じの方がいらっしゃいましたら、ご教授いただけますと幸いです。
6
6
 
7
+ ---
8
+
9
+ ■やりたいこと
10
+
11
+ 特定の商品のみ送料を変更したい
12
+ (例:商品Aのみクール便料金+200円)
13
+
14
+
15
+ ※商品Aのバリエーション
16
+ - 商品A(単品)
17
+ - 商品A(5個入)
18
+ - 商品A(10個入)
19
+
20
+ 上記はどれをいくつ買っても、クール便料金+200円が加算される仕様にしたい。
21
+
22
+ ---
23
+
24
+ ■買い物かご(cart/order.cgi)の仕様
25
+
26
+ ```# 買物カゴ展開
27
+ my $all = 0;
28
+ my $gkei = 0;
29
+ my $body;
7
- cgiに関してはあまり知識がなく、苦戦しております。
30
+ foreach my $cook (@cook) {
31
+ my ($id,$code,$num,$size,$col) = split(/,/, $cook);
32
+ my ($code,$name,$price,$intax,$deli,$dai) = split(/<>/, $cart{$code});
33
+
34
+ # 小計/累計
35
+ my $kei = $price * $num;
36
+ $all += $kei;
37
+
38
+ # 備考
39
+ my $memo;
40
+ if ($size) { $memo .= " [$cf{op_size}]$size "; }
41
+ if ($col) { $memo .= " [$cf{op_color}]$col "; }
42
+
43
+ # 書き出し
44
+ my $tmp = $loop;
45
+ $tmp =~ s/!code!/$code/g;
46
+ $tmp =~ s/!item!/$name/g;
47
+ $tmp =~ s/!num!/$num/g;
48
+ $tmp =~ s/!tanka!/&comma($price)/ge;
49
+ $tmp =~ s/!gouka!/&comma($kei)/ge;
50
+ $tmp =~ s/!memo!/$memo/g;
51
+ $body .= $tmp;
52
+ }
53
+
54
+ # 送料
55
+ if ($postage > 0) {
56
+ # 送料サービス有り
57
+ if ($cf{cari_serv} && $cf{cari_serv} <= $all) {
58
+ $postage = 0;
59
+ $serv_flag++;
60
+ }
61
+ }
62
+ $gkei = $all;
63
+ ```
64
+
65
+ ---
66
+
67
+ ▼つまづいているところ
8
- ご存じ方がいらしゃいましたら、ご教授いただけまと幸いです
68
+ 送料欄に、クール便料金の記述を追加できれば動くのでは?と思います。
69
+ ```
70
+ if (!my ($code) == 0016) {
71
+ $postage = 0;
72
+ $cool = 200;
73
+ $postage += $cool;
74
+ }
75
+ ```
76
+
77
+ $cool という変数を、$postageという送料の計算合計に追加したいです。