|
|
|
สอบถามเกี่ยวกับการเพิ่มข้อมูลลงในฐานข้อมูล กำหนดให้ not null แล้ว แต่ลองไม่เลือกตัวเลือกที่กำหนด กลับเก็บเป็น 0 แทน รบกวนดูโค้ดให้หน่อยนะคะ |
|
|
|
|
|
|
|
ถ้าคุณกำหนดในส่วนของชนิดข้อมูลเป็น INT หรือเป็นตัวเลข ในส่วนนี้ถ้าไม่มีค่า ระบบจะเซ็ตให้เป็น 0 อัตโนมัติ(ตามความเข้าใจผมนะ ^_^)
|
|
|
|
|
Date :
2013-06-21 12:30:19 |
By :
arm8957 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ต้องทำยังไงคะ จะให้มันเก็บข้อมูลเฉพาะ 1-5 ไม่มี 0 หรือค่าว่าง
|
|
|
|
|
Date :
2013-06-21 13:28:13 |
By :
gosling |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
หรืออาจจะเป็นที่คำสั่ง SQL ที่ใช้ INSERT (คิดว่านะ)
คือหน้าแรกไม่ได้เลือกค่า สมมุติตัวแปลชื่อ ch1
แล้วหน้า 2 ก็ insert ลงไป
Code (PHP)
insert into table values ( 'aa' ,$_POST['ch1'] , 'bb');
มันก็จะออกมาเป็น
Code (PHP)
insert into table values ( 'aa' ,0, 'bb');
เพราะ PHP มันแปลงค่าออกมาให้ คือ ch1 มันจะมีค่าเป็น
ch1=0 ชนิดตัวเลข
ch1=NULL ชนิดObject
ch1="" ชนิดข้อความ
มันก็คือค่าเดียวกัน
วิธีแก้
1.แก้แบบ PHP(ที่หน้า Insert) ก็เช็ค ch1 ก่อนว่ามันมีค่าหรือไม่แล้วก็จัดการกับมัน
2.แก้แบบ Javascript (ที่หน้าแรก หน้าที่ให้เลือกนั่นหละ) เขียนตรวจสอบว่าเช็คครบหรือยังถ้ายังก็ไม่ต้องส่งค่าไปหน้า Insert
นี่เป็นแค่แนวทาง อาจจะเกิดจากสาเหตุอื่นอีกก็ได้
|
|
|
|
|
Date :
2013-06-21 14:16:08 |
By :
RootElement@KMUTNB |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตอบความคิดเห็นที่ : 4 เขียนโดย : RootElement@KMUTNB เมื่อวันที่ 2013-06-21 14:16:08
รายละเอียดของการตอบ ::
นี่โค้ดหน้าเซฟค่ะ ต้องแก้ยังไงอ่าคะ
s2_save.php
Code (PHP)
<?php
$ch1=$_POST['ch1'];
$ch2=$_POST['ch2'];
$ch3=$_POST['ch3'];
$ch4=$_POST['ch4'];
$ch5=$_POST['ch5'];
$ch6=$_POST['ch6'];
$ch7=$_POST['ch7'];
$ch8=$_POST['ch8'];
$ch9=$_POST['ch9'];
$ch10=$_POST['ch10'];
$ch11=$_POST['ch11'];
$ch12=$_POST['ch12'];
$ch13=$_POST['ch13'];
$ch14=$_POST['ch14'];
$ch15=$_POST['ch15'];
$ch16=$_POST['ch16'];
$ch17=$_POST['ch17'];
$ch18=$_POST['ch18'];
$ch19=$_POST['ch19'];
$ch20=$_POST['ch20'];
include ("connect.php");
$sql="insert into ass_stu2 (stu2_id, stu2_q1, stu2_q2, stu2_q3, stu2_q4, stu2_q5, stu2_q6, stu2_q7, stu2_q8, stu2_q9, stu2_q10, stu2_q11, stu2_q12, stu2_q13, stu2_q14, stu2_q15, stu2_q16, stu2_q17, stu2_q18, stu2_q19, stu2_q20) values (null,'$ch1','$ch2','$ch3','$ch4','$ch5','$ch6','$ch7', '$ch8','$ch9','$ch10','$ch11','$ch12','$ch13','$ch14','$ch15','$ch16','$ch17' ,'$ch18','$ch19','$ch20')";
$result=mysql_db_query($db_name,$sql);
if (!$result) {
echo "<H3>NONONO!!!!!!!</H3>";
exit;
}
echo "<H3>YEAH!!!!!!!!</H3>";
?>
|
|
|
|
|
Date :
2013-06-21 15:03:47 |
By :
gosling |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Date :
2013-06-21 23:19:23 |
By :
gosling |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มันเป็น 0 ก็ถูกแล้วครับ มันไม่ allow null นิ
ต้องหันมา valid ข้อมูลก่อนบันทึกแทนนะ
|
|
|
|
|
Date :
2013-06-21 23:44:00 |
By :
PlaKriM |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าชนิดข้อมูลของฟิลด์ stu2_q1 เป็นตัวเลข (INT) (รวมถึงตัวที่ stu2_q2 - stu2_q20)
ให้เปลี่ยนจาก '$ch1' เป็น $ch1 ไม่ต้องมี ' คร่อมครับ ($ch2 - $ch20 ก็เหมือนกัน)
ตอนรับค่า $_POST ก็ให้เช็กค่าด้วย
Code (PHP)
$ch1 = isset($_POST['ch1']) && $_POST['ch1'] != '' ? $_POST['ch1'] : 'NULL';
($ch2 - $ch20 ก็เหมือนกัน)
|
|
|
|
|
Date :
2013-06-22 08:53:32 |
By :
CBM |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมว่าเก็บ 0 ก็ได้แล้วนะครับ มีปัญหาตรงไหนคับ มันเป็น 0 คือค่าว่าง ตอนโชว์ ก็บอกว่า ถ้าเป็น ค่าว่าง หรือ น้อยกว่า <1 ก็ไม่ต้องให้โชว์คับ
|
|
|
|
|
Date :
2013-06-22 11:32:26 |
By :
teez1232002 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Date :
2013-06-23 21:11:37 |
By :
gosling |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ช่วยหน่อยนะคะ
|
|
|
|
|
Date :
2013-06-24 11:18:53 |
By :
gosling |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ก็อบมาลืมพิมพ์เพิ่ม
Code (PHP)
<input type="radio" name="<? echo "ch".$i; ?>" value="5" checked>
|
|
|
|
|
Date :
2013-06-24 11:51:11 |
By :
RootElement@KMUTNB |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้างั้นเอาแบบนี้เลยแล้วกันครับ ถ้ายังเขียน javascript ไม่ค่อยได้
ก็ให้เช็คค่าแบบ PHP เลยแล้วกันครับ
ในหน้า insert
Code (PHP)
if($_POST['ch1'] ==NULL){
เช็คไม่ครบ
}
else{
เช็คครบแล้ว
}
น่าจะมีสักตัวที่เช็คได้
$_POST['ch1'] ==NULL
$_POST['ch1'] ==0
$_POST['ch1'] ==""
*ผมไม่ได้เขียนให้ทั้งหมดนะ ลองปรับๆเอา
**แต่ก่อนผมก็ทำแบบนี้หละ ยังไงก็ลองศึกษา Javascrip Jquery ดูนะครับ มันช่วยได้เยอะ
|
|
|
|
|
Date :
2013-06-24 16:24:14 |
By :
RootElement@KMUTNB |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|