[英]Ajax select control PHP MySQL?
这里有我在PHP中使用AJAX和MYSQl的问题,任何人都可以帮助我吗?
我有选择控制形式:
<form action="index.php" method="post" name="pretraga" class="border">
<p>Mesto:</p>
<div class="spry-select">
<select name="mesto" id="select_x">
<option value="Novi Sad">Novi Sad</option>
<option value="">nesto</option>
<option value="">nesto</option>
</select></div>
<div id="Rezultat">
<select name="podrucje" >
</select>
</div>
有人点击诺维萨德我想做这样的Mysql查询
$result = mysql_query("SELECT deo_grada FROM usluga
WHERE deo_grada='{$_POST['mesto']}'");
while ($red=mysql_fetch_object ($result))
{
echo'<option value="'.$red->deo_grada.'">'.$red->deo_grada.'</option>';
}
退出的结果是想进入id Rezultat? 有什么帮助吗?
没有运气这个:(
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function (){
$('#select_x').change(function() {
$.ajax({
type: "POST",
url: "some.php",
data: { mesto: $("select_x option:selected")[0].val() }
}).done(function( msg ) {
$("#Rezultat").html(msg);
});
});
});
</script>
将<select name="mesto">
更改为<select name="mesto" id="select_x">
$('#select_x').change(function() {
$.ajax({
type: "POST",
url: "some.php",
data: { mesto: $("select_x option:selected")[0].val() }
}).done(function( msg ) {
$("#Rezultat").html(msg);
});
});
这个例子需要JQUERY。
您可以阅读更多内容:
http://api.jquery.com/jQuery.ajax/
你也应该在文件准备就绪时绑定事件。
$(function (){ //document is ready bind events });
更改
WHERE deo_grada='$_POST['mesto']'"
至
WHERE deo_grada='".$_POST['mesto']."'"
$result = mysql_query("SELECT deo_grada FROM usluga
WHERE deo_grada='{$_POST['mesto']}'");
注意sql注入
包含jQuery并粘贴此代码:
$(function(){
var res = $("#Rezultat");
$("#selectid").change(function(){
$.ajax({
url:"index.php",
method:"POST",
data:{this.na`enter code here`me:this.value},
success:function(data){
res.html(data);
}
})
})
})
这个javascript :)
function xmlhttpPost(strURL,formname,responsediv,responsemsg) {
var xmlHttpReq = false;
var self = this;
// Xhr per Mozilla/Safari/Ie7
if (window.XMLHttpRequest) {
self.xmlHttpReq = new XMLHttpRequest();
}
// per tutte le altre versioni di IE
else if (window.ActiveXObject) {
self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
}
self.xmlHttpReq.open('POST', strURL, true);
self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
self.xmlHttpReq.onreadystatechange = function() {
if (self.xmlHttpReq.readyState == 4) {
// Quando pronta, visualizzo la risposta del form
updatepage(self.xmlHttpReq.responseText,responsediv);
}
else{
// In attesa della risposta del form visualizzo il msg di attesa
updatepage(responsemsg,responsediv);
}
}
self.xmlHttpReq.send(getquerystring(formname));
}
function getquerystring(formname) {
var form = document.forms[formname];
var qstr = "";
function GetElemValue(name, value) {
qstr += (qstr.length > 0 ? "&" : "")
+ escape(name).replace(/\+/g, "%2B") + "="
+ escape(value ? value : "").replace(/\+/g, "%2B");
//+ escape(value ? value : "").replace(/\n/g, "%0D");
}
var elemArray = form.elements;
for (var i = 0; i < elemArray.length; i++) {
var element = elemArray[i];
var elemType = element.type.toUpperCase();
var elemName = element.name;
if (elemName) {
if (elemType == "TEXT"
|| elemType == "TEXTAREA"
|| elemType == "PASSWORD"
|| elemType == "BUTTON"
|| elemType == "RESET"
|| elemType == "SUBMIT"
|| elemType == "FILE"
|| elemType == "IMAGE"
|| elemType == "HIDDEN")
GetElemValue(elemName, element.value);
else if (elemType == "CHECKBOX" && element.checked)
GetElemValue(elemName,
element.value ? element.value : "On");
else if (elemType == "RADIO" && element.checked)
GetElemValue(elemName, element.value);
else if (elemType.indexOf("SELECT") != -1)
for (var j = 0; j < element.options.length; j++) {
var option = element.options[j];
if (option.selected)
GetElemValue(elemName,
option.value ? option.value : option.text);
}
}
}
return qstr;
}
function updatepage(str,responsediv){
document.getElementById(responsediv).innerHTML = str;
}
这是HTMl
<div class="spry-select">
<select name="mesto" onclick="xmlhttpPost('obrada.php', 'pretraga', 'Rezultat', ''); return false;"/>
<option value="Novi Sad">Novi Sad</option>
<option value="">nesto</option>
<option value="">nesto</option>
</select></div>
<select id="Rezultat" name="podrucje" >
</select>
Txanks很多@Author:Simone Rodriguez又名Pukos < http://www.SimoneRodriguez.com >
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.