Php 从其他输入获取输入值
我有一个小问题,我有一个表单,有三个字段,我的问题是: 在我通过javascript获取的国家和城市的2和3输入中,我想做的是让城市输入抛出我在国家输入中选择的国家的值,下面是javascriptPhp 从其他输入获取输入值,php,javascript,mysql,sql,Php,Javascript,Mysql,Sql,我有一个小问题,我有一个表单,有三个字段,我的问题是: 在我通过javascript获取的国家和城市的2和3输入中,我想做的是让城市输入抛出我在国家输入中选择的国家的值,下面是javascript <script> var availableTags = [ <?php $sql = "select * from citys "; $rsd = mysql_query($sql); while($row = mysql_fetch_array($rsd
<script>
var availableTags = [
<?php
$sql = "select * from citys ";
$rsd = mysql_query($sql);
while($row = mysql_fetch_array($rsd))
{
$pid=$row['cid'];
$city=$row['city'];
$state=$row['state'];
?>
"<?php echo $city; ?>,<?php echo $state; ?>",
<?php } ?>
];
$( "#inputsearch21" ).autocomplete({
source: function( request, response ) {
var matches = $.map( availableTags, function(tag) {
if ( tag.toUpperCase().indexOf(request.term.toUpperCase()) === 0 ) {
return tag;
}
});
response(matches);
}
});
</script>
国家脚本是相同的,更改了国家数据库的php。
我知道我必须从第一个表单中获取国家id,在第二个查询中,我应该选择*from citys,其中countryid=$countryid
知道如何做到这一点吗?最好的方法可能是使用ajax和json的组合。那么应该是这样的 getCities.php Javascript
哎哟请格式化代码。很难看到…结尾的第二行有一个语法错误,它关闭了source函数,但它只有}而不是}我在那里编辑过,更清晰的提示:-在将php数组转换为javascript数组时使用json_编码。-您没有使用$pid,为什么要设置它?你为什么选择它呢?将select语句中的*替换为city,state。在本例中,我使用了一个select框,但您也可以在其中使用自动完成脚本。
<?php
/* your connection ofc. */
$con = database_connection();
/* example unsecure please use PDO */
$sql = "SELECT ID, Name FROM City WHERE Country = '" . $_GET['country'] . "'";
$rsd = mysql_query($sql);
$res = mysql_fetch_array($rsd);
/* Return output in json format */
echo json_encode($res);
?>
$.ajax({
type: "GET",
url: "getCities.php",
data: { country: "Germany" }
}).done(function( output ) {
/* Example for select inputs */
var cities = eval('(' + output + ')');
var length = cities.length;
for(var i = 0; i < length; i++)
{
var newOption = $('<option/>');
newOption.attr('text', cities[i].Text);
newOption.attr('value', cities[i].Value);
$('#ID-OF-SELECTBOX').append(newOption);
}
});