|
|
|
ขอคำแนะนำเรื่องการออกแบบ database ด้วยครับบ |
|
|
|
|
|
|
|
คือผมออกแบบ ตารางมาหนึ่งตารางเพื่อมาองรับ checkbox ครับซึ่งก็คือ
tb_chk
******************************
Id | val
******************************
1 | 1,1,1,1,1
******************************
เพิ่มข้อมูลแบบ
Code (PHP)
$val = $_POST["chk1"].",".$_POST["chk2"].",".$_POST["chk3"].",".$_POST["chk4"].",".$_POST["chk5"];
$sql =" INSERT INTO tb_chk ( val ) ";
$sql.=" VALUES ";
$sql.=" ('".$val."') ";
$qr = mysql_query($sql) ro die (mysql_error());
Code (PHP)
$sql =" SEELCT val FROM tb_chk ";
$qr = mysql_query($sql) or die (mysql_error());
$fetch = mysql_fetch_assoc($qr);
$chk = explode(",", $fetch["val"]);
<input type="checkbox" name="chk1" value="1" <?php if($val[0] == 1){echo "checked";} />
อยากขอคำแนะว่าออกแบบ Column เพื่อเก็บข้อมูลในลักษณะอย่างงี้จะดีหรือไม่ดีอย่างไรครับ ที่ออกแบบ แบบนี้เพราะไม่อยากใช้ Column ในการเก็บค่า checkbox มากเกินไปครับ รบกวนแนะนำด้วยนะครับ
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2013-02-13 11:42:19 |
By :
popnakub |
View :
778 |
Reply :
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ข้อแนะนำ
1. ถ้าเก็บตารางของคุณ
- ถ้าสมมุติ checkbox บางตัว user ไม่ได้ทำการ checked คุณต้องเขียน if..else กำกับ 0,1
- ในการ select คุณต้อง explode ค่าออกมาเป็นส่วนๆ
2. ถ้าเก็บแบบแยก column โดยชัดเจน
+ column แบ่งชัดเจน ไม่ต้อง if..else และ explode
*** หมายเหตุ แต่อย่างเนิง ขึ้นอยู่ครับผู้เขียนด้วยครับ
|
ประวัติการแก้ไข 2013-02-13 11:54:40
|
|
|
|
Date :
2013-02-13 11:54:04 |
By :
Ex-[S]i[L]e[N]t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คิดไว้ประมาณนั้นครับ ขอบคุณสำหรับคำแนะนำครับ
|
|
|
|
|
Date :
2013-02-13 13:15:45 |
By :
popnakub |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณที่แนะนำครับ
|
|
|
|
|
Date :
2013-02-13 16:49:19 |
By :
popnakub |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|