 |
|
เค้าเขียนเป็นไฟล์ class.mysql.php ผมอ่านไม่เข้า เอาไปใช้ไม่เป็นครับ
//เพิ่มข้อมูล
//$db->add_db("table",array("field"=>"value"));
function add_db($table="table", $data="data"){
$key = array_keys($data);
$value = array_values($data);
$sumdata = count($key);
for ($i=0;$i<$sumdata;$i++)
{
if (empty($add)){
$add="(";
}else{
$add=$add.",";
}
if (empty($val)){
$val="(";
}else{
$val=$val.",";
}
$add=$add.$key[$i];
$val=$val."'".$value[$i]."'";
}
$add=$add.")";
$val=$val.")";
$sql="INSERT INTO ".$table." ".$add." VALUES ".$val;
if (mysql_query($sql)){
return true;
}else{
$this->_error();
return false;
}
}
อันนี้ที่เอาไปใช ้
$date = date("j/n/").(date("Y")) ;
$detail = eregi_replace(chr(13),"<br>",$_POST[DETAIL]);
//ทำการเพิ่มข้อมูลลงดาต้าเบส
$db->connectdb(DB_NAME,DB_USERNAME,DB_PASSWORD);
$db->add_db(TB_RBOOK,array(
"book_date"=>"$date",
"staff_no"=>" ".$arr[member][id]."",
"startDate"=>"$_POST[startDate]",
"startTime"=>"$_POST[startTime]",
"endDate"=>"$_POST[endDate]",
"endTime"=>"$_POST[endTime]",
"subject"=>"$_POST[subject]",
"detail"=>"$_POST[detail]",
"user"=>"$_POST[user]",
"room_no"=>"$_POST[room_id]",
));
// ติดปัญหาตรงนี้ครับ
while(list($key, $value) = each ($_POST['noass'])){
$db->connectdb(DB_NAME,DB_USERNAME,DB_PASSWORD);
$db->add_db(TB_ABOOK,array(
" bookroom_no" => "".$_POST[room_id]."" ,
"ass_no" =>"$value",
));
ผมมี อีกตารางที่ประกอบด้วย
ิbooroom_no รับค่ามาจากการเลือกห้องเรียน $_POST[room_id]
ass_no รับค่ามาจาก checkbox ที่เป็น array รับค่าหมายเลขอุปกรณ์มา 'noass'
number รับค่าจาก textbox คือจำนวนของอุปกรณ์ที่ใช้ร่วมกับการจองห้อง
/// ความหมายก็คือการจองห้องจะมีการเลือกอุปกรณ์โสตฯเพิ่มเติม โดยเลือกรายการจาก checkbox จะกรอกจำนวนที่ต้องการใช้ textbox(noass)
เมื่อเก็บข้อมูลจะต้องเพิ่มรายละเอียดแบบ array ครับเป็น
สมมุติ
หมายเลขการจอง อุปกณ์หมายเลข จำนวน
3 1 1
3 5 10
3 7 2
4 1 1
4 2 2
4 3 1
4 5 20
มันก็จะมีที่ต้องเก็บ 3 ข้อมูล คือ
booroom_no (หมายเลขการจอง)
ass_no (หมายเลขอุปกรณ์ที่ใช้ร่วมกับการจองห้องนั้น)
number (จำนวนอุปกณ์)
จากโค๊ดนี้
// ติดปัญหาตรงนี้ครับ
while(list($key, $value) = each ($_POST['noass'])){
$db->connectdb(DB_NAME,DB_USERNAME,DB_PASSWORD);
$db->add_db(TB_ABOOK,array(
" bookroom_no" => "".$_POST[room_id]."" ,
"ass_no" =>"$value",
));
จะเห็นว่าผมเขียนเก็บได้แค่ bookroom_no กับ noass คือได้เฉพาะ หมายเลขการจอง กับ หมายเลขอุปกรณ์ แต่จำนวนจากการกรอกจะไม่มี เพราะเขียนไม่เป็นครับ ค่าที่ได้ก็เลยเป็น
หมายเลขการจอง อุปกณ์หมายเลข จำนวน
3 1 0
3 5 0
3 7 0
4 1 0
4 2 0
4 3 0
4 5 0
คำถามคือ ผมจะเขียนโค๊ดยังงัยให้เก็บ 3 ตัวนี้ โดยมีลักษณะเหมือนโค๊ดข้างบน ตรง while โค๊ดเอาระบบอื่นมาแปลงครับ ไม่ค่อยเก่ง php เลย รบกวนผู้รู้ตอบที่ครับ เพิ่งหัดเขียน php
Tag : - - - -
|
|
 |
 |
 |
 |
Date :
12 ก.ค. 2550 08:59:35 |
By :
tuktuk |
View :
1815 |
Reply :
0 |
|
 |
 |
 |
 |
|
|
|
 |