|
|
|
ขอถามเกี่ยวกับ SQL หน่อยคับ พอดีเขียนแล้วมันเชคจำนวนสินค้าไม่ตรงกับเบอร์สินค้า |
|
|
|
|
|
|
|
Database
TB : product
prd_id | prd_type_id | prd_name | prd_price | prd_detail | prd_photo | prd_discount
1 | 1 | A | 2000 | xxxx | xxx | 0
2 | 1 | B | 3000 | xxxx | xxx | 0
3 | 2 | C | 3000 | xxxx | xxx | 0
TB : product_size
prd_id | prd_sell | prd_size | prd_stock
1 | 0 | 5.0 | 6
1 | 0 | 6.0 | 8
2 | 0 | 5.0 | 5
2 | 0 | 6.0 | 7
ผมต้องการที่จะเขียนคำสั่งให้มัน เชค prd_stock ของ prd_size ที่เราเลือก
basket.php
<table width="100%" border="0" cellpadding="0" cellspacing="0 " style="clear:both" id="NewTB">
<form action="actionSQL.php" method="post" id="form1" name="form1" enctype="multipart/form-data" onsubmit="return check_text();">
<tr>
<th width="12%" align="center" valign="middle"><h4>ลบ</h4></th>
<th width="50%" align="left" valign="middle"><h4>สินค้าในตะกร้า</h4></th>
<th width="4%" align="center" valign="middle"><h4>จำนวน</h4></th>
<th width="5%" align="center" valign="middle"><h4>เบอร์</h4></th>
<th width="15%" align="center" valign="middle"><h4>ราคา/หน่วย</h4></th>
<th width="14%" align="center" valign="middle"><h4>รวม</h4></th>
</tr>
<?
if(count($_SESSION['sess_id'])=="0"){
//ลบ session
session_unregister("sess_id");
session_unregister("sess_num");
session_unregister("sess_shp");
echo "<meta http-equiv='refresh' content='0; url=index.php'>";
}else{
?>
<?PHP
//หาภาษี
for($i=0;$i<count($_SESSION['sess_id']);$i++){
$sql = mysql_query("SELECT * FROM ".$product." WHERE prd_id='".$_SESSION['sess_id'][$i]."'");
$rst = mysql_fetch_array($sql);
$ID = $rst['prd_id'];
$code = sprintf("%05d",$rst['prd_id']);
$tyID = $rst['prd_type_id'];
$name = $rst['prd_name'];
$price = $rst['prd_price'];
$detail = $rst['prd_detail'];
$photo = $rst['prd_photo'];
$discount = $rst['prd_discount'];
$sql =mysql_query("SELECT * FROM ".$product_type." WHERE type_id='".$tyID."'");
$rst = mysql_fetch_array($sql);
$tyName = $rst['type_name'];
// คำนวนส่วนลด
if($discount>0){
$TxtDCT = ($discount*$price)/100;
$Price = ($price-$TxtDCT);
}else{
$Price = $price;
}
// คำนวนราคาต่อชิ้น
$unit_price = $_SESSION['sess_num'][$i] * $Price;
$total = $total + $unit_price;
?>
<tr class="report1">
<td width="12%" align="center" valign="middle">
<a href="actionSQL.php?TbName=orders&sql=SESS_DEL&ID[]=<?=$ID?>"><img class="img" src="images/trash.png" border="0" /></a> </td>
<td width="50%" align="left" valign="middle">
<?PHP
if(!empty($photo)){
$img = "photo/".$photo."";
}else{
$img = "images/photo.jpg";
}
$x = 50;
$xy = @getimagesize($img);
$tx = $xy[0];
$ty = $xy[1];
$y = $ty/$tx;
$y = $y * $x;
?>
<img src="<?=$img?>" width="<?=$x?>" height="<?=$y?>"/> <b><a href="product_detail.php?ID=<?=$ID?>"><?=$name?></a></b> </td>
<td width="4%" align="center" valign="middle">
<input name="txt_num[]" type="text" id="txt_num[]" style="width: 40px; height: 20px; text-align:center; border: 1px solid #ccc;" value="<?=$_SESSION['sess_num'][$i]?>" /> </td>
<td width="5%" align="center" valign="middle">
<p>
<select name="size[]" id="size[]">
<option value="0" selected="selected">เบอร์</option>
<?PHP
session_register('sess_sizess');
include "connect.php";
$sql = mysql_query("select * from ".$product_size." WHERE prd_id='".$_SESSION['sess_id'][$i]."'");
while($rst = mysql_fetch_array($sql)){
?>,
<option value="<?=$rst['prd_size']; ?>"><?=$rst['prd_size'];?>
</option>
<? } ?>
</select>
</p>
</td>
<td width="15%" align="right" valign="middle"><?=number_format($Price,2)?></td>
<td width="14%" align="right" valign="middle"><?=number_format($unit_price,2)?></td>
</tr>
<? } } ?>
<tr class="report1">
<td colspan="5" align="right" valign="middle"><b>รวมราคา</b></td>
<td align="right" valign="middle"><?=number_format(ceil($total),2)?></td>
</tr>
<?php
if(!empty($_GET['shp_id'])){
$chk_id = $_GET['shp_id'];
}else if(!empty($_SESSION['sess_shp'])){
$chk_id = $_SESSION['sess_shp'];
}
if(!empty($chk_id)){
$_SESSION['sess_shp']=$chk_id;
$sql = mysql_query("SELECT * FROM ".$shipping." where s_id='".$_SESSION['sess_shp']."'");
$rst = mysql_fetch_array($sql);
$sp_id = $rst['s_id'];
$sp_name = $rst['s_name'];
$sp_price = $rst['s_price'];
$total = $total+$sp_price;
?>
<tr class="report1">
<td colspan="5" align="right" valign="middle"><b><?=$sp_name?></b></td>
<td align="right" valign="middle"><?=number_format($sp_price,2)?></td>
</tr>
<? } ?>
<tr class="report1">
<td colspan="5" align="right" valign="middle"><b>รวมยอดชำระ</b></td>
<td align="right" valign="middle"><b style="color:red;"><?=number_format(ceil($total),2)?></b></td>
</tr>
<tr class="report1">
<td colspan="6" align="right" valign="middle" style="border:0px; padding:0px;">
<div style="margin-top: 5px; padding: 5px 0px 5px 0px; border-top: 1px dashed #ddd;">
<select name="txt_shp" id="txt" onchange="window.location='basket_product.php?shp_id='+this.value+'#st'" style="padding: 2px;">
<? if(empty($_SESSION['sess_shp'])){ ?>
<option value="">เลือกรูปแบบการจัดส่งสินค้า</option>
<? } ?>
<?PHP
include "connect.php";
$sql = mysql_query("SELECT * FROM ".$shipping." ORDER BY s_price ASC");
while($rst = mysql_fetch_array($sql)){
$shp_id = $rst['s_id'];
$shp_name = $rst['s_name'];
$shp_price = $rst['s_price'];
if($_SESSION['sess_shp']==$shp_id){
echo "<option style='padding: 3px;' value =".$shp_id." selected> - ".$shp_name." ราคา ".number_format($shp_price,2)." บาท</option>";
}else{
echo "<option style='padding: 3px;' value =".$shp_id."> - ".$shp_name." ราคา ".number_format($shp_price,2)." บาท</option>";
}
}
?>
</select>
<input class="button_txt" type="submit" name="calculate" value="คำนวนใหม่" />
<input class="button_txt" type="submit" name="complete" id="confirm" value="สั่งซื้อสินค้า" style="margin-left: 2px;"/>
<input class="button_txt" type="submit" name="back" id="back" value="เลือกสินค้าเพิ่ม" />
<input type="hidden" name="sql" value="BKT_Calculate" />
<input type="hidden" name="TbName" value="orders" />
</div> </td>
</tr>
</form>
</table>
actionSQL.php
if(!is_numeric($_POST['txt_num'][$i])){ // ตรวจสอบกรอกจำนวนสินค้าให้ถูก
exit("<script>alert('กรุณากรอกจำนวนสินค้าให้ถูกด้วยนะ!');(history.back());</script>");
}else if(strpos($_POST['txt_num'][$i],".") !== false){
exit("<script>alert('กรุณากรอกจำนวนสินค้าให้ถูกด้วยนะ!');(history.back());</script>");
}
//ส่วนของการตรวจสอบ สินค้าที่ลูกค้าสั่งเกิน
$sql = mysql_query("SELECT * FROM ".$product_size." WHERE prd_stock='".$_SESSION['sess_id'][$i]."'");
//$sql = mysql_query("SELECT product.*,product_size.* FROM product,product_size WHERE product_size.prd_id= product_size.prd_stock");
$rst = mysql_fetch_array($sql);
$stock = $rst['prd_stock'];
//$name = $rst['prd_name'];
if($stock < $_POST['txt_num'][$i]){
exit("<script>alert('สินค้า ".$name." ที่คุณสั่งซื้อไม่พอ คุณสามารถสั่งซื้อสินค้าได้ ".$stock."');(history.back());</script>");
}else if($_POST['txt_num'][$i]<1){
exit("<script>alert('กรุณากรอกจำนวนให้ถูกต้องด้วยนะ!');(history.back());</script>");
}else{
$_POST['temp_num'][]=$_POST['txt_num'][$i];
if($_POST['size'][$i]==0 and $_POST['back'] != 'เลือกสินค้าเพิ่ม'){
exit("<script> alert('กรุณาเลือกเบอร์ก่อน'); (history.back()); </script>");
}else{
$_POST['temp_size'][]=$_POST['size'][$i];
}
} //ส่วนของการตรวจสอบ stock
} // end for
$_SESSION['sess_size']=$_POST['temp_size'];
$_SESSION['sess_num']=$_POST['temp_num'];
if($_POST['calculate']){
exit("<script>window.location='basket_product.php#st';</script>");
}else if($_POST['complete']){
// ถ้ายังไม่เลือกรูปแบบการจัดส่งสินค้า ให้กลับไปเลือกก่อน
if(empty($_SESSION['sess_shp'])){
exit("<script>alert('เลือกรูปแบบการจัดส่งสินค้าด้วยนะ!');(history.back());</script>");
}
exit("<script>window.location='baskt_product_buy.php#st';</script>");
}else if($_POST['back']){
exit("<script>window.location='product.php?p=New';</script>");
}
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2014-02-25 23:37:23 |
By :
inoklism |
View :
774 |
Reply :
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SELECT sum(prd_stock) AS DataSum
FROM ...........
WHERE prd_size = .....
|
|
|
|
|
Date :
2014-02-26 15:59:54 |
By :
FreshyMusiC |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|