พี่นิคช่วยแก้ไขโค้ดให้หน่อยครับ แก้ไขเองไม่ถูก
ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา พี่นิคช่วยแก้ไขโค้ดให้หน่อยครับ แก้ไขเองไม่ถูก
เลือกจังหวัด > อำเภอ > ตำบล
ตอนสมัครสมาชิกมันก็เลือกได้ปกติใช้งานได้ครับ
แต่คราวนี้ พอล็อกอินเข้าไป แก้ไขข้อมูลส่วนตัว แล้วดึงข้อมูลต่างๆตาม $_SESSTION[id_member];
้ข้อมูลทุกอย่างมาหมดครับ ติดตรง list box จังหวัด อำเภอ ตำบล ไม่รู้ว่าจะส่งข้อมูลเข้า ajax ยังไงครับพี่
อันนี้ select box นะครับ
จังหวัด
<select style="width:200px;" name="province" id="province" onChange="dochange('province');">
<option value="<?=$province?>" <? if($sql_member[province]==$province){echo"selected";}?>>--------------------------</option>
</select>
อำเภอ
<select style="width:200px;" name="amphur" id="amphur" onChange="dochange('amphur');">
<option value="<?=$amphur?>">-------------------------------------------</option>
</select>
ตำบล
<select style="width:200px;" name="tumbon" id="tumbon">
<option value="<?=$tumbon?>">-------------------------------------------</option>
</select>
คำสั่ง ajax ครับ
function Inint_AJAX()
{
try
{
return new ActiveXObject( "Msxml2.XMLHTTP" );
}
catch ( e )
{
};
try
{
return new ActiveXObject( "Microsoft.XMLHTTP" );
}
catch ( e )
{
};
try
{
return new XMLHttpRequest();
}
catch ( e )
{
};
alert( "XMLHttpRequest not supported" );
return null;
};
function dochange( obj )
{
var req = Inint_AJAX();
var province = document.getElementById( 'province' ).value;
var tumbon = document.getElementById( 'tumbon' ).value;
if ( obj && obj.name == 'province' ) //เมื่อทำการเลือที่จังหวัดมา ให้เคลียร์ค่าอำเภอ
{
var amphur = "";
}
else //เลือกรายการอื่น
{
var amphur = document.getElementById( 'amphur' ).value;
};
var data = "province=" + province + "&hur=" + amphur + "&tumbon=" + tumbon;
req.onreadystatechange = function()
{
if ( req.readyState == 4 )
{
if ( req.status == 200 )
{
var datas = eval( '(' + req.responseText + ')' ); // JSON
document.getElementById( 'provinceDiv' ).innerHTML = datas[0].province;
document.getElementById( 'amphurDiv' ).innerHTML = datas[0].amphur;
document.getElementById( 'tumbonDiv' ).innerHTML = datas[0].tumbon;
};
};
};
req.open( "post" , "province.php" , true ); //สร้าง connection
req.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" ); // set Header
req.send( data ); //ส่งค่า
};
//โหลดครั้งแรก
window.onload = function()
{
dochange( '' );
};
ไฟล์ province.php
header( "Expires: Sat, 1 Jan 2005 00:00:00 GMT" );
header( "Last-Modified: ".gmdate( "D, d M Y H:i:s" )."GMT" );
header( "Cache-Control: no-cache, must-revalidate" );
header( "Pragma: no-cache" );
//header( "content-type: application/x-javascript; charset=TIS-620" );
header( "content-type: application/x-javascript; charset=utf-8" );
$province = $_POST[province];
$amphur = $_POST[amphur];
$tumbon = $_POST[tumbon];
include('../conf/connect.php');
//ให้คืนค่าจังหวัดไว้เป็นอันดับแรก
$sql = "SELECT id, name FROM province";
$result = mysql_query( $sql );
echo "[{"province":"";
echo "<select style='width:200px;' name='province' id='province' onchange='dochange(this)'>";
echo "<option value='0'>----------กรุณาเลือกจังหวัด----------</option>";
while( $fetcharr = mysql_fetch_array( $result ) )
{
$id = $fetcharr[id];
$name = $fetcharr[name];
echo "<option value='$id'";
if ( $province == $id ) //เลือกจังหวัดที่เลือกไว้
{
echo " selected='selected'";
};
echo ">$name</option>";
};
echo "</select>","amphur":"";
echo "<select style='width:200px;' name='amphur' id='amphur' onchange='dochange(this)'>";
//ถ้ามีการเลือกจังหวัดมาแล้วให้แสดงอำเภอต่อ
if ( $province != "0" && $province != "" )
{
echo "<option value='0'>----------กรุณาเลือกอำเภอ----------</option>";
$sql = "SELECT id, name FROM amphur WHERE provinceID='$province'";
$result = mysql_query( $sql );
while( $fetcharr = mysql_fetch_array( $result ) )
{
$id = $fetcharr[id];
$name = $fetcharr[name];
echo "<option value='$id'";
if ( $amphur == $id ) //เลือกอำเภอที่เลือกไว้
{
echo " selected='selected'";
};
echo ">$name</option>";
};
}
else
{
echo "<option value=''>-------------------------------------------</option>";
};
echo "</select>","tumbon":"";
echo "<select style='width:200px;' name='tumbon' id='tumbon'>";
//ถ้ามีการเลือกอำเภอมาแล้วให้แสดงตำบลต่อ
if ( $amphur != "0" && $amphur != "" )
{
echo "<option value='0'>----------กรุณาเลือกตำบล----------</option>";
$sql = "SELECT id, name FROM tumbon WHERE amphurID=$amphur";
$result = mysql_query( $sql );
while( $fetcharr = mysql_fetch_array( $result ) )
{
$id = $fetcharr[id];
$name = $fetcharr[name];
echo "<option value='$id'";
if ( $tumbon == $id ) //เลือกตำบลที่เลือกไว้
{
echo " selected='selected'";
};
echo ">$name</option>";
};
}
else
{
echo "<option value=''>-------------------------------------------</option>";
};
echo "</select>"}]";
ผมรบกวนพี่หน่อยนะครับจำเป็นต้องใช้จริงๆครับพี่
ขอบคุณม๊ากมากครับ
คำแนะนำ และการใช้งาน
สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก
- ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ