พี่ๆช่วยผมหน่อยครับ มันผิดตรงไหน ถึงไม่ยอมเปลี่ยนสถานะให้อะคับ
ต้องการเปลี่ยนสถานะการชำระเงินอะครับ แต่มันไม่ยอมเปลี่ยนให้อะครับ
<?
$action=$_GET[action];
$id_order=$_GET[id_order];
$ref_id_member=$_GET[ref_id_member];
include "connect.php";
$sql="select * from tb_order where id_order='$id_order' ";
$result=mysql_db_query($dbname,$sql);
$rs=mysql_fetch_array($result);
$id_order=$rs[id_order];
$code_order=sprintf("%05d",$id_order);
$ref_id_member=$rs[ref_id_member];
$date_order=$rs[date_order];
$total_order=$rs[total_order];
$pay_status=$rs[pay_status];
$send_status=$rs[send_status];
if($pay_status=="0"){
$status0="selected";
}elseif($pay_status=="1"){
$status1="selected";
}else{
$status="selected";
}
if($send_status=="0"){
$sstatus0="selected";
}elseif($send_status=="1"){
$sstatus1="selected";
}else{
$sstatus="selected";
}
?>
<?
include "../member/connect.php";
$sql="select * from tb_member where id_member='$ref_id_member' ";
$result=mysql_db_query($dbname,$sql);
$rs1=mysql_fetch_array($result);
$ref_id_member=$rs1[id_member];
$name=$rs1[name];
$surname=$rs1[surname];
$address=$rs1[address];
$telephone=$rs1[telephone];
$email=$rs1[email];
?>
<HTML>
<HEAD><TITLE></TITLE></HEAD>
<BODY>
<P><H3>ใบสั่งซื้อสินค้า</H3></P>
<TABLE WIDTH="524" BORDER="1" CELLSPACING="1" CELLPADDING="0">
<TR>
<TD WIDTH="142">รหัสใบสั่งซื้อ : </TD>
<TD width="373"><?=$code_order?></TD>
</TR>
<TR>
<TD>รหัสสมาชิก</TD>
<TD><?=$ref_id_member?></TD>
</TR>
<TR>
<TD WIDTH="142">ชื่อ - สกุล : </TD>
<TD><?=$name?> <?=$surname?></TD>
</TR>
<TR>
<TD>ที่อยู่ :</TD>
<TD><?=$address?></TD>
</TR>
<TR>
<TD>เบอร์โทร :</TD>
<TD><?=$telephone?></TD>
</TR>
<TR>
<TD>e-mail :</TD>
<TD><?=$email?></TD>
</TR>
<TR>
<TD>สั่งซื้อเมื่อ :</TD>
<TD><?=$date_order?></TD>
</TR>
<TR>
<TD>สถานะการชำระเงิน : </TD>
<TD><form action="?action=change_pay_status&id_order=<?=$id_order;?>" method="post" name="ch_p" id="ch_p">
<select name="pay_s" id="pay_s">
<option value="none" <?=$status;?>>โปรดเลือก</option>
<option value="1" <?=$status1;?>>ชำระเงินแล้ว</option>
<option value="0" <?=$status0;?>>ยังไม่ได้ชำระเงิน</option>
</select>
<input type="submit" name="Submit" value="เปลี่ยน"><input type="hidden" name="edit_id" value="<?=$id_order;?>">
</form>
</TD>
</TR>
<TR>
<TD>สถานะการจัดส่ง : </TD>
<TD><form action="?action=change_send_status&id_order=<?=$id_order;?>" method="post" name="ch_s" id="ch_s">
<select name="send_s" id="send_s">
<option value="none" <?=$sstatus;?>>โปรดเลือก</option>
<option value="1" <?=$sstatus1;?>>จัดส่งสินค้าแล้ว</option>
<option value="0" <?=$sstatus0;?>>ยังไม่ได้จัดส่งสินค้า</option>
</select>
<input type="submit" name="Submit2" value="เปลี่ยน"><input type="hidden" name="edit_id" value="<?=$id_order;?>">
</form>
</TD>
</TR>
</TABLE>
<?
if($action=="change_pay_status"){
$pay_s=$_POST[pay_s];
$edit_id=$_POST[edit_id];
$UP="UPDATE tb_order SET pay_status='$pay_s' WHERE id_order='$edit_id' ";
if(mysql_db_query($dbname,$UP)){
echo"<script>alert('แก้ไขเรียบร้อย');</script>";
echo"<meta http-equiv=\"refresh\" content=\"0;URL=admin_order_view.php&id_order=$edit_id\" />";
}else{
echo"<script>alert('ไม่สามารถแก้ไขได้ในขณะนี้');</script>";
echo"<meta http-equiv=\"refresh\" content=\"0;URL=admin_order_view.php?id_order=$edit_id\" />";
}
}elseif($action=="change_send_status"){
$send_s=$_POST[send_s];
$edit_id=$_POST[edit_id];
$UP="UPDATE tb_order SET send_status='$send_s' WHERE id_order='$edit_id' ";
if(mysql_db_query($dbname,$UP)){
echo"<script>alert('แก้ไขเรียบร้อย');</script>";
echo"<meta http-equiv=\"refresh\" content=\"0;URL=admin_order_view.php?id_order=$edit_id\" />";
}else{
echo"<script>alert('ไม่สามารถแก้ไขได้ในขณะนี้');</script>";
echo"<meta http-equiv=\"refresh\" content=\"0;URL=admin_order_view.php?id_order=$edit_id\" />";
}
}
?>
<BR>
<TABLE WIDTH="600" BORDER="1">
<TR BGCOLOR="#FFCC66">
<TD WIDTH="8%"><div align="center"><B>รหัสสินค้า</B></div></TD>
<TD WIDTH="60%"><div align="center"><B>ชื่อสินค้า</B></div></TD>
<TD WIDTH="10%"><div align="center"><B>จำนวน</B></div></TD>
<TD WIDTH="10%"><div align="center"><B>ราคา</B></div></TD>
<TD WIDTH="12%"><div align="center"><B>รวม</B></div></TD>
</TR>
<?
include "connect.php";
$sql="SELECT ref_id_prd,name_prd,number,price FROM tb_product, tb_order_detail WHERE id_prd = ref_id_prd and ref_id_order='$id_order' ";
$result=mysql_db_query($dbname,$sql);
while ($rs=mysql_fetch_array($result)) {
$ref_id_prd=$rs[ref_id_prd];
$code=sprintf("%05d",$ref_id_prd);
$name_prd=$rs[name_prd];
$number=$rs[number];
$price=$rs[price];
$total_unit=$number*$price;
$total=$total+$total_unit;
echo "
<TR>
<TD>$code</TD>
<TD>$name_prd</TD>
<TD><CENTER>$number</CENTER></TD>
<TD><CENTER>$price</CENTER></TD>
<TD><CENTER>$total_unit</CENTER></TD>
</TR>";
}
?>
</TABLE><BR>
<? echo "จำนวนเงินทั้งหมด $total บาท"; ?><BR>
</BODY>
</HTML>Tag : - - - -
Date :
2009-12-22 22:00:31
By :
jatuphol09
View :
1074
Reply :
19
มันฟ้องตรง 'ไม่สามารถแก้ไขได้ในขณะนี้' ตรงนั้นเลยครับ ทั้งสองที่เลย ช่วยดูให้ทีนะครับ
Date :
2009-12-22 22:08:19
By :
jatuphol09
Code (PHP)
$action=$_GET[action];
$id_order=$_GET[id_order];
$ref_id_member=$_GET[ref_id_member];
เปลี่ยนมาเป็น
Code (PHP)
$action=$_GET['action'];
$id_order=$_GET['id_order'];
$ref_id_member=$_GET['ref_id_member'];
$send_s=$_POST['send_s'];
$edit_id=$_POST['edit_id'];
// และตัวแปรอื่นๆ
Date :
2009-12-23 00:10:45
By :
peterxp
เปลี่ยนแล้วยังไม่ได้เลยครับ
Date :
2009-12-23 14:02:14
By :
jatuphol09
ลอง debug ดูครับ
echo sql ออกมาดู เช่น echo $UP;
อย่าเพิ่งเรียก javascript เด้งดึ๋งดั๋งมาโชว์ คุณจะดูผลลัพธ์มันไม่ทัน
//$UP="UPDATE tb_order SET pay_status='$pay_s' WHERE id_order='$edit_id' ";
$UP="UPDATE tb_order SET pay_status='".$pay_s."' WHERE id_order='".$edit_id."' ";
debug เสร็จเรียบร้อยค่อยเรียกใช้ javascript ดังใจท่าน
Code (PHP)
<?
if($action=="change_pay_status"){
$pay_s=$_POST[pay_s];
$edit_id=$_POST[edit_id];
echo $UP="UPDATE tb_order SET pay_status='".$pay_s."' WHERE id_order='".$edit_id."' ";
if(mysql_db_query($dbname,$UP)){
// อย่าเพิ่งเรียก javascript ให้ echo ออกมาดูก่อน
echo " update ได้แว้ว ";
//echo"<script>alert('แก้ไขเรียบร้อย');</script>";
//echo"<meta http-equiv=\"refresh\" content=\"0;URL=admin_order_view.php&id_order=$edit_id\" />";
}else{
echo " เสียใจ update ยังไม่ได้ ";
//echo"<script>alert('ไม่สามารถแก้ไขได้ในขณะนี้');</script>";
//echo"<meta http-equiv=\"refresh\" content=\"0;URL=admin_order_view.php?id_order=$edit_id\" />";
}
}elseif($action=="change_send_status"){
$send_s=$_POST[send_s];
$edit_id=$_POST[edit_id];
echo $UP="UPDATE tb_order SET pay_status='".$pay_s."' WHERE id_order='".$edit_id."' ";
if(mysql_db_query($dbname,$UP)){
// อย่าเพิ่งเรียก javascript ให้ echo ออกมาดูก่อน
echo " update ได้แว้ว ";
//echo"<script>alert('แก้ไขเรียบร้อย');</script>";
//echo"<meta http-equiv=\"refresh\" content=\"0;URL=admin_order_view.php?id_order=$edit_id\" />";
}else{
echo " เสียใจ update ยังไม่ได้ ";
//echo"<script>alert('ไม่สามารถแก้ไขได้ในขณะนี้');</script>";
//echo"<meta http-equiv=\"refresh\" content=\"0;URL=admin_order_view.php?id_order=$edit_id\" />";
}
}
?>
Date :
2009-12-23 14:48:16
By :
peterxp
ครับผม แล้วยังงัยต่อครับ มันก้อฟ้องว่า $up=" update tb_order...." ไม่ได้ครับ
Date :
2009-12-23 15:01:31
By :
jatuphol09
copy มาให้หมดหน่อยได้ไหมครับ errror เอามาทั้งแถวเลย จะได้รู้ว่าตัวแปรตัวไหนหายไปบ้าง
Date :
2009-12-23 15:04:10
By :
peterxp
ค่าที่เราได้เลือกเปลี่ยน ก้อเข้า
update tb_order set pay_status='1' where id_order='25' update ไม่สำเร็จ
update tb_order set send_status='1' where id_order='25' update ไม่สำเร็จ
Date :
2009-12-23 15:06:35
By :
jatuphol09
กรรมลืมดู
<form action="?action=change_send_status&id_order=<?=$id_order;?>" method="post" name="ch_s" id="ch_s">
ถ้าเป็นอย่างนี้เวลารับตัวแปรต้อง
$action = $_GET['action']; // ไม่ใช่ $_POST['action']
$id_order= $_GET['id_order']; // ไม่ใช่ $_POST['id_order']
// วิธีสังเกตุ ตัวไหนมากับ url ให้รับด้วย $_GET['xyz'];
Date :
2009-12-23 15:09:02
By :
peterxp
เปลี่ยนแล้วครับก็ยังไม่ได้อีก
Date :
2009-12-23 15:14:44
By :
jatuphol09
ว่าแต่ php version ไรเหรอ
mysql_db_query() selects a database, and executes a query on it.
Warning
This function has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 6.0.0. Relying on this feature is highly discouraged.
แสดงว่า post get ถูกแล้วเหลือ check ค่า true false จาก mysql_db_query()
ลองมาใช้แบบนี้ดูสิ
Code (PHP)
$UP= "UPDATE tb_order SET pay_status='".$pay_s."' WHERE id_order='".$edit_id."' ";
$result = mysql_query($UP, $link);
if (!$result) {
// อย่าเพิ่งเรียก javascript ให้ echo ออกมาดูก่อน
echo " update ได้แว้ว ";
//echo"<script>alert('แก้ไขเรียบร้อย');</script>";
//echo"<meta http-equiv=\"refresh\" content=\"0;URL=admin_order_view.php?id_order=$edit_id\" />";
exit;
}else{
echo " เสียใจ update ยังไม่ได้ ";
//echo"<script>alert('ไม่สามารถแก้ไขได้ในขณะนี้');</script>";
//echo"<meta http-equiv=\"refresh\" content=\"0;URL=admin_order_view.php?id_order=$edit_id\" />";
exit;
}
Date :
2009-12-23 15:25:03
By :
peterxp
ไม่ได้อะครับ
Date :
2009-12-23 15:34:46
By :
jatuphol09
เอ่อไม่ได้นี่เป็นเพราะไรเหรอครับ กรุณาระบุเหตุผลครับ จะได้ช่วยแก้ไดถูกทาง
Date :
2009-12-23 15:40:42
By :
peterxp
$UP="UPDATE tb_order SET pay_status='$pay_s' WHERE id_order='$edit_id' ";
if(mysql_db_query($dbname,$UP)){
..}
else{
mysql_error(); // เพิ่มตรงนี้ไปครับ เช็คว่า sql กำลังฟ้อง error อะไรอยู่
}
Date :
2009-12-23 15:51:22
By :
xbeginner01
ไม่ฟ้องไรเลย ครับ โชว์แต่ค่าที่เราได้เปลี่ยน
update tb_order set pay_status='1' where id_order='25' update ไม่สำเร็จ
update tb_order set send_status='1' where id_order='25' update ไม่สำเร็จ
นอกนั้นก้อไม่มีไรเลยครับ
Date :
2009-12-23 15:57:02
By :
jatuphol09
เราจะดูยังงัย ว่าเป็น php version อะไร
Date :
2009-12-23 16:07:25
By :
jatuphol09
อึ่มๆ http://127.0.0.1/ หรือ http://localhost/
Date :
2009-12-23 16:10:44
By :
peterxp
v. 5.2.6
Date :
2009-12-23 16:13:13
By :
jatuphol09
ค่าไม่เข้าในฐานข้อมูล งงเลยครับ
Date :
2009-12-23 17:24:11
By :
jatuphol09
Load balance : Server 03