Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ดึงข้อมูลจาก mysql สอง column มาเป็น select list in php หนึ่งในนั้นให้โชว์ให้ user เห็น อีกอันให้ hidden ต้องการส่งค่าไปเก็บในตาราง



 

ดึงข้อมูลจาก mysql สอง column มาเป็น select list in php หนึ่งในนั้นให้โชว์ให้ user เห็น อีกอันให้ hidden ต้องการส่งค่าไปเก็บในตาราง

 



Topic : 069596

Guest




มีใครพอรู้บางไมค่ะ ว่า ถ้าเราต้องการดึงข้อมูลจาก mysql มาเป็น select list แต่เราต้องการดึงมา สอง colum ทำยังไง เพราะ หนึ่งในสอง colum เราต้องการให้ user เห็นแค่อันเดียว แต่อีกอันเราต้องการส่งค่าไปเก็บในฐานข้อมูลไม่ต้องการให้ user เห็น

เช่น

tb_2

em_id
cus_id
em_name


tb_3

oder_id
em_id
cus_id

สิ่งที่ต้องการคือ ดึง ข้อมูลจาก tb_2 em_name มาโชว์ใน List แล้วก็ต้องการดึง cus_id มาด้วยแต่ไม่ต้องการให้โชว์ให้ user เห็นต้องการส่งค่าไปเก็บที่ตาราง tb_3 ใน cus_id

นึกไม่ออก แต่คิดว่ามันน่าจะทำได้ แต่มือใหม่หัดขับค่ะ ยังไม่คล่องเรื่อง code

รบกวนผู้รู้หน่อยนะค่ะ ขอบคุณล่วงหน้านะค่ะ



Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-11-27 02:02:17 By : มือใหม่หัดขับ View : 2512 Reply : 13
 

 

No. 1



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


แบบนี้ใช่ไหม โชว์ em_name แต่ส่งเป็น cus_id
Code (PHP)
echo '<select name="cus_id">';
//whle loop
echo '<option value="' . $data['cus_id'] . '">' . $data['em_name'] . '</option>';
//end
echo '</select>';







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-27 02:11:45 By : ikikkok
 


 

No. 2

Guest


คือปัญหาของดิฉันคือ มีข้อมูลเชื่อมโยงกัน สามตาราง

tb_1

cat_id
cat_name
....

tb_2

vname_id
vcat_id
vname_name


tb_3

vscript_name
vname_id
vcat_id


มันจะเป็นลักษณะว่า tb_2 มี FK ที่เป็น PK ของ tb_1 แล้ว tb_3 มี FK ที่เป็น PK ของ tb_2 ที่นี่ดิฉันก็ code เป็น ว่าพอลบ tb_1 record ไหน ก็จะต้องไปลบที่ tb_2 ด้วย ซึ่งก็ทำได้แล้ว แต่ปัญหาคือว่า ถ้าลบที่ tb_2 จะต้องไปลบที่ tb_3 ด้วย

คือพอจะ add ข้อมู่ลที่ tb_3 ก็ให้ดึง ข้อมูลจาก tb_2 มาอยู่ใน select list ซึ่งก็ทำได้ไม่มีปัญหา แต่ดิฉันต้องการดึง vcat_id มาด้วยให้มันไปลงที่ตาราง tb_3 เพื่อที่ตอนไปลบที่ตาราง แม่ tb_1 ก็จะ ลบทุกอย่างที่เกี่ยวกับ cat_id ข้อมูลก็จะไม่ผิดพลาด

ตอนนี้ทำให้ ถ้าลบที่ tb_1 ก็จะมีผลกระทบไปกับ tb_2 ได้แล้ว แต่ที่นี้ tb_2 มันจะมีผลกับ tb_3 ด้วย เลยคิดว่าดึงค่า cat_id จาก tb_2 ที่มาด้วยตอนที่ ทำ select list แต่จะให้ User เห็นแค่ vname_name แต่ vcat_id ดึงมาด้วย แต่ไม่ให้เห็นเพราะจะเอาไปเก็บใน ตาราง tb_3 เพื่อที่ตอนทำการลบ ที่ tb_1 ก็จะได้โดนลบทุกอย่าง ข้อมูลไม่ผิดพลาด

ยาวไปหน่อยนะค่ะ ขอบคุณล่วงหน้านะค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-27 03:35:48 By : มือใหม่หัดขับ
 

 

No. 3

Guest


ท่านมืออาชีพ ช่วยด้วยยยยยยยยยยนะค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-27 15:35:59 By : มือใหม่หัดขับ
 


 

No. 4



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


พยายามทำความเข้าใจแล้วครับ อ่านหลายรอบ ก็ยังจับใจความยังไม่ได้ว่ากำลังจะทำอะไร แล้วการลบข้อมูลที่มี relation แบบนี้ แล้วมันจะกระทบกับข้อมูลใน table อื่นๆ ที่เกี่ยวข้องไหม ยกตัวอย่างง่ายๆ ระบบ Order ถ้าเกิดคุณเก็บข้อมูล product ใน table order แค่ product_id แล้วไป join กันเพื่อแสดงรายละเอียด order ถ้าเกิดคุณลบข้อมูลของ product หนึ่งไป ซึ่งมันมีข้อมูลการซื้ออยู่ใน order แล้ว มันจะกระทบแน่นอน เพราะ product มันโดนลบไปแล้ว งงมะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-27 16:29:27 By : ikikkok
 


 

No. 5

Guest


คือเรื่องของเรื่องจะลักไก่เล็กน้อย แต่ยังไม่คล่องโค๊ดดิ้งอะค่ะ

นี่คือตารางฐานข้อมูลนะค่ะ สามตาราง เอาแค่คอลัมน์หลักนะค่ะ

videocat

vcat_id (pk)
vcat_name
....

videoname

vname_id(pk)
vcat_id (fk)
vname_name
....

videoscript

vscript_id (pk)
vname_id (fk)
vcat_id (fk)
vscript_name

....


ตอนนี้ที่ทำได้แล้วคือ ถ้าลบข้อมูลจาก ตาราง videocat มันก็จะไปลบที่ตาราง videoname ด้วย คือก็ใช้คำสั่ง query ที่ละครั้งอะค่ะ คือพยายามหาทางที่ง่ายที่สุดก็เลยคิดว่า add vcat_id ไปกับตาราง videoscript พอตอนจะสั่ง query น่าจะได้ ตัวอย่างโค๊ดข้างล่างดึงข้อมูลมาให้เลือก ก็เลยคิดว่าเป็นไปได้ไมที่เราจะ hidden vcat_id จากตาราง videoname ไปด้วยเพื่อให้ไปเก็บในตาราง videoscript แล้วเราก็ไปเพิ่มคำสั่ง query ถ้ามีการลบที่ตาราง videocat

สรุปว่าจาก select list ข้างล่าง นอกจากจะให้ส่ง vname_id ไปเก็บที่ตาราง videoscript แล้ว ต้องการให้ส่ง vcat_id จากตาราง videoname ไปเก็บด้วยอะค่ะ จะ hidden ยังไงอะค่ะ

Code (PHP)
<select name="videoNameID" class="txtbox">
                <option value="">Select video name</option>
                <?
//===========  Display type of video into list box
$sql_group = "select * from videoname  order by vname_id asc";
$dbquery_group = mysql_query($sql_group);
$num_rows_group = mysql_num_rows($dbquery_group);
while ($result = mysql_fetch_array($dbquery_group))
{
if($_POST["videoNameID"] == $result["vname_id"])
{
$sel="selected";
}
else
{
$sel="";
}
?>
                <option value="<?=$result["vname_id"];?>"<?=$sel;?>>
                  <?=$result["vname_name"];?> 
                </option> 
                <?
}
?>
              </select>


ขอบคุณมากๆๆๆๆๆๆ นะค่ะ ที่พยายามช่วย ขอบคุณล่วงหน้าอีกครั้งนะค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-27 17:11:52 By : มือใหม่หัดขับ
 


 

No. 6

Guest


รบกวนด้วยนะค่ะ นึกไม่ออกจริงๆ ค่ะ


ขอบคุณล่วงหน้าอีกครั้งนะค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-28 02:24:43 By : มือใหม่หัดขับ
 


 

No. 7



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


<option value="<?=$result["vname_id"].','.$result["vcat_id"];?>"<?=$sel;?>>
ส่งไปแล้ว split เอาครับ ใช้ explode ไม่อยากให้ลำบากต้องใช้ ajax เดี๋ยวจะงง


ประวัติการแก้ไข
2011-11-28 02:38:35
2011-11-28 02:38:58
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-28 02:38:07 By : ikikkok
 


 

No. 8

Guest


แล้วค่า vcat_id มันจะลงไปในฐานข้อมูลยังไงค่ะ ในเมื่อเราส่ง แค่ videoNameID ตอน insert แล้ว ค่าของ vcat_id จะไปยังไงค่ะ งง งง

Code
$sql = "insert into videoscript (vname_id,vcat_id,vscript_season,vscript_script,vscript_episodes,vscript_date) values ('$_POST[videoNameID]','$_POST[txtSeason]','$_POST[txtScript]','$_POST[txtTotal]','$_POST[date]')";







<select name="videoNameID" class="txtbox">
<option value="">Select video name</option>
<?
//=========== Display type of video into list box
$sql_group = "select * from videoname order by vname_id asc";
$dbquery_group = mysql_query($sql_group);
$num_rows_group = mysql_num_rows($dbquery_group);
while ($result = mysql_fetch_array($dbquery_group))
//$result = mysql_fetch_array($dbquery_group)
{
if($_POST["videoNameID"] == $result["vname_id"])
{
$sel="selected";
}
else
{
$sel="";
}
?>
<option value="<?=$result["vname_id"].','.$result["vcat_id"];?>"<?=$sel;?>>
<?=$result["vname_name"];?>
</option>
<?
}
?>
</select>



รบกวนหน่อยนะค่ะ มือใหม่
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-28 04:40:26 By : มือใหม่หัดขับ
 


 

No. 9

Guest


ส่งไปแล้ว split เอาครับ ใช้ explode ทำยังไงค่ะ รบกวนหน่อยนะค่ะ

ขอบคุณค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-28 11:32:05 By : มือใหม่หัดขับ
 


 

No. 10

Guest


ช่วยด้วยนะค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-28 12:25:24 By : มือใหม่หัดขับ
 


 

No. 11



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


Code (PHP)
list($vname_id,$vcat_id) = explode(",",$_POST['videoNameID']);


เอา $vname_id กับ $vcat_id ไปใช้ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-28 12:46:32 By : ikikkok
 


 

No. 12



โพสกระทู้ ( 484 )
บทความ ( 3 )



สถานะออฟไลน์


Ajax json ครับ...
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-29 10:20:01 By : fossil31
 


 

No. 13

Guest


list($vname_id,$vcat_id) = explode($_POST['videoNameID'],",");
$sql = "insert into videoscript (vname_id,vcat_id,vscript_season,vscript_script,vscript_episodes,vscript_date) values ('$_POST[videoNameID]','.$_POST','$_POST[txtSeason]','$_POST[txtScript]','$_POST[txtTotal]','$_POST[date]')";


เรียงตรงไหนผิดค่ะ คือต้องการแยกข้อมูลใส่ลงใน สอง คอลัมน์ ตอนนี้ echo ออกมาดู ข้อมูลมันโชว์ เป็ฯ

(10,19),'...','....' ต้องการแยก 10 ให้ลงอีกไปที่ field vname_id แล้วก็ 19 ลงไปที่ vcat_id


ช่วยด้วยนะค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-11-30 13:33:26 By : มือใหม่หัดขับ
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ดึงข้อมูลจาก mysql สอง column มาเป็น select list in php หนึ่งในนั้นให้โชว์ให้ user เห็น อีกอันให้ hidden ต้องการส่งค่าไปเก็บในตาราง
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 02
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่