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,038

HOME > PHP > PHP Forum > รบกวนขอคำแนะนำ เรื่อง การเรียกแก้ไข listmenu ที่ใช้ ajax ค่ะ



 

รบกวนขอคำแนะนำ เรื่อง การเรียกแก้ไข listmenu ที่ใช้ ajax ค่ะ

 



Topic : 038402

Guest




รบกวนขอคำแนะนำหน่อยค่ะ กรณีที่เรียกข้อมูลที่ต้องการแก้ไขข้อมูลขึ้นมา เพื่อที่จะทำการแก้ไข โดยที่ listmenu ที่ใช้ ajax ก็ดึงค่าขึ้นมาโชว์ แต่ listmenu ตัวที่ 2 จะต้องโชวืค่าที่เราเรียกขึ้นมาก และถ้าคลิกจะมีเฉพาะข้อมูลที่เกี่ยวข้องกับตัวแรก อยากทราบว่าต้องทำยังไงค่ะ
menu.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874" />
<title>Untitled Document</title>
</head>
<script>
var xmlHttp;
function createXMLHttpRequest() {
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
}
function list_namesub(id) {
var obj = document.getElementById("subcatalog");
var obj_default = '- Choose -';
if(id ==""){
while(obj.childNodes.length>0){obj.removeChild(obj.childNodes[0]);}
obj[0] = new Option(obj_default,'');}else{
var url = "get_subname.php?id=" + id;
createXMLHttpRequest();
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("GET", url, true);
xmlHttp.send(null);
function handleStateChange() {
if(xmlHttp.readyState == 4) {
if(xmlHttp.status == 200) {
var results = xmlHttp.responseText;
while(obj.childNodes.length>0){obj.removeChild(obj.childNodes[0]);}
arr_list=results.split("/");
if(arr_list.length-1!=0){
for (var i=0; i < eval(arr_list.length-1); i++) {
shop_arr=arr_list[i].split(",");
obj.options[i] = new Option(shop_arr[0],shop_arr[1]);
}}else{
while(obj.childNodes.length>0){obj.removeChild(obj.childNodes[0]);}
obj[0] = new Option(obj_default,'');
}
}
}}
}}
</script>
<body>
<form id="form1" name="form1" method="post" action="">
<select name="catalog" id="catalog" onChange="list_namesub(this.value);" style="width:200px" >
<option value="">ไม่มี Album</option>
<?
$host="localhost"; //ชื่อ Host
$user="root"; //ชื่อ user
$password="root"; //รหัสผ่านฐานข้อมูล
$dbname="listmenu";
$connection=mysql_connect($host,$user,$password) or die("เชื่อมต่อฐานข้อมูลไม่ได้");
mysql_select_db($dbname) or die("ไม่สามารถเลือกฐานข้อมูลได้");
$sql="select * from tb_catalog order by cat_id ASC";
$dbquery=mysql_db_query($dbname,$sql);
while($result=mysql_fetch_array($dbquery)){
?>
<option value="<?=$result[cat_id];?>"><?=$result[cat_name];?></option>
<?
}
?>
</select>
<br />
<br />
<select name="subcatalog" id="subcatalog" style="width:200px">
<option value="">- Choose -</option>
</select>
</form>
</body>
</html>

get_subname.php

<?php
//header("Content-Type: text/plain; charset=TIS-620");
$host="localhost";
$user="root";
$password="root";
$dbname="listmenu";
$connection=mysql_connect($host,$user,$password) or die("เชื่อมต่อฐานข้อมูลไม่ได้");
mysql_select_db($dbname) or die("ไม่สามารถเลือกฐานข้อมูลได้");
$sql="select * from tb_subcatalog where cat_id = '$id' ";
$dbquery = mysql_db_query($dbname, $sql);
echo "- Choose -, /";
while ($result = mysql_fetch_array($dbquery)){
echo"$result[sub_name],$result[sub_id]/";
}
mysql_close($connection);
?>



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-02-05 17:40:35 By : เปิ้ล View : 1217 Reply : 2
 

 

No. 1

Guest


อยากทราบเหมือนกันค่ะ กรณีโหมดแก้ไขข้อมูล ถ้าเราดึงข้อมูลมาโชว์บน แล้วมี list 2 ตัว แต่ listตัวที่ 2 จะมีค่าเปลี่ยนเมื่อ list ตัวที่ 1 เปลี่ยน แต่กรณีโหลดข้อมูลมาแก้ไขครั้งแรก จะต้องเขียน โค๊ดอย่างไรค่ะ ต้องเพิ่มจาก โค๊ดที่นำมาให้ดูอย่างไร เพราะกรณีเพิ่มข้อมูลใช้โค๊ดที่นำมาให้ดูไม่ติดปัญหาอะไร แต่กรณีดึงมาแก้ไขเนี้ยสิค่ะ งงค่ะ รบกวนช่วยหน่อยนะค่ะ






Date : 2010-02-05 17:48:48 By : กิฟท์
 


 

No. 2

Guest


ใช้วิธีนี้ก็ได้ครับ ( อาจแก้ปัญหาได้บาง )
1. query เอาส่วนของ list แรกมาทั้งหมดก่อน แล้วเช็ค seleted ที่ตรงกับ ฐานข้อมูลที่เก้บไว้ก่อนหน้านี้
2. query ค่าของ list ที่ 2 ที่เก้บใน table มาแสดงใน list dropdown เลยครับ

ไม่ต้องกังวลกับ code ด้านบน ยังทำงานได้ตามปกติครับ

เมื่อ user หรือ ผู้ดูแลต้องการ ปรับปรุงข้อมูลก็ได้ตามปกติครับ

*** คิดสะว่ามันเป็น List menu ธรรมดา อย่าไป สับสนกับส่วนของ ajax ครับ
Date : 2010-04-28 23:41:21 By : krabongped
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : รบกวนขอคำแนะนำ เรื่อง การเรียกแก้ไข listmenu ที่ใช้ ajax ค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่