在庫表示システム"; echo "
商品番号が指定されていません。
何度もこの表示が出る場合はお問い合わせください。
"; echo ""; exit; } //在庫マスタとの相違を修正(後日データベースを利用する予定) switch($code){ case "szo-rx-rcd120": //$code="fubo0000"; break; case "uq-026": $code="uq-026-2011";break; } //DB接続処理 if(strstr($_SERVER["SERVER_NAME"],"enjoy") == false && strstr($_SERVER["SERVER_NAME"],"unifact") == false && strstr($_SERVER["SERVER_NAME"],"sakura") == false){ echo "ローカル"; $url = "localhost"; $user = "root"; $pass = ""; error_reporting(E_ALL); // デバッグ時 }else{ /* $url = "mysql103b.db.sakura.ne.jp"; $user = "unifact"; $pass = "Sc4erz0"; */ $url = "sys.unifact.jp:3306"; $user = "tagro"; $pass = "Sc4erz0"; // error_reporting(E_ALL); // 運用時 } $db = "stock"; $link = mysql_connect($url,$user,$pass)or mente(); $sdb = mysql_select_db($db,$link); /* --- SECURITY --- */ if(strlen($code) !== mb_strlen($code,'sjis')){ //マルチバイト文字判定 errmsg(1); } /* if(strlen($code) !== mb_strlen($code,'sjis')){ //スラッシュ、バッククオート判定 errmsg(1); } */ $code = mb_convert_encoding($code, "sjis", "auto"); $option = mb_convert_encoding($code, "sjis", "auto"); mysql_set_charset('sjis'); mb_regex_encoding("sjis"); $code=addslashes($code); /*--- SECURITY ---*/ //商品名取得 $sql = sprintf("SELECT name FROM names WHERE code = '%s'",mysql_real_escape_string($code)); $res = mysql_query($sql, $link); if(mysql_num_rows($res)==0){ echo "在庫情報が存在しません。
URLを添えてお問い合わせください。
"; echo ""; exit; }//商品の情報が無いよ $itemname=mysql_result($res,0); //情報取得 $sql = sprintf(" SELECT unific.code, sub_code, class, num, per1, next1, per2, next2, override, code_match.`sub-name` FROM `unific` JOIN code_match ON code_match.subcode = unific.sub_code WHERE unific.code = '%s' ORDER BY 'sub_code' LIMIT 0 , 30 ",mysql_real_escape_string($code)); $res = mysql_query($sql, $link); $i = 0;//件数カウンタ while($row=mysql_fetch_array($res,MYSQL_BOTH)){//ループでデータを配列に落とし込む $data[$i]["code"] = $row["code"]; $data[$i]["sub_code"] = $row["sub_code"]; $data[$i]["class"] = $row["class"]; $data[$i]['num'] = $row['num']; $data[$i]["per1"] = $row["per1"]; $data[$i]["next1"] = $row["next1"]; $data[$i]["per2"] = $row["per2"]; $data[$i]["next2"] = $row["next2"]; $data[$i]["override"] = $row["override"]; $data[$i]['sub-name'] = $row['sub-name']; $data[$i]['sub-name']=str_replace("色 / ","",$data[$i]['sub-name']); $data[$i]['sub-name']=str_replace("カラー / ","",$data[$i]['sub-name']); $data[$i]['sub-name']=mb_ereg_replace("(※.*)","",$data[$i]['sub-name']); $i++; } if($i==0){ echo "在庫情報が存在しません。
URLを添えてお問い合わせください。
"; echo ""; exit; }//在庫データないよ /* $sql = "SELECT `lastupdate` FROM `time`"; $res = mysql_query($sql, $link); if($res){ $lastupdate = mysql_result($res,0); } */ //不要なデータを削除 mysql_free_result($res); //サーバから切断 mysql_close($link); #======================================== # # 表示系処理 # #======================================== // echo "
※現在動作テスト中につき、情報に誤りがある場合がございます。※
"; /* if(!empty($lastupdate)){ echo "
".$lastupdate." 時点の在庫状況
"; }else{ echo "
在庫状況
※最新の情報ではない可能性が御座います。
"; }*/ echo "
".sprintf("%s月%s日 %s時 時点の",date("m"),date("d"),date("h"))."在庫状況
"; echo "
商品名 : ".$itemname."
"; $j=$i; $makerflag=0; for($i=0;$i<$j;$i++){ if(mb_strpos($data[$i]["class"],"自社")===FALSE){ $makerflag = 1; break;} } if($makerflag==1){ echo "
本商品はメーカー在庫商品となります。
メーカーに在庫が無い場合は次回入荷までお待ちいただく場合がございます。予めご了承ください。
"; } echo ""; for($i=0;$i<$j;$i++){ echo ""; }elseif($data[$i]['num']<=0&&$data[$i]["override"]=="s1"){ echo "今季販売終了"; echo ""; }elseif($data[$i]["override"]=="order"){ echo ""; echo ""; }else{ switch(true){ case $data[$i]['num']<=0: echo "欠品中(在庫無し)"; break; default: if($data[$i]['num']>5000||is_null($data[$i]['num'])){ echo "要在庫確認"; }elseif($data[$i]['num']>30){ echo "即納可能(在庫有り)"; }else{ echo "" . $data[$i]['num'] . ""; } break; } echo ""; switch($data[$i]["override"]){ case "fin": echo "";break; case "s1": echo "";break; case "stop": case "zero": echo "";break; default: echo ""; } switch($data[$i]["override"]){ case "fin": case "zero": case "stop": case "s1": break; case "end": echo "";break; case "s2": echo "";break; default: if(empty($data[$i]['per2']))break; echo ""; break; } } echo ""; } // if(!$frag0)errmsg(12); echo "
",$data[$i]['sub-name'].""; if($data[$i]["override"]=="end")$data[$i]['num']-=$data[$i]['next1']; elseif($data[$i]["override"]=="fin"||$data[$i]["override"]=="stop"||$data[$i]["override"]=="confirm"||$data[$i]["override"]=="s1"||strpos($data[$i]["code"],"sozai")!==FALSE); else $data[$i]['num']-=500; // if($code=="uni30010"||$data[$i]["sub_code"]=="uni1875-bl"||$data[$i]["sub_code"]=="uni1875-pi")$data[$i]['num']-=1000; if($data[$i]['num']<=0&&$data[$i]["override"]=="fin"){ echo "販売終了"; echo "
 
 
- ご注文後にお取り寄せ致します -
在庫限りで販売終了
在庫限りで今季販売終了
次回入荷:未定
次回入荷:"; if(empty($data[$i]['per1'])){ echo "未定"; }else if($data[$i]["override"]=="confirm"){ echo "納期確認中"; }else { echo $data[$i]['per1']; } if($data[$i]["override"]=="confirm"){echo " (予約不可)";} else if(!empty($data[$i]['next1'])){ echo " / 予定数:".$data[$i]['next1']; if($data[$i]['num'] <= 0){ $posa=$data[$i]['next1']+$data[$i]['num']; if($posa <= 0){echo " (予約不可)";} else echo " (予約可能)";//:".$posa.")"; } } echo "
上記入荷分で終了
上記入荷分で今季販売分終了
次々回入荷:".$data[$i]['per2']; if(!empty($data[$i]['next2'])){ echo " / 予定数:".$data[$i]['next2']; if($posa <= 0){ $posb=$data[$i]['next1']+$posb; if($posb <= 0) echo " (予約不可)"; else echo " (予約可能)";//:".$posb.")"; } } echo "
"; exit; function mente(){ echo "大変申し訳ございませんが、システムメンテナンス中です。"; echo ""; exit; } ?>