GORAGOD.com

freelance, web developer, web designer, hosting, domain name

นำค่าจาก session ลงฐานข้อมูล ไม่ได้ค่ะ

คือว่า....ต้องการนำค่าจาก session เก็บลงฐานข้อมูลค่ะ  
ตอนนี้สามารถแสดงข้อมูลที่ต้องการเก็บได้แล้วค่ะ

แต่จะเอาเก็บลงฐานข้อมูลก็ไม่ลงซะงั้น  ทำทุกวิถีทางเท่าที่เข้าใจแล้วค่ะ

ยังไงช่วยชี้แนะหน่อยน่ะค่ะ


<?
session_start();
$_SESSION["pland_id"] = $_POST["pland_id"];
$pland_id = $_SESSION["pland_id"];
echo $pland_id; //แสดงค่าที่ต้องการเก็บ
?>

แบบนี้ก็ไม่ได้
 $sql = "insert into design (pland_id,type_id,amount) values('".$_SESSION["pland_id"]."','$type_id', '$amount' )";

แบบนี้ก็ไม่ได้
 $sql = "insert into design (pland_id,type_id,amount) values('$pland_id','$type_id', '$amount' )";


แต่แบบนี้ได้ทันทีเลยค่ะ
 $sql = "insert into design (pland_id,type_id,amount) values('005','$type_id', '$amount' )";




16 ธ.ค. 2552 3 5,222

เก็บ ตัวแปล session  $pland_id ไว้ใน textbox แล้วส่งไปอีกที

<?
session_start();
$_SESSION["pland_id"] = $_POST["pland_id"];
$pland_id = $_SESSION["pland_id"];
echo $pland_id; //แสดงค่าที่ต้องการเก็บ
?>



<input type="text" name="session" value="<?php echo $pland_id ; ?>" size="32">

ถ้าไม่อยากให้เห็น textbox ก็  hidden

<input type="hidden" name="session" value="<?php echo $pland_id ; ?>" size="32">


 
$sql = "insert into design (pland_id,type_id,amount) values('$_POST[session]','$type_id', '$amount' )";
#1

กำหนด pland_id เป็นอะไรไว้ล่ะ ถ้าต้องใส่เป็น '003' คงเป็น varchar แน่เลย เพราะมี 0 นำหน้า

เปลี่ยนเป็น int ได้มั้ย จะได้เก็บเป็นตัวเลข หาก 0 ด้านหน้าไม่มีความจำเป็นอะไร

ถ้าไม่ได้ให้ลอง เติม 0 ให้ครบก่อน แล้วค่อยบันทึกก็ได้

คำสั่งที่ใช้ก็ไม่เห็นที่ผิด ความผิดพลาดอาจอยู่ที่ mysql ให้ลอง echo เอาคำสั่ง SQL ออกมาดู (ผมบอกบ่อยมาก) แล้วนำคำสั่งไปทดสอบบน phpmyadmin เพื่อดูว่า phpmyadmin จะแจ้งข้อผิดพลาดอะไร
#2

ขอบคุณมากค่ะ

สำหรับคำตอบ

แต่ก็ทำตามทุกอย่างแล้วมันก็ไม่ได้อยู่ดี

เดี่ยวจะกลับไปดูใหม่ให้ดี..อีกทีค่ะ

ขอบคุณค่ะ
#3
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 2M
^