|
|
|
เรื่องการแสดงข้อมูลในใบสั่งซื้อสินค้า ถ้าสั่งสินค้า1รายการข้อมูลในใบสั่งซื้อมันจะออกมา1รายการ ปัญหามันอยู่ที่ว่าเวลาเราสั่งซื้อสินค้าไปประมาณสัก 2 ,3 รายการ เวลาที่ข้อมูลในใบสั่งซื้อมันออกมาจะซ้ำเฉพาะรายการสินค้าที่ 2,3 ไม่รู้มันเป็นเพราะอะไรช่วยด้วยค่ะ |
|
|
|
|
|
|
|
เรื่องการแสดงข้อมูลในใบสั่งซื้อสินค้า ถ้าสั่งสินค้า1รายการข้อมูลในใบสั่งซื้อมันจะออกมา1รายการจะไม่ซ้ำ แต่ปัญหามันอยู่ที่ว่าเวลาเราสั่งซื้อสินค้าไปประมาณสัก 2 ,3 รายการ เวลาที่ข้อมูลในใบสั่งซื้อมันออกมาจะซ้ำเฉพาะรายการสินค้าที่ 2,3 ไม่รู้มันเป็นเพราะอะไรช่วยด้วยค่ะ ลองแก้มาหลายครั้งแล้ว มันไม่ได้สักที รบกวนพี่ๆเพื่อนช่วยด้วยนะค่ะ
นี้โค้ดการinsert ข้อมูลเข้า
Code (PHP)
<?
$host="localhost";
$user_name="root";
$pass_word="root";
$db="project";
mysql_connect( $host,$user_name,$pass_word) or die ("ติดต่อไม่ได้ ");
mysql_select_db($db) or die("ติดต่อได้");
mysql_query("SET NAMES utf8") or die (mysql_error());
//ฟังก์ชั่นในการแสดงวันที่เป็นปี พ.ศ. ซึ่งมีรายละเอียดการเรียกใช้ดังนี้ $date คือวันที่ปัจจุบัน เช่น date("Y-m-d") (ต้องใช้รูปแบบ Y-m-d เท่านั้น), $days คือวันที่ที่ต้องการบวกเพิ่มเข้าไป, $months คือ เดือนที่ต้องการบวกเพิ่มเข้าไป, $years คือ ปีที่ต้องการบวกเพิ่่่่่่่มเข้าไป ตัวอย่างเช่น thaicurrentday(date("Y-m-d"), 1, 0, 1) ถ้าวันปัจจุบันคือ 2010-05-02 ผลที่ได้รับคือ 03/05/2554
function thaicurrentday($date, $days, $months, $years)
{
//เป็นคำสั่งในการแยกข้อความให้เป็น array ในที่นี้คือ 2010-05-02 สิ่งที่ได้คือ $datevalue[0] จะเท่ากับ 2010, $datevalue[1] จะเท่ากับ 05, $datevalue[2] จะเท่ากับ 02 ซึ่งวิธีการทำงานของฟังก์ชั่นนี้จะแยกข้อความเป็น array โดยในที่นี้กำหนด - เป็นตัวแยก เมื่อเจอ - ก็จะแยกเป็น arrayๆ ออกมาให้
$datevalue = explode("-", $date);
//ฟังก์ชั่น mktime คือ ฟังก์ชั่นในการกำหนดตัวเลขให้เป็นเวลา ซึ่งประกอบไปด้วย ชั่วโมง, นาที, วินาที, เดือน, วัน, ปี เมื่อกำหนดใน mktime แล้วก็นำมาใส่ในฟังก์ชั่น date เพื่อที่จะทำให้อยู่ในรูปแบบวันที่ ซึ่งรูปแบบในที่นี้คือ Y-m-d เราสามารถบวก ชั่วโมง, นาที, วินาที, เดือน, วัน, ปี ได้ตามต้องการ โดยการใส่ + แล้วตามด้วยตัวเลขที่ต้องการ เช่น $datevalue[1] + 2 คือการบวก 2 เดือน เพราะอยู่ในตำแหน่งของเดือน
$currentday = date("Y-m-d", mktime(0, 0, 0, $datevalue[1] + $months, $datevalue[2] + $days, $datevalue[0] + $years));
//เหมือนกับที่ได้อธิบายทางด้านบน
$datearray = explode("-", $currentday);
//ส่งค่าวันที่กลับโดยจะอยู่ในรูปแบบ วัน/เดือน/ปี เช่น 02/05/2010
return $datearray[2] . "/" . $datearray[1] . "/" . ($datearray[0]+543);
}
$cart=$_SESSION["cart"];
$sess_adminid=session_id();
$username=$_SESSION["username"];
$dist=$_POST['dist'];
//echo "$dist";
$date=date("Y-m-d");
$time= date("h:i:s");
$error="";
if($error==""){
//นำหมายเลขสมาชิก และวันที่ใส่ในตาราง order
$sql="SELECT* FROM member WHERE username='$sess_adminid'";
$re=mysql_query($sql)or die (mysql_error());
$row=mysql_fetch_array($re);
$member_id=$row["id"]; //หมายเลขสมาชิกเพื่อใส่ตาราง order
//เอาข้อมูลเข้าตารางorder_dist
$sql_in="INSERT INTO order_dist"
."(dist_name,date,datetime)"
."values('$dist','$date','$time')";
echo $sql_in;
//$re=mysql_db_query($db,$sql_in);
mysql_query($sql_in)or die (mysql_error());
$id_dist=mysql_insert_id(); //ฟังก์ชันคืนค่าเป็น id ของแถวที่เพิ่ง insert เข้าไป
//นำสินค้าในตะกร้าไปใส่ในตาราง order_dis_detail
foreach($cart as $product_id => $item){
$sql1="INSERT INTO order_dist_detail"
."(amount1,product_id,id_dist)"
."values($item[amount1],'$product_id',$id_dist)";
echo $sql1;
$re2=mysql_db_query($db,$sql1);
mysql_query($sql1)or die (mysql_error());
}
//ลบตะกร้าสินค้าออกจากเซสชัน
unset($_SESSION["cart"]);
}
//ถ้าไม่มีข้อผิดพลาดแสดงข้อความ หากผิดพลาดให้กลับไปหน้าเดิม
if($error==""){
echo '<script language="javascript">'."\n";
echo '<!--'."\n";
echo "alert (' บันทึกการสั่งซื้อสินค้าเรียบร้อย '); \n";
echo "window.location='print_ord.php'";
echo '//-->'."\n";
echo '</script>'."\n";
exit ();
}
else{
echo '<script language="javascript">'."\n";
echo '<!--'."\n";
echo "alert ('มีข้อผิดพลาดเกิดขึ้น'); \n";
echo "window.location='ad_nshipping.php'";
echo '//-->'."\n";
echo '</script>'."\n";
exit ();
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>บันทึกการสั่งซื้อสินค้า</title>
</head>
<body>
<? echo "$re";?>
</body>
</html>
นี้โค้ดหน้าใบสั่งซื้อสินค้าคะ่
Code (PHP)
<?
include"function.php";
include"connect.php";
include"distributor .php";
$id_dist=$_GET["id_dist"];
$time=$_GET['datetime'];
$_SESSION["sess_timemark"]=$time;
//ฟังก์ชั่นในการแสดงวันที่เป็นปี พ.ศ. ซึ่งมีรายละเอียดการเรียกใช้ดังนี้ $date คือวันที่ปัจจุบัน เช่น date("Y-m-d") (ต้องใช้รูปแบบ Y-m-d เท่านั้น), $days คือวันที่ที่ต้องการบวกเพิ่มเข้าไป, $months คือ เดือนที่ต้องการบวกเพิ่มเข้าไป, $years คือ ปีที่ต้องการบวกเพิ่่่่่่่มเข้าไป ตัวอย่างเช่น thaicurrentday(date("Y-m-d"), 1, 0, 1) ถ้าวันปัจจุบันคือ 2010-05-02 ผลที่ได้รับคือ 03/05/2554
function thaicurrentday($date, $days, $months, $years)
{
//เป็นคำสั่งในการแยกข้อความให้เป็น array ในที่นี้คือ 2010-05-02 สิ่งที่ได้คือ $datevalue[0] จะเท่ากับ 2010, $datevalue[1] จะเท่ากับ 05, $datevalue[2] จะเท่ากับ 02 ซึ่งวิธีการทำงานของฟังก์ชั่นนี้จะแยกข้อความเป็น array โดยในที่นี้กำหนด - เป็นตัวแยก เมื่อเจอ - ก็จะแยกเป็น arrayๆ ออกมาให้
$datevalue = explode("-", $date);
//ฟังก์ชั่น mktime คือ ฟังก์ชั่นในการกำหนดตัวเลขให้เป็นเวลา ซึ่งประกอบไปด้วย ชั่วโมง, นาที, วินาที, เดือน, วัน, ปี เมื่อกำหนดใน mktime แล้วก็นำมาใส่ในฟังก์ชั่น date เพื่อที่จะทำให้อยู่ในรูปแบบวันที่ ซึ่งรูปแบบในที่นี้คือ Y-m-d เราสามารถบวก ชั่วโมง, นาที, วินาที, เดือน, วัน, ปี ได้ตามต้องการ โดยการใส่ + แล้วตามด้วยตัวเลขที่ต้องการ เช่น $datevalue[1] + 2 คือการบวก 2 เดือน เพราะอยู่ในตำแหน่งของเดือน
$currentday = date("Y-m-d", mktime(0, 0, 0, $datevalue[1] + $months, $datevalue[2] + $days, $datevalue[0] + $years));
//เหมือนกับที่ได้อธิบายทางด้านบน
$datearray = explode("-", $currentday);
//ส่งค่าวันที่กลับโดยจะอยู่ในรูปแบบ วัน/เดือน/ปี เช่น 02/05/2010
return $datearray[2] . "/" . $datearray[1] . "/" . ($datearray[0]+543);
}
$table = mysql_query("SELECT * FROM bookdate") or die ("Query Error : SELECT goodssup <" . mysql_error() . ">");
$field = mysql_fetch_array($table);
$fid_bookdate = $field["id_bookdate"];
$fddayexpire = $field["dayexpire"];
mysql_query("SET NAMES utf8") or die (mysql_error());
$sess_adminid=session_id();
$username= $_SESSION[sess_username];
//ดึงข้อมูลใบสั่งซื้อ
$table = mysql_query("SELECT MAX(id_dist) AS id_dist FROM order_dist") or die ("Query Error : SELECT `order` <" . mysql_error() . ">");
$field = mysql_fetch_array($table);
$id_dist = $field["id_dist"];
$date = $field["date"];
$tableorder = mysql_query("SELECT order_dist.id_dist,order_dist.dist_name,order_dist.date,order_dist.datetime,order_dist_detail.id,order_dist_detail.id_dist,order_dist_detail.product_id,order_dist_detail.amount1,product.id,product.name_pr,product.detail,product.color,product.price,product.price2,product.price3,product.amount FROM order_dist,order_dist_detail,product WHERE (order_dist.id_dist='$id_dist')AND(order_dist_detail.id_dist=order_dist.id_dist) AND(product.id=order_dist_detail.product_id)") or die ("Query Error : SELECT order_dist and order_dist_detail" . mysql_error() . ">");
$field = mysql_fetch_array($tableorder);
$name_pr=$field["name_pr"];
//echo $name;
$amount1=$field["amount"];
$price2=$field["price2"];
$price3=$field["price3"];
$status=$field["status_pay"];
$status_pro=$field["status_pro"];
$id_pr=$field["id"];
$tableorder1 = mysql_query("SELECT order_dist.id_dist,order_dist.dist_name,order_dist.date,order_dist.datetime FROM order_dist WHERE (order_dist.id_dist='$id_dist')") or die ("Query Error : SELECT order_dist <" . mysql_error() . ">");
$field2 = mysql_fetch_array($tableorder1);
$id_dist=$field2["id_dist"];
$dist_name=$field2["dist_name"];
$name=$field2["name"];
$surname=$field2["surname"];
$address=$field2["address"];
$phone=$field2["phone"];
$date1=$field2["date"];
$total1=$field2["total"];
$status=$field2["status_pay"];
$status_pro=$field2["status_pro"];
$id_pr=$field2["product_id"];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ใบสั่งซื้อสินค้า</title>
<link href="file:///C|/Documents%20and%20Settings/Administrator/Desktop/15-02-55/OTOPSatun/style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.style6 {
font-size: 14px;
font-family: "MS Sans Serif", Tahoma, "Cordia New";
}
.style8 {
font-family: "MS Sans Serif", Tahoma, "Cordia New";
font-size: 16px;
}
.style11 {text-decoration: none; font-family: Tahoma, "MS Sans Serif", CordiaUPC;}
.style12 {font-family: "MS Sans Serif", Tahoma, "Cordia New"}
.style13 {
color: #000000;
text-decoration: none;
font-size: 14px;
font-weight: bold;
}
.style14 {
text-decoration: none;
color: #993399;
font-size: 14px;
font-weight: bold;
}
.style30 {font-size: 14px}
.style33 {text-decoration: none; color: #000000;}
.style34 {
font-family: "MS Sans Serif", Tahoma, "Cordia New";
font-weight: bold;
}
.style48 {font-size: 14px; font-family: "MS Sans Serif", Tahoma, "Cordia New"; font-weight: bold; }
.style46 {text-decoration: none}
.style47 {color: #000000}
.style49 {color: #000000; text-decoration: none; font-size: 12px;}
.style60 {text-decoration: none; font-family: Tahoma, "MS Sans Serif", CordiaUPC; font-size: 18px; }
.style61 {font-size: 16px}
-->
</style>
</head>
<body>
<table width="730" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<th scope="col"> </th>
<th width="355" scope="col"> </th>
<th width="347" scope="col"> </th>
<th scope="col"> </th>
</tr>
<tr>
<th width="15" height="29" scope="col"> </th>
<th colspan="2" align="center" scope="col"><span class="black_14 style8"><span class="style60">ใบสั่งซื้อสินค้า</span></span></th>
<th width="13" scope="col"> </th>
</tr>
<tr>
<td> </td>
<td align="left" valign="top" class="black_13"> </td>
<td align="right" valign="top"> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td align="left" valign="top" class="black_13"><strong class="black_12"><span class="style6">เลขที่ใบสั่งซื้อ</span> <span class="style6">: </span></strong><strong><? echo $id_dist;?></strong></td>
<td align="right" valign="top"><strong class="black_12 style12"><span class="style13 style12 style61"> วันที่ : <?php echo thaicurrentday(date("Y-m-d"), 0, 0, 0); ?> เวลา : <?php echo date("h:i:s"); ?></span><span class="style14"> </span></strong></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td><span class="style30"></span></td>
<td class="style48">ร้านตุ๊กตาโครเชต์</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td><span class="style30"></span></td>
<td colspan="2" class="black_12"><span class="style48">189/2 หมู่ 2 ตำบลธงชัย อำเภอบางสะพาน </span></td>
<td> </td>
</tr>
<tr>
<td><span class="style30"></span></td>
<td class="style48"><span class="style49"><span class="style30">จังหวัดประจวบคีรีขันธ์ </span></span>77190</td>
<td align="right" class="black_12"><div align="left"><span class="style6"><strong><span class="style33"> </span><span class="style33"> </span> </strong></span></div></td>
<td> </td>
</tr>
<tr>
<td><span class="style30"></span></td>
<td><span class="black_12 style12 style30"><span class="style12 style11"><span class="style12 style11"><strong><span class="style11 style12">เบอร์โทรศัพท์ 08-4320-8468 </span></strong></span></span></span></td>
<td align="right"><div align="left"><span class="black_13 style12 style30"><span class="style34"> </span></span></div></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td><span class="style34 style30">ผู้จำหน่าย
<?
if($dist_name=="1"){
echo "ร้านจารุมนต์";
}
if($dist_name=="2"){
echo "ร้านรัตติกาล";
}
if($dist_name=="3"){
echo "ร้านเปิ้ล";
}
if($dist_name=="17"){
echo "ร้านกรองทอง";
}
?>
</span></td>
<td><div align="left"><span class="style6"><strong> </strong></span></div></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2" align="center"><p> </p>
<table width="528" border="1" cellpadding="0" cellspacing="0">
<tr>
<th width="88" align="center" bordercolor="#000000" bgcolor="#E8E8E9" scope="col"><strong class="style6">รหัสสินค้า</strong></th>
<th width="195" align="center" bordercolor="#000000" bgcolor="#E8E8E9" scope="col"><strong class="style6">ชื่อสินค้า</strong></th>
<th width="86" align="center" bordercolor="#000000" bgcolor="#E8E8E9" scope="col"><strong class="style6">ราคา</strong></th>
<th width="56" align="center" bordercolor="#000000" bgcolor="#E8E8E9" scope="col"><strong class="style6">จำนวน</strong></th>
<th width="91" align="center" bordercolor="#000000" bgcolor="#E8E8E9" scope="col"><span class="style6"><strong>รวมเงิน</strong></span></th>
</tr>
<?php
while($field2 = mysql_fetch_array($tableorder))
{
?>
<tr>
<td align="left" bordercolor="#000000" class="black_13 style12">
<div align="center"><span class="style30"> <strong><?php echo $field2["product_id"]; ?></strong></span> </div></td>
<td align="left" bordercolor="#000000" class="black_13 style12 style30"> <strong><?php echo $field2["name_pr"]; ?></strong></td>
<td align="right" bordercolor="#000000" class="black_13 style12 style30"><strong><?php echo number_format( $field2["price2"], 2, ".", ","); ?></strong> </td>
<td align="center" bordercolor="#000000"><span class="black_13 style12 style30"><span class="style12 style30 style11"><strong><?php echo number_format( $field2["amount1"], 0 ,".", ","); ?></strong></span></span></td>
<td width="91" align="right" bordercolor="#000000"><span class="black_13 style12 style30"><span class="style12 style30 style11"><span class="style8"><strong><strong><span class="style33"><span class="style46"><strong><span class="style47"><strong>
<?=number_format($field2["price2"]*$field2["amount1"],2,".",",")?>
</strong></span></strong></span></span></strong></strong></span></span></span></td>
</tr>
<? $sum+=$field2["price2"]*$field2["amount1"];
$i++;
}
?>
</table></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2" align="right"> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2" align="right"><table width="357" border="0" align="right" cellpadding="2" cellspacing="0">
<tr>
<th width="240" height="23" align="right" class="black_14_underline" scope="col"><span class="style6"><strong>ยอดรวมทั้งสิ้น</strong></span></th>
<th width="9" align="center" class="black_13 style12 style30" scope="col">:</th>
<th width="53" align="right" class="black_14" scope="col"><span class="style6"><span class="bubble_14"><strong class="black_13 style12 style30">
<?=number_format($sum ,2, ".", ",");?>
</strong></span></span></th>
<th width="86" align="right" class="black_14" scope="col"><div align="left"><span class="style6"><strong>บาท </strong></span></div></th>
</tr>
</table></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2" align="right"> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2"> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2" align="right"> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2"><div align="center">
<input onclick="javascript:window.print()" type="button" value="พิมพ์" />
<input type="submit" name="Submit" value="กลับหน้าหลัก"onclick="window.location='admin_buy.php'"/>
</div></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2"> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2" align="left">
<!-- แสดงกำหนดวันสิ้นสุดชำระเงินค่ามัดจำ โดยเรียกใช้ฟังก์ชั่น thaicurrentday เพื่อแสดงวันที่ภาษาไทย โดยบวกจำนวนวันที่ต้องชำระเงินมัดจำ สมมติ กำหนดไว้ 5 วัน ก็จะบวกจากวันปัจจุบันไปอีก 5 วัน เช่น 2010-05-02 -> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2" class="style6"> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2"> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2"> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td class="style6"> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td class="style6"> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2" align="center"> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2" align="center"><table width="646" border="0" cellspacing="0" cellpadding="0">
<tr>
<th width="49" align="right" scope="col"><span class="black_13 style12 style30"></span></th>
<th width="4" align="left" scope="col"> </th>
<th width="466" align="left" class="black_13" scope="col"><span class="style6"><span class="black_13 style12 style30"><span class="style34"></span></span></span></th>
</tr>
<tr>
<td> </td>
<td width="4"> </td>
<td align="left" class="black_13"><span class="style6"></span></td>
</tr>
</table></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2" align="center"> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2" align="center"> </td><td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
</table>
</body>
</html>
รบกวนช่วยหนูด้วยมันไม่มีเออเรอเลยคะ่ข้อมูลมันออกปกติแต่มันจะซ้ำรายการสินค้าที่2,3 นะคะ
Tag : PHP, MySQL, HTML/CSS
|
|
|
|
|
|
Date :
2012-02-22 20:37:03 |
By :
friend |
View :
1293 |
Reply :
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ยัง งง ตรงที่บอกว่า ซ้ำเฉพาะรายการที่ 2 ,3 อยู่เลยครับ
ขอรูปตัวอย่าง ผลลัพธ์ที่ ซ้ำหน่อยได้ไหมครับ
|
|
|
|
|
Date :
2012-02-22 21:06:49 |
By :
Likito |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|