ช่วยดูโค้ดให้หน่อยครับ รันบนเครื่องผม ไม่มีปัญหา แต่รันบนโฮสท์ มีปัญหาครับ
ขอถามท่านผู้รู้ช่วยดูให้หน่อยครับ ตามโค้ดด้านล่างเลย
$name=$_POST[name];
$randnum=$_POST[randnum];
$email=$_POST[email];
$buyer=$_POST[buyer];
$comment=$_POST[comment];
$address=$_POST[address];
$zipcode=$_POST[zipcode];
$total_order=$_POST[total_order];
$amount=$_POST[amount];
$discount=$_POST[discount];
$address = "$_POST[address] ถ.$_POST[road] ต.$_POST[district] อ.$_POST[city] จ.$_POST[province] ";
$randnum = rand(1111,9999);
$sql_numcode="select * from tb_order";
$db_queryr=mysql_db_query($db,$sql_numcode);
$result_numcode=mysql_fetch_array($db_queryr);
$num_rows_code=mysql_num_rows($db_queryr);
$run_number = $num_rows_code+1;
$rand_num=sprintf("%04d",$run_number);
/*
$sql_buyer="select * from member where usermem='$usermem' ";
$result=mysql_db_query($db,$sql_buyer);
$rs=mysql_fetch_array($result);
*/
//$datenow=date("Y-m-d");
$dateorder = date("$e_date");
$dateime1 = $dateorder;
$date = explode('/', $dateime1);
$newdate = implode('-', array($date[2], $date[1], $date[0]));
$sql="INSERT INTO tb_order values(null, '$randnum','$name', '$email', '$buyer','$comment', '$address', '$zipcode', '$total_order', '$amount', '$discount', '$newdate','','','')";
mysql_db_query($db,$sql);
$sql2="SELECT max(id_order) as id_order FROM tb_order ";
$result2=mysql_db_query($db,$sql2);
$row=mysql_fetch_array($result2);
for ($i=0;$i<count($sess_idproduct);$i++)
{
$sql3= insert("ref_id_order,ref_id_prd,number,price"," '$row[0]','$sess_idproduct[$i]','$sess_num[$i]','$sess_price[$i]' ","tb_order_detail");
mysql_db_query($db,$sql3);
/*
$sql3="INSERT INTO tb_order_detail values('$row[0]', '$sess_idproduct[$i]', '$sess_num[$i]', '$sess_price[$i]') ";
mysql_db_query($db,$sql3);
*/
$sql_data = "update products set amount = amount-$sess_num[$i] where id = '$sess_idproduct[$i]'";
mysql_db_query($db,$sql_data);
//$sql_update_address = "update tb_order set address2 = '$address_new' where refid = '$randnum'";
//mysql_query($sql_update_address);
$sql_stats = "update products set stats = stats+1 where id = '$sess_idproduct[$i]'";
mysql_db_query($db,$sql_stats);
}
// -----------------send mail--------------------------
ช่วยดูโค้ดให้หน่อยครับ รันบนเครื่องผม ไม่มีปัญหา แต่รันบนโฮสท์ มีปัญหาครับ คือมันเก็บแค่ record แรก เข้า database เช่นสั่งหนังสือ 10 เล่ม ใน list shopping cart มันจะเข้าแค่ หนังสือ เล่มเดียวครับ
ปัญหา มันน่าจะเกิดจาก ตรงนี้หรือเปล่าครับ
$sql2="SELECT max(id_order) as id_order FROM tb_order ";
$result2=mysql_db_query($db,$sql2);
$row=mysql_fetch_array($result2);
for ($i=0;$i<count($sess_idproduct);$i++)
{
$sql3= insert("ref_id_order,ref_id_prd,number,price"," '$row[0]','$sess_idproduct[$i]','$sess_num[$i]','$sess_price[$i]' ","tb_order_detail");
mysql_db_query($db,$sql3);
}
หรือว่าโฮสท์มันขาดอะไรไปสักอย่าง เพราะที่โน๊ตบุคผม รันผ่านเลยครับ
ท่านโปรแกรมเมอร์ช่วยดูให้ด้วยครับผม
ขอบคุณล่วงหน้าครับTag : PHP, MySQL, CakePHP
Date :
2011-08-01 11:07:29
By :
คนกำลังหัดเดิน
View :
841
Reply :
10
register_global = off
ให้ใช้ $_SESSION['abc'] แทน $abc ครับ
Date :
2011-08-01 11:23:30
By :
ikikkok
php.ini ไม่ต้องแก้ register_globals = On ก็เรียกใช้ตัวแปรแบบเดิมๆได้
ปกติแล้วเวลาทำการติดตั้ง php ค่า default ของ register_globals จะเป็น Off แต่บางครั้งเราก็มีความจำเป็นที่เราจะต้องการใช้งาน ในแบบที่ register_globals=On เช่น ไม่อยากไปแก้ code โปรแกรมเดิมที่เขียนไว้ตั้งนานแล้วบ้างล่ะ แต่จะทำยังไง ถ้าหากว่า server ที่เราจำเป็นต้องใช้งานเค้ากำหนด register_globals มาให้เป็น Off ล่ะจะทำยังไง
อ้างอิง
http://www.unzeen.com/archives/201
ประวัติการแก้ไข 2011-08-01 11:30:43
Date :
2011-08-01 11:29:59
By :
noomthapla
เขียนให้ติดเป็นนิสัยจะดีที่สุด เพราะถ้าต้องมา extract หรือ each ทุกครั้งที่โหลดเพจ ถ้าเกิดเป็น app ที่คนใช้เยอะ อาจจะเดี้ยงได้
Date :
2011-08-01 11:47:18
By :
ikikkok
เรียนถามท่านผู้รู้ อีกทีครับ ต้องไปแก้ไฟล์ .htaccess ที่โฮสท์เค้าใช่มัยครับ แต่ที่โฮสท์ ไฟล์นี้ ไม่มีค่าอะไรเลยนะครับ
ส่วนที่โค้ดผม เป็น php_flag register_globals On คือ ต้องแำก้อย่างไรครับ
[font=Verdana]ส่วน register_global = off
ให้ใช้ $_SESSION['abc'] แทน $abc ครับ[/font] ช่วยยกตัวอย่างให้ดูได้มัยครับ
ผมกำลังหัดเขียนนะครับ ไม่ได้เรียนมา เลยออกแนวมั่วๆ ครับ ต้องขออภัยอย่างสูง
แต่จะติดตามเว๊บนี้ตลอดไปครับ
ขอบคุณล่วงหน้าครับ
Date :
2011-08-01 12:48:02
By :
คนกำลังหัดเดิน
ผมลองใส่คำนี้ เว๊บเข้าไม่ได้เลยครับ ขึ้น error 404
Date :
2011-08-01 13:09:31
By :
คนกำลังหัดเดิน
ผมลองใส่คำนี้ php_flag register_globals=On ใน .htaccess เว๊บเข้าไม่ได้เลยครับ ขึ้น error 404
Date :
2011-08-01 13:10:51
By :
คนกำลังหัดเดิน
ผมลองแ้ก้ตามที่แนะนำ แล้วนะครับ มาถึงขั้นตอนหน้า cart.php
มีปัญหาตรงนี้ครับ
echo "
<TR bgcolor='#FFFFFF'>
<TD><CENTER>
<INPUT TYPE='checkbox' NAME='prd_del[]' VALUE='$sess_idproduct[$i] '>
</CENTER></TD>
<TD><font size=1 color=#ff8300> $_SESSION['sess_code[$i]'] </font><a href=ShowProducts.php?PrdID=$_SESSION['sess_idproduct[$i]'];><font size=1 color=#D7006B> $_SESSION['sess_name_prd[$i]'] </font> </a></TD>
<TD><CENTER>
<INPUT TYPE='text' NAME='prd_num[]' VALUE='$sess_num[$i]' SIZE='5' maxlength='5' onkeypress='return bannedKey(event)'>
</CENTER></TD>
<TD><CENTER><font size=2 color=#003366>$sess_price[$i]</font></CENTER></TD>
<TD><div align=CENTER><font size=2 color=#003366>$total_unit</font></div></TD>
</TR>";
มันฟ้องแบบนี้ครับ ไม่ทราบว่าจะแก้ยังงัย Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\AppServ\www\mobile\Cart.php on line 287
แก้นานแล้วครับ ยังไม่ได้เลย หาใน google ลองทำตามก็ไม่ได้ ช่วยทีด้วยครับ
Date :
2011-08-01 16:14:52
By :
คนกำลังหัดเดิน
น่าจะตรงนี้ ครับ $_SESSION['sess_idproduct[$i]'] อันเดิมเป็นแบบนี้ $sess_idproduct[$i]
ขอบคุณครับ
Date :
2011-08-01 16:18:05
By :
คนกำลังหัดเดิน
$_SESSION['sess_idproduct'][$i]
Date :
2011-08-01 17:29:24
By :
ikikkok
Load balance : Server 02