ajax ที่มี listmenu 2 ค่า แต่ทำไม ค่า ถึงออกมาค่าเดียวอ่าคับ งง
Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=windows-874">
<script language="javascript">
var HttPRequest = false;
function doCallAjax(Search1,Search2) {
HttPRequest = false;
if (window.XMLHttpRequest) { // Mozilla, Safari,...
HttPRequest = new XMLHttpRequest();
if (HttPRequest.overrideMimeType) {
HttPRequest.overrideMimeType('text/html');
}
} else if (window.ActiveXObject) { // IE
try {
HttPRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
HttPRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!HttPRequest) {
alert('Cannot create XMLHTTP instance');
return false;
}
var url = 'report_payment_monthly_search.php';
var pmeters = 'choose_month='+Search1;
var pmeters2 = 'choose_year='+Search2;
HttPRequest.open('POST',url,true);
HttPRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
HttPRequest.setRequestHeader("Content-length", pmeters.length);
HttPRequest.setRequestHeader("Connection", "close");
HttPRequest.send(pmeters);
/* HttPRequest.setRequestHeader("Content-length", pmeters2.length);
HttPRequest.send(pmeters2);*/
/* พารามิตเตอร์ สอง จะนำค่าออกมายังไงหรอคับ */
HttPRequest.onreadystatechange = function(){
if(HttPRequest.readyState == 3) // Loading Request
{
document.getElementById("mySpan").innerHTML = "Now is Loading...";
}
if(HttPRequest.readyState == 4) {
document.getElementById("mySpan").innerHTML = HttPRequest.responseText;
}
}
}
function chk_report_2(){
if (document.report_2.choose_month.value == "0"){
alert ("กรุณาเลือก เดือน !");
return false;
}else if (document.report_2.choose_year.value == "0"){
alert ("กรุณาเลือกปี พ.ศ.!");
return false;
}
}
</script>
<div id="choose_class" align="center">
<h3 align="center"> ดูรายงานยอดชำระในแต่ละเดือน </h3>
<form name="report_2" >
<p>
เดือน
<select name="choose_month" id="choose_month" style="width:90px;">
<option value="0">- เลือก -</option>
<?php $sql_month = " SELECT * FROM month ";
$query_month = mysql_query($sql_month)or die (" Error = ".mysql_error());
while($rows_month = mysql_fetch_array($query_month)){
?>
<option value = "<?php echo $rows_month[id]; ?>" ><?php echo $rows_month[name_mo]; ?></option>
<?php }?>
</select>
ปี พ.ศ.
<select name="choose_year" style="width:90px;">
<option value="0">- เลือก -</option>
<?php $years= date("Y");
for ($i = $years; $i >= $years -6; $i--) {
?>
<option value = "<?php echo $i; ?>" ><?php echo $i+543; ?></option>
<?php } ?>
</select>
<input name="btnSearch" id="btnSearch" type="button" value="ตกลง" OnClick="JavaScript:doCallAjax(document.getElementById('choose_month').value , document.getElementById('choose_year').value);">
</p>
<p></p>
<br/>
<br/>
<span id="mySpan"></span>
</form>
<br/>
</div>
Tag : PHP, MySQL, Ajax
Date :
2012-03-27 16:17:03
By :
toojumbo
View :
951
Reply :
4
Code (JavaScript)
var url = 'report_payment_monthly_search.php';
var pmeters = 'choose_month='+Search1;
var pmeters2 = 'choose_year='+Search2;
alert('Search1='+Search1);
alert('Search2='+Search2);
HttPRequest.open('POST',url,true);
ดูว่ามีค่าหรือเปล่าครับ
Date :
2012-03-27 16:55:55
By :
webmaster
มีค่าทั้งสอง อัน คับ แต่
เอาออกมาได้ได้แค่ pmeters อันแรกเองอ่ะคับ
ลองเปลี่ยนเป็นแบบ นี้ก้อไม่ออก ไม่รู้ผม เขียนถูกป่าว
Code (PHP)
HttPRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
HttPRequest.setRequestHeader("Content-length", pmeters.length),("Content-length", pmeters2.length);
HttPRequest.setRequestHeader("Connection", "close");
HttPRequest.send(pmeters,pmeters2);
อีกหน้าแค่ให้มันออก สองค่านี้เองคับ แต่ออกมาแค่ $choose_month
หน้า : report_payment_monthly_search.php
Code (PHP)
echo $choose_month = $_POST["choose_month"];
echo $choose_year = $_POST["choose_year"];
Date :
2012-03-28 09:19:21
By :
toojumbo
คุณส่ง parameter ผิดรุปแบบครับ ดูตัวอย่างนี้ครับ
Code (JavaScript + Ajax)
var url = 'AjaxPHPLoginForm2.php';
var pmeters = "tUsername=" + encodeURI( document.getElementById("txtUsername").value) +
"&tPassword=" + encodeURI( document.getElementById("txtPassword").value );
HttPRequest.open('POST',url,true);
HttPRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
HttPRequest.setRequestHeader("Content-length", pmeters.length);
HttPRequest.setRequestHeader("Connection", "close");
HttPRequest.send(pmeters);
Date :
2012-03-28 13:26:37
By :
webmaster
ใช้ได้จิงด้วยคับ ขอบคุนคับ
ถึงว่า ผมลองใช้แบบนี้ก้อไม่ได้
Code (PHP)
var pmeters_test = 'tchoose_month='+Search1+'&tchoose_year'+Search2;
จิง ด้วยคับ พอดี ผมใช้ ajax ไม่ค่อย เป็นด้วย
เอาตัวอย่างมาจากคนอื่นอีกทีนึง เห็นเค้า ทำแบบนี้ นึกว่ารับ parameter สองอันคงคล้าย ๆ กัน
เลยทำแบบ นี้ แล้วเอาไป substr() เหอะ ซึ่งผิดวิธี
Code (PHP)
var pmeters = 'choose_month='+Search1;
var pmeters2 = 'choose_year='+Search2;
var pmeters3 = 'choose='+Search1+Search2;
ประวัติการแก้ไข 2012-03-28 16:02:19
Date :
2012-03-28 15:57:37
By :
toojumbo
Load balance : Server 00