#!/usr/bin/perl
#=======================================================
#■ショッピングカート
#=======================================================
#作成者：有限会社セルコム　谷川　謙
#作成日：
#更新日：
#更新内容：
#=======================================================
#処理概要：
#=======================================================
#▼各種ファイルの在り処	################################
$thisurl	= 'shop.cgi';
$jcodelib	= './jcode.pl';	#jcode.pl
$cgilib		= './cgi.pl';	#tani-cgi.pl
$cookielib	= './cookie.pl';	#cookie.pl
$mimelib	= './mimew.pl';	#メールヘッダ変換ライブラリ
$orderimg	= 'image/order.gif';
$dotimg		= 'image/dot.gif';
$filedir	= 'files';
$upload_dir	= 'pictures';
$np_img		= 'image/np.gif';
$list_file	= $filedir . '/list.txt';
$category_file	= $filedir . '/category.txt';
$color_file	= 'color.txt';		#色設定ファイル
$sendpass	= '/usr/sbin/sendmail';	#sendmailのパス
#▼ライブラリの読み込み	################################
require "./config.txt";
require "$jcodelib";
require "$cgilib";
require "$cookielib";
require "$mimelib";
#▼漢字コードの設定等	################################
$doctype	= '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">';
$contenttype	= '<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=Shift_JIS">';
$kanjicode	= 'sjis';
#▼色の設定		################################
&color;					#色設定の読み込み
$body = "<body bgcolor=\"$color{'bg'}\" text=\"$color{'text'}\" link=\"$color{'link'}\" vlink=\"$color{'vlink'}\" alink=\"$color{'alink'}\">";
$style = "<style><!-- 
body     {font-size:10pt\;}
td       {font-size:10pt\;}
td.hd    {font-size:10pt\;color:$color{'subj'}\;background:$color{'bghd'}\;}
td.navi  {font-size:10pt\;font-weight:bold\;}
a        {text-decoration:none\;     font-weight:bold\;}
a:hover  {text-decoration:underline\;color:$color{'hover'}\;}
input.btn{background-color:$color{'bgbtn'}\;border-color:$color{'bdbtn'}\;border-style:solid\;}
 --></style>";				#スタイルシート
#▼フォームの設定	################################
&form($kanjicode);
$cmd		= $form{'cmd'};
$in_ct_id	= $form{'ct_id'};
$in_id		= $form{'id'};
$in_quantity	= $form{'quantity'};
########################################################
#▽以下 main routine	%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
if ($cmd eq 'index') {
	&disp_index;
} elsif ($cmd eq 'list') {
	&disp_list;
} elsif ($cmd eq 'putin') {
	&putin;
} elsif ($cmd eq 'putout') {
	&putout;
} elsif ($cmd eq 'putoutall') {
	&putoutall;
} elsif ($cmd eq 'cart') {
	&disp_confirm_cart;
} elsif ($cmd eq 'confirm') {
	&disp_confirm;
} elsif ($cmd eq 'confirm2') {
	&disp_confirm2;
} elsif ($cmd eq 'send') {
	&send_order;
} else {
	&disp_index;
}
exit (0);
#△以上 main routine	%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
########################################################

########################################################
#▽以下 処理 sub	%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#▼カテゴリリストの表示	################################
sub disp_index {
	open(TXT, $category_file);
	@ctgr = <TXT>;
	close(TXT);
	print "Content-type:text/html\n\n";
	print "$doctype\n" ;
	print "<HEAD>\n" ;
	print "$contenttype\n" ;
	print "<TITLE>$title</TITLE>\n" ;
	print "$style\n";
	&disp_navi_j;
	print "</HEAD>\n" ;
	print "$body\n";
	&disp_navi;

	print "<P>\n";
	print "<TABLE BORDER=\"1\" WIDTH=\"600\" CELLSPACING=\"0\" CELLPADDING=\"5\" BORDERCOLOR=\"$color{'bghd'}\"><TR>\n";
	print "<TD CLASS=\"hd\">$titleカテゴリ選択</TD>\n";
	print "</TR><TR>\n";
	print "<TD>\n";
	print "<TABLE BORDER=\"0\" WIDTH=\"500\" CELLSPACING=\"0\" CELLPADDING=\"5\"><TR>\n";
	foreach (@ctgr) {
		($ct_id, $ct_name, $ct_cmt) = split(/,/, $_);
		chomp($ct_cmt);
		print "<TR>\n";
		print "<TD><IMG SRC=\"$dotimg\" WIDTH=\"12\" HEIGHT=\"12\"> <A HREF=\"$thisurl?cmd=list&ct_id=$ct_id\">$ct_name</TD>\n";
		print "<TD>$ct_cmt</TD>\n";
		print "</TR>\n";
	}
	print "<TR><TD COLSPAN=\"3\" ALIGN=\"center\">\n";
	print "<FORM ACTION=\"$thisurl\" METHOD=\"post\" STYLE=\"margin-bottom:0px\">\n";
	print "<INPUT TYPE=\"submit\" VALUE=\"ご注文フォームへ\" CLASS=\"btn\">\n";
	print "<INPUT TYPE=\"hidden\" NAME=\"cmd\" VALUE=\"confirm\">\n";
	print "</FORM>\n";
	print "</TD></TR>\n";
	print "</TABLE>\n";

	print "</TD>\n";
	print "</TR></TABLE>\n";

	print "</BODY>\n";
}
#▼商品リストの表示	################################
sub disp_list {
	open(TXT, $category_file);
	@ctgr = <TXT>;
	close(TXT);
	foreach (@ctgr) {
		($ct_id, $ct_name) = split(/,/, $_);
		if ($ct_id eq $in_ct_id) {
			$ut_ct_name = $ct_name;
			last;
		}
	}
	open(TXT, $list_file);
	@list = <TXT>;
	close(TXT);
	print "Content-type:text/html\n\n";
	print "$doctype\n" ;
	print "<HEAD>\n" ;
	print "$contenttype\n" ;
	print "<TITLE>$title</TITLE>\n" ;
	print "$style\n";
	&disp_navi_j;
	print "</HEAD>\n" ;
	print "$body\n";
	&disp_navi;

	print "<P>\n";
	print "<TABLE BORDER=\"1\" WIDTH=\"600\" CELLSPACING=\"0\" CELLPADDING=\"5\" BORDERCOLOR=\"$color{'bghd'}\">\n";
	print "<TR><TD CLASS=\"hd\">$ut_ct_name</TD></TR>\n";
	foreach (@list) {
		($ct_id, $id, $flg, $title1, $cmt1, $title2, $cmt2, $file, $stocks, $price) = split(/,/, $_);
		if ($ct_id eq $in_ct_id) {
			print "<TR><TD>\n";
			print "<FORM ACTION=\"$thisurl\" METHOD=\"post\">\n";
			print "<TABLE ALIGN=\"center\" WIDTH=\"90%\">\n";
			print "<TR>\n";
			if ($file) {
				$img_name = $upload_dir . '/' . $file;
			} else {
				$img_name = $np_img;
			}
			print "    <TD ROWSPAN=\"6\" COLSPAN=\"2\" ALIGN=\"center\"><a href=\"$img_name\" target=\"_blank\"><IMG border=\"0\" SRC=\"$img_name\"></a></TD>\n";
			print "    <TD>商品番号</TD>\n";
			print "    <TD>$id<INPUT TYPE=\"hidden\" NAME=\"id\" VALUE=\"$id\"></TD>\n";
			print "</TR><TR>\n";
			print "    <TD COLSPAN=\"2\"><B><BIG>$title1</BIG></B></TD>\n";
			print "</TR><TR>";
			print "    <TD COLSPAN=\"2\">$cmt1</TD>\n";
			print "</TR><TR>\n";
			print "    <TD COLSPAN=\"2\"><B>$title2</B></TD>\n";
			print "</TR><TR>";
			print "    <TD COLSPAN=\"2\">$cmt2</TD>\n";
			print "</TR><TR>\n";
			print "    <TD COLSPAN=\"2\">\\$price</TD>\n";
			print "</TR><TR>\n";
			print "    <TD COLSPAN=\"4\" ALIGN=\"center\"><INPUT TYPE=\"submit\" VALUE=\"購入する\" CLASS=\"btn\"></TD>\n";
			print "</TR>\n";
			print "</TABLE>\n";
			print "<INPUT TYPE=\"hidden\" NAME=\"cmd\" VALUE=\"putin\">\n";
			print "<INPUT TYPE=\"hidden\" NAME=\"ct_id\" VALUE=\"$in_ct_id\">\n";
			print "<INPUT TYPE=\"hidden\" NAME=\"id\" VALUE=\"$id\">\n";
			print "<INPUT TYPE=\"hidden\" NAME=\"quantity\" VALUE=\"1\">\n";
			print "</FORM>\n";
			print "</TD></TR>\n";
		}
	}
	print "<TR><TD ALIGN=\"center\">\n";
	print "<FORM ACTION=\"$thisurl\" METHOD=\"post\" STYLE=\"margin-bottom:0px\">\n";
	print "<INPUT TYPE=\"submit\" VALUE=\"ご注文フォームへ\" CLASS=\"btn\">\n";
	print "<INPUT TYPE=\"hidden\" NAME=\"cmd\" VALUE=\"confirm\">\n";
	print "</FORM>\n";
	print "</TD></TR>\n";
	print "</TABLE>\n";

	print "</TD>\n";
	print "</TR></TABLE>\n";

	print "</BODY>\n";
}
#▼カートに入れる	################################
sub putin {

	#02/03/26 追加（商品数量追加）
	&get_cookie;
	my @cookie_list = ();
	while (($ck_id, $ck_qua) = each(%cookie)) {
		if ($in_id == $ck_id) {
			$ck_qua++;
			$cookie_str = &set_cookie($in_id,$ck_qua,'2');
			print $cookie_str;
			$cookie{$in_id} = $ck_qua;
			$ck_cnt = $ck_qua;
		}
	}

#	print "Content-type:text/html\n\n";
#	print $ck_cnt;

	if (!$ck_cnt > 0) {
			$cookie_str = &set_cookie($in_id,$in_quantity,'2');
			print $cookie_str;
			$cookie{$in_id} = $in_quantity;
	}
	&disp_confirm;
}
#▼カートから出す	################################
sub putout {
	($cookie_str) = &clear_cookie($in_id);
	print $cookie_str;
	&disp_putout_cart;
}
#▼カートから全部出す	################################
sub putoutall {
	&get_cookie;
	my @cookie_list = ();
	while (($ck_id, $ck_qua) = each(%cookie)) {
		push(@cookie_list, $ck_id);
	}
	@cookie_strs = &clear_cookie(@cookie_list);
	print @cookie_strs;
	&disp_index;
}
#▼カート確認画面を表示	################################
sub disp_confirm_cart {
	print "Content-type:text/html\n\n";
	print "$doctype\n" ;
	print "<HEAD>\n" ;
	print "$contenttype\n" ;
	print "<TITLE>$title</TITLE>\n" ;
	print "$style\n";
	print "</HEAD>\n" ;
	print "$body\n";
	print "<P>\n";
	&disp_cart;
	print "</BODY>\n";
}
#▼削除完了画面を表示	################################
sub disp_putout_cart {
	print "Content-type:text/html\n\n";
	print "$doctype\n" ;
	print "<HEAD>\n" ;
	print "$contenttype\n" ;
	print "<TITLE>$title</TITLE>\n" ;
	print "$style\n";
	print "</HEAD>\n" ;
	print "$body\n";
	print "<P>\n";
	print "削除されました。<BR>\n";
	if ($form{'flg'}) {
		print "<A HREF=\"$thisurl?cmd=cart\">戻る</A><BR>\n";
	} else {
		print "<A HREF=\"$thisurl?cmd=confirm\">戻る</A><BR>\n";
	}
	print "</BODY>\n";
}
#▼確認画面１を表示	################################
sub disp_confirm {
	print "Content-type:text/html\n\n";
	print "$doctype\n" ;
	print "<HEAD>\n" ;
	print "$contenttype\n" ;
	print "<TITLE>$title</TITLE>\n" ;
	print "$style\n";
	&disp_navi_j;
	print "</HEAD>\n" ;
	print "$body\n";
	&disp_navi;
	print "<P>\n";
	&disp_cart;
	print "<P>\n";
	print "<TABLE BORDER=\"0\" WIDTH=\"400\" CELLSPACING=\"0\" CELLPADDING=\"5\"><TR>\n";
	print "<TD ALIGN=\"center\">\n";
	print "<FORM ACTION=\"$thisurl\" METHOD=\"post\">\n";
	print "<INPUT TYPE=\"submit\" VALUE=\"買い物を続ける\" CLASS=\"btn\">\n";
	print "<INPUT TYPE=\"hidden\" NAME=\"cmd\" VALUE=\"index\">\n";
	print "</FORM>\n";
	print "</TD>\n";
	print "</TR></TABLE>\n";
	if ($amount >= 1) {&disp_form;}
	print "</BODY>\n";
}
#▼確認画面２を表示	################################
sub disp_confirm2 {
	#param check
	my $error_str;
	if ($form{'name'} eq '') {$error_str .= "お名前は必須です。<BR>\n";}
	if ($form{'zip'} eq '') {$error_str .= "郵便番号は必須です。<BR>\n";} elsif ($form{'zip'} !~ /[0-9\-]+/g) {$error_str .= "郵便番号が不正です。<BR>\n";}
	if ($form{'addr1'} eq '') {$error_str .= "住所（都道府県）は必須です。<BR>\n";}
	if ($form{'addr2'} eq '') {$error_str .= "住所（市町村番地）は必須です。<BR>\n";}
	if ($form{'mail'} eq '' || $form{'mail'} eq '@') {$error_str .= "メールアドレスは必須です。<BR>\n";} elsif ($form{'mail'} !~ /[a-zA-Z0-9\-\.\_]+\@[a-zA-Z0-9\-\.\_]+\.[a-zA-Z0-9\-\.\_]+/g) {$error_str .= "メールアドレスが不正です。<BR>\n";}
	if ($form{'year'} eq '') {$error_str .= "お振り込み予\定日（年）は必須です。<BR>\n";} elsif ($form{'year'} !~ /[0-9]+/g) {$error_str .= "お振り込み予\定日（年）が不正です。<BR>\n";}
	if ($form{'mon'} eq '') {$error_str .= "お振り込み予\定日（月）は必須です。<BR>\n";} elsif ($form{'mon'} !~ /[0-9]+/g) {$error_str .= "お振り込み予\定日（月）が不正です。<BR>\n";}
	if ($form{'day'} eq '') {$error_str .= "お振り込み予\定日（日）は必須です。<BR>\n";} elsif ($form{'day'} !~ /[0-9]+/g) {$error_str .= "お振り込み予\定日（日）が不正です。<BR>\n";}
	if ($error_str ne '') {&error($error_str);}
	print "Content-type:text/html\n\n";
	print "$doctype\n" ;
	print "<HEAD>\n" ;
	print "$contenttype\n" ;
	print "<TITLE>$title</TITLE>\n" ;
	print "$style\n";
	&disp_navi_j;
	print "</HEAD>\n" ;
	print "$body\n";
	&disp_navi;
	print "<P>\n";
	&disp_cart;
	if ($amount >= 1) {
		print "<FORM ACTION=\"$thisurl\" METHOD=\"post\">\n";
		print "<TABLE BORDER=\"0\" WIDTH=\"400\" CELLSPACING=\"0\" CELLPADDING=\"5\">\n";
		print "<TR>\n";
		print "<TD>お名前</TD>\n";
		print "<TD>$form{'name'}<INPUT TYPE=\"hidden\" NAME=\"name\" VALUE=\"$form{'name'}\"></TD>\n";
		print "</TR>\n";
		print "<TR>\n";
		print "<TD ROWSPAN=\"3\">お届け先<BR>ご住所</TD>\n";
		print "<TD>〒$form{'zip'}<INPUT TYPE=\"hidden\" NAME=\"zip\" VALUE=\"$form{'zip'}\"></TD>\n";
		print "</TR>\n";
		print "<TR>\n";
		print "<TD>$form{'addr1'}<INPUT TYPE=\"hidden\" NAME=\"addr1\" VALUE=\"$form{'addr1'}\"></TD>\n";
		print "</TR>\n";
		print "<TR>\n";
		print "<TD>$form{'addr2'}<INPUT TYPE=\"hidden\" NAME=\"addr2\" VALUE=\"$form{'addr2'}\"></TD>\n";
		print "</TR>\n";
		print "<TR>\n";
		print "<TD>メールアドレス</TD>\n";
		print "<TD>$form{'mail'}<INPUT TYPE=\"hidden\" NAME=\"mail\" VALUE=\"$form{'mail'}\"></TD>\n";
		print "</TR>\n";
		print "<TR>\n";
		print "<TD>お振込み予\定日</TD>\n";
		print "<TD>$form{'year'}年$form{'mon'}月$form{'day'}日<INPUT TYPE=\"hidden\" NAME=\"date\" VALUE=\"$form{'year'}年$form{'mon'}月$form{'day'}日\"></TD>\n";
		print "</TR>\n";
		print "<TR>\n";
		print "<TD COLSPAN=\"2\"><INPUT TYPE=\"submit\" VALUE=\"確認して送信する\" CLASS=\"btn\"></TD>\n";
		print "</TR>\n";
		print "<INPUT TYPE=\"hidden\" NAME=\"cmd\" VALUE=\"send\">\n";
		print "</TABLE>\n";
	}
	print "</BODY>\n";
}
#▼完了画面を表示	################################
sub send_order {
	&get_cookie;
	@mail_list = ($form{'name'},$form{'zip'},$form{'addr1'},$form{'addr2'},$form{'mail'},$form{'date'});
	&send_mail(@mail_list);
	&send_mail2(@mail_list);
	my @cookie_list = ();
	while (($ck_id, $ck_qua) = each(%cookie)) {
		push(@cookie_list, $ck_id);
	}
	@cookie_strs = &clear_cookie(@cookie_list);
	print @cookie_strs;
	print "Content-type:text/html\n\n";
	print "$doctype\n" ;
	print "<HEAD>\n" ;
	print "$contenttype\n" ;
	print "<TITLE>$title</TITLE>\n" ;
	print "$style\n";
	print "</HEAD>\n" ;
	print "$body\n";
	&disp_navi;
	print "<P>\n";
	print "<B>送信内容を受け付けました。</B>\n";
	print "<P>\n";
	print "ご登録のメールアドレス宛てに確認メールが送信されます。<BR>\n";
	print "<FONT COLOR=\"#FF0000\">確認メールが受け取れない場合は、送信内容を受け付けていません。</FONT><BR>\n";
	print "必ず管理者までご連絡ください。<BR>\n";
	print "</BODY>\n";
}
#▼カートの中身を表示	################################
sub disp_cart {
	&get_cookie;

	print "<TABLE BORDER=\"1\" WIDTH=\"400\" CELLSPACING=\"0\" CELLPADDING=\"5\" BORDERCOLOR=\"$color{'bghd'}\"><TR>\n";
	print "<TD CLASS=\"hd\">カートの中身</TD>\n";
	print "</TR><TR>\n";
	print "<TD>\n";

	print "<TABLE BORDER=\"0\" WIDTH=\"400\" CELLSPACING=\"0\" CELLPADDING=\"5\"><TR>\n";
	print "<TD>商品ID</TD>\n";
	print "<TD>商品名</TD>\n";
	print "<TD>数量</TD>\n";
	print "<TD>Price</TD>\n";
	print "<TD><FONT COLOR=\"$color{'bg'}\">-</FONT></TD>\n";
	print "</TR>\n";
	$amount = 0;
	my $total = 0;
	while (($ck_id, $ck_qua) = each(%cookie)) {
		open(TXT, $list_file);
		@list = <TXT>;
		close(TXT);
		foreach (@list) {
			($ct_id, $id, $flg, $title1, $cmt1, $title2, $cmt2, $file, $stocks, $price) = split(/,/, $_);
			if ($ck_id eq $id) {
				print "<TR>\n";
				print "<TD>$id</TD>\n";
				print "<TD>$title1</TD>\n";
				if ($in_id eq $id && $ck_cnt >0) {
				$ck_qua++;
				}
				print "<TD>$ck_qua</TD>\n";
				print "<TD>\\$price</TD>\n";
				if ($cmd eq 'cart' || $form{'flg'}) {
					print "<TD>\n";
					print "<FORM ACTION=\"$thisurl\" METHOD=\"post\" STYLE=\"margin-bottom:0px\">\n";
					print "<INPUT TYPE=\"submit\" VALUE=\"削除\" CLASS=\"btn\">\n";
					print "<INPUT TYPE=\"hidden\" NAME=\"cmd\" VALUE=\"putout\">\n";
					print "<INPUT TYPE=\"hidden\" NAME=\"id\" VALUE=\"$id\">\n";
					print "<INPUT TYPE=\"hidden\" NAME=\"flg\" VALUE=\"1\">\n";
					print "<INPUT TYPE=\"hidden\" NAME=\"ct_id\" VALUE=\"$ck_ct_id\">\n";
					print "</FORM>\n";
					print "</TD>\n";
				} elsif ($cmd eq 'confirm' || $cmd eq 'putin') {
					print "<TD>\n";
					print "<FORM ACTION=\"$thisurl\" METHOD=\"post\" STYLE=\"margin-bottom:0px\">\n";
					print "<INPUT TYPE=\"submit\" VALUE=\"削除\" CLASS=\"btn\">\n";
					print "<INPUT TYPE=\"hidden\" NAME=\"cmd\" VALUE=\"putout\">\n";
					print "<INPUT TYPE=\"hidden\" NAME=\"id\" VALUE=\"$id\">\n";
					print "</FORM>\n";
					print "</TD>\n";
				} else {
					print "<TD><FONT COLOR=\"$color{'bg'}\">-</FONT></TD>\n";
				}
				print "</TR>\n";
				$amount += $ck_qua;
				$total += $price * $ck_qua;
			}
		}
	}
	if ($amount < 1) {
		print "<TR>\n";
		print "<TD><FONT COLOR=\"$color{'bg'}\">-</FONT></TD>\n";
		print "<TD COLSPAN=\"3\"><B>カートに入っている品物はございません。</B></TD>\n";
		print "</TR>\n";
	}
	print "<TR>\n";
	print "<TD>合計</TD>\n";
	print "<TD>$amount点</TD>\n";
	print "<TD><FONT COLOR=\"$color{'bg'}\">-</FONT></TD>\n";
	print "<TD>\\$total</TD>\n";
	print "</TR>\n";
	print "<TR>\n";
	if ($tax eq '1') {
	$tax_total = $total*$tax_rate;
	$tax_total = ($tax_total == int($tax_total) ? $tax_total : int($tax_total+1));
	$total = $total+$tax_total;
	print "<TD>消費税</TD>\n";
	print "<TD></TD>\n";
	print "<TD><FONT COLOR=\"$color{'bg'}\">-</FONT></TD>\n";
	print "<TD>\\$tax_total</TD>\n";
	print "</TR>\n";
	print "<TD>総合計</TD>\n";
	print "<TD></TD>\n";
	print "<TD><FONT COLOR=\"$color{'bg'}\">-</FONT></TD>\n";
	print "<TD>\\$total</TD>\n";
	print "</TR>\n";
	}
	print "</TABLE>\n";

	print "</TD>\n";
	print "</TR></TABLE>\n";
}
#▼フォームを表示	################################
sub disp_form {
	print "<FORM ACTION=\"$thisurl\" METHOD=\"post\">\n";
	print "<TABLE BORDER=\"0\" WIDTH=\"400\" CELLSPACING=\"0\" CELLPADDING=\"5\">\n";
	print "<TR>\n";
	print "<TD WIDTH=\"150\">お名前</TD>\n";
	print "<TD><INPUT TYPE=\"text\" NAME=\"name\" SIZE=\"20\"></TD>\n";
	print "</TR>\n";
	print "<TR>\n";
	print "<TD WIDTH=\"150\" ROWSPAN=\"3\">お届け先<BR>ご住所</TD>\n";
	print "<TD>〒<INPUT TYPE=\"text\" NAME=\"zip\" SIZE=\"8\"></TD>\n";
	print "</TR>\n";
	print "<TR>\n";
	print "<TD>\n";
	print "<SELECT NAME=\"addr1\">\n";
	print "<OPTION VALUE=\"北海道\">北海道\n";
	print "<OPTION VALUE=\"青森県\">青森県\n";
	print "<OPTION VALUE=\"岩手県\">岩手県\n";
	print "<OPTION VALUE=\"秋田県\">秋田県\n";
	print "<OPTION VALUE=\"宮城県\">宮城県\n";
	print "<OPTION VALUE=\"山形県\">山形県\n";
	print "<OPTION VALUE=\"福島県\">福島県\n";
	print "<OPTION VALUE=\"茨城県\">茨城県\n";
	print "<OPTION VALUE=\"栃木県\">栃木県\n";
	print "<OPTION VALUE=\"群馬県\">群馬県\n";
	print "<OPTION VALUE=\"埼玉県\">埼玉県\n";
	print "<OPTION VALUE=\"千葉県\">千葉県\n";
	print "<OPTION VALUE=\"東京都\" SELECTED>東京都\n";
	print "<OPTION VALUE=\"神奈川県\">神奈川県\n";
	print "<OPTION VALUE=\"新潟県\">新潟県\n";
	print "<OPTION VALUE=\"富山県\">富山県\n";
	print "<OPTION VALUE=\"石川県\">石川県\n";
	print "<OPTION VALUE=\"福井県\">福井県\n";
	print "<OPTION VALUE=\"長野県\">長野県\n";
	print "<OPTION VALUE=\"山梨県\">山梨県\n";
	print "<OPTION VALUE=\"静岡県\">静岡県\n";
	print "<OPTION VALUE=\"愛知県\">愛知県\n";
	print "<OPTION VALUE=\"岐阜県\">岐阜県\n";
	print "<OPTION VALUE=\"滋賀県\">滋賀県\n";
	print "<OPTION VALUE=\"三重県\">三重県\n";
	print "<OPTION VALUE=\"京都府\">京都府\n";
	print "<OPTION VALUE=\"奈良県\">奈良県\n";
	print "<OPTION VALUE=\"大阪府\">大阪府\n";
	print "<OPTION VALUE=\"和歌山県\">和歌山県\n";
	print "<OPTION VALUE=\"兵庫県\">兵庫県\n";
	print "<OPTION VALUE=\"鳥取県\">鳥取県\n";
	print "<OPTION VALUE=\"島根県\">島根県\n";
	print "<OPTION VALUE=\"岡山県\">岡山県\n";
	print "<OPTION VALUE=\"広島県\">広島県\n";
	print "<OPTION VALUE=\"山口県\">山口県\n";
	print "<OPTION VALUE=\"香川県\">香川県\n";
	print "<OPTION VALUE=\"愛媛県\">愛媛県\n";
	print "<OPTION VALUE=\"徳島県\">徳島県\n";
	print "<OPTION VALUE=\"高知県\">高知県\n";
	print "<OPTION VALUE=\"福岡県\">福岡県\n";
	print "<OPTION VALUE=\"佐賀県\">佐賀県\n";
	print "<OPTION VALUE=\"長崎県\">長崎県\n";
	print "<OPTION VALUE=\"熊本県\">熊本県\n";
	print "<OPTION VALUE=\"大分県\">大分県\n";
	print "<OPTION VALUE=\"宮崎県\">宮崎県\n";
	print "<OPTION VALUE=\"鹿児島県\">鹿児島県\n";
	print "<OPTION VALUE=\"沖縄県\">沖縄県\n";
	print "</SELECT></TD>\n";
	print "</TR>\n";
	print "<TR>\n";
	print "<TD><INPUT TYPE=\"text\" NAME=\"addr2\" SIZE=\"30\"></TD>\n";
	print "</TR>\n";
	print "<TR>\n";
	print "<TD WIDTH=\"150\">メールアドレス</TD>\n";
	print "<TD><INPUT TYPE=\"text\" NAME=\"mail\" VALUE=\"@\" SIZE=\"30\"></TD>\n";
	print "</TR>\n";
	print "<TR>\n";
	print "<TD WIDTH=\"150\">お振込み予\定日</TD>\n";
	print "<TD><INPUT TYPE=\"text\" NAME=\"year\" SIZE=\"4\">年<INPUT TYPE=\"text\" NAME=\"mon\" SIZE=\"2\">月<INPUT TYPE=\"text\" NAME=\"day\" SIZE=\"2\">日</TD>\n";
	print "</TR>\n";
	print "<TR>\n";
	print "<TD COLSPAN=\"2\"><INPUT TYPE=\"submit\" VALUE=\"この内容で送信する\" CLASS=\"btn\"><INPUT TYPE=\"reset\" VALUE=\"リセット\" CLASS=\"btn\"></TD>\n";
	print "</TR>\n";
	print "<INPUT TYPE=\"hidden\" NAME=\"cmd\" VALUE=\"confirm2\">\n";
	print "</TABLE>\n";
}
#▼ナビゲーションを表示	################################
sub disp_navi_j {
	print <<"Navigation_End";
<SCRIPT LANGUAGE="JavaScript">
<!-- 
function OpenWin() {
	var win1=window.open('$thisurl?cmd=cart','newwin1','toolbar=no,location=no,status=no,width=450,height=450');
	win1.focus();
}
// -->
</SCRIPT>
Navigation_End
}
sub disp_navi {
	print "<P>\n";
	print "｜\n";
	if ($cmd eq '') {
		print "　<A HREF=\"JavaScript:OpenWin()\">カートの中身を表\示</A>　｜\n";
	} elsif ($cmd eq 'confirm' || $cmd eq 'putin') {
		print "　<A HREF=\"$thisurl\">カテゴリ選択へ</A>　｜\n";
	} elsif ($cmd eq 'confirm2') {
		print "　<A HREF=\"$thisurl\">カテゴリ選択へ</A>　｜\n";
	} elsif ($cmd eq 'list') {
		print "　<A HREF=\"JavaScript:OpenWin()\">カートの中身を表\示</A>　｜\n";
		print "　<A HREF=\"$thisurl\">カテゴリ選択へ</A>　｜\n";
	}
	print "　<A HREF=\"$homeurl\" TARGET=\"_top\">トップページへ</A>　｜\n";

}
#▼確認メールを送信	################################
sub send_mail {
	@mail_list = @_;
	my ($property);
	foreach $property (@mail_list) {
		&jcode'convert(*property, 'jis');
	}
	if (!open(OUT,"| $sendpass $form{'mail'}")) {&error('Error');}
	($in_name,$in_zip,$in_addr1,$in_addr2,$in_mail,$in_date) = @mail_list;

	#ヘッダの生成
	$mail_head = "From: \"$title\" <$admin>;\n";
	$mail_head .= "To: \"$form{'name'}\" <$form{'mail'}>;\n";
	$mail_head .= "Content-Transfer-Encoding: 7bit\n";
	$mail_head .= "Content-Type: text/plain;\n";
	$mail_head .= "X-Mailer: tany mail form ver2 00\;\n";
	$mail_head .= "Subject: $mail_title\n";
	$mail_head .= "\n";

	open(TXT, 'mail.txt');
	@mail_txt = <TXT>;
	close(TXT);
	foreach $property (@mail_txt) {
		&jcode'convert(*property, 'jis');
	}

	print OUT &mimeencode($mail_head);

	print OUT "$in_name 様\n";
	print OUT "\n";
	print OUT "$titleのご利用ありがとうございます。\n";
	print OUT "\n";
	foreach (@mail_txt) {
		print OUT "$_";
	}
	print OUT "\n";
	print OUT "以下はお客様の登録情報です。\n";
	print OUT "登録情報を必ずご確認ください。\n";
	print OUT "もし誤りがある場合は、至急\n";
	print OUT "$admin までご連絡ください。\n";
	print OUT "\n";
	print OUT "●登録情報\n";
	print OUT "お名前： $in_name\n";
	print OUT "郵便番号： $in_zip\n";
	print OUT "ご住所： $in_addr1$in_addr2\n";
	print OUT "メールアドレス： $in_mail\n";
	print OUT "お振込み予\定日： $in_date\n";
	print OUT "\n";
	print OUT "==================================================\n";
	my $amount = 0;
	my $total = 0;
	while (($ck_id, $ck_qua) = each(%cookie)) {
		open(TXT, $list_file);
		@list = <TXT>;
		close(TXT);
		foreach $property (@list) {
			&jcode'convert(*property, 'jis');
			($ct_id, $id, $flg, $title1, $cmt1, $title2, $cmt2, $file, $stocks, $price) = split(/,/, $property);
			chomp($price);
			if ($ck_id eq $id) {
				print OUT "商品ID[$id]\n";
				print OUT "■商品名：$title1\n";
				print OUT "■数量：$ck_qua\n";
				print OUT "■金額：\\$price\n";
				print OUT "==================================================\n";
				$amount += $ck_qua;
				$total += $price * $ck_qua;
			}
		}
	}
	print OUT "合計\n";
	print OUT "$amount点\n";
	print OUT "\\$total\n";
	if ($tax eq '1') {
	$tax_total = $total*$tax_rate;
	$tax_total = ($tax_total == int($tax_total) ? $tax_total : int($tax_total+1));
	$total = $total+$tax_total;
	print OUT "消費税\n";
	print OUT "\\$tax_total\n";
	print OUT "総合計\n";
	print OUT "\\$total\n";
	}
	print OUT "==================================================\n";
	print OUT "このメールに心当たりのない方は\n";
	print OUT "大変お手数ですが、 $admin までご連絡ください。\n";
	print OUT "==================================================\n";
	print OUT "(c) Copyright $title\n";
	print OUT "$homeurl\n";
	print OUT "==================================================\n";
	close(OUT);
}
#▼管理者宛メールを送信	################################
sub send_mail2 {
	@mail_list = @_;
	my ($property);
	foreach $property (@mail_list) {
		&jcode'convert(*property, 'jis');
	}
	if (!open(OUT,"| $sendpass $admin")) {&error('Error');}
	($in_name,$in_zip,$in_addr1,$in_addr2,$in_mail,$in_date) = @mail_list;

	#ヘッダの生成
	$mail_head = "From: \"$title\" <$admin>;\n";
	$mail_head .= "To: \"$admin\" <$admin>;\n";
	$mail_head .= "Content-Transfer-Encoding: 7bit\n";
	$mail_head .= "Content-Type: text/plain;\n";
	$mail_head .= "X-Mailer: tany mail form ver2 00\;\n";
	$mail_head .= "Subject: $mail_title\n";
	$mail_head .= "\n";

	print OUT &mimeencode($mail_head);

	print OUT "$titleから注文がありました。\n";
	print OUT "\n";
	print OUT "●登録情報\n";
	print OUT "お名前： $in_name\n";
	print OUT "郵便番号： $in_zip\n";
	print OUT "ご住所： $in_addr1$in_addr2\n";
	print OUT "メールアドレス： $in_mail\n";
	print OUT "お振込み予\定日： $in_date\n";
	print OUT "\n";
	print OUT "==================================================\n";
	my $amount = 0;
	my $total = 0;
	while (($ck_id, $ck_qua) = each(%cookie)) {
		open(TXT, $list_file);
		@list = <TXT>;
		close(TXT);
		foreach $property (@list) {
			&jcode'convert(*property, 'jis');
			($ct_id, $id, $flg, $title1, $cmt1, $title2, $cmt2, $file, $stocks, $price) = split(/,/, $property);
			chomp($price);
			if ($ck_id eq $id) {
				print OUT "商品ID[$id]\n";
				print OUT "■商品名：$title1\n";
				print OUT "■数量：$ck_qua\n";
				print OUT "■金額：\\$price\n";
				print OUT "==================================================\n";
				$amount += $ck_qua;
				$total += $price * $ck_qua;
			}
		}
	}
	print OUT "合計\n";
	print OUT "$amount点\n";
	print OUT "\\$total\n";
	if ($tax eq '1') {
	$tax_total = $total*$tax_rate;
	$tax_total = ($tax_total == int($tax_total) ? $tax_total : int($tax_total+1));
	$total = $total+$tax_total;
	}
	print OUT "消費税\n";
	print OUT "\\$tax_total\n";
	print OUT "総合計\n";
	print OUT "\\$total\n";
	print OUT "==================================================\n";
	print OUT "このメールに心当たりのない方は\n";
	print OUT "大変お手数ですが、 $admin までご連絡ください。\n";
	print OUT "==================================================\n";
	print OUT "(c) Copyright $title\n";
	print OUT "$homeurl\n";
	print OUT "==================================================\n";
	close(OUT);
}
#△以上処理 sub routine	%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
########################################################

########################################################
#▽以下設定 sub routine	%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#▼色設定の読み込み	################################
sub color {
	my ($i, $col);
	if (!open(COL, "$color_file")) {&error('設定ファイルが開けません');}
	@col = <COL>;
	foreach (@col) {
		($col_value, $col_index) = split(/,/, $_);
		chomp($col_index);
		$color{$col_index} = $col_value;
	}
	close(COL);
}
