教学之友,学习之友。

站长教学网

当前位置: 站长教学网 > 网站编程 > PHP教程 >

PHP使用JQuery异步AJAX获取Jason数据

时间:2013-01-10 13:50来源:未知 作者:ken 点击:

最近做一个小PHP项目,又碰到了类似的需求。其中有一个很简单的应用,就是当用户选择了Country,例如在下拉列表中选择了 Hong Kong这个城市,那么在电话号码区号栏中,就会自动地出现0852的号码,但页面不希望刷新,有朋友在Javascript里面写了一大串 IF country='Hong Kong',ELSE IF……头晕脑胀。

现在网上已经有很多现成的城市数据库表,里面包含了电话区号,邮政编码等等,直接下下来用就好了,那么我们只需要在程序里做一些小小的处理。

直接入正题:

首先是PHP的主页面:

<select name="country" id="country" onchange="PostCountryJson();">

在 select 控件里,当触发 onchange 事件的时候,我们执行 PostCountryJson() 这个JavaScript Function

其次是 JavaScript 代码,和之前写的 ASP.NET 调用的一样的:

function PostCountryJson() {

var mid = $("#country").val();               
var queryString = {"mid":mid}
var url = "getCountrycode.php";
$.getJSON(url, queryString,function (json) {    
$("#tel_country_code").get(0).value = json.countryCode;
});
}        

也是通过 Json 数据集获取数据。在这里执行的不再是 .aspx ,而是.php了。

最后当然就是 getCountrycode.php 代码了:站长教学网 eduyo.com

<?php

include_once '../configure/conn.php';   // 建立与mysql database 的链接
$country = $_GET['mid'];                      // 获得从PostCountryJson()传来的mid参数,就是城市名称啦

// 执行搜索,搜索country表里该程式的资料
$selectStr = "SELECT * FROM country WHERE country_name = '".$country."'";
$result = mysql_query($selectStr,$conn);

if ($result) {
$countryCode = mysql_fetch_array($result);    
}

$countryCodeStr = $countryCode['country_code'];   // 将 country_code 字段的数据存放到变量


$jsonArr = array('countryCode'=>$countryCodeStr);  // 按照Jason的格式写成一个数组

$jsonStr = json_encode($jsonArr);                             // 编码Jason数据,没想到比.net还要简单呀
echo ($jsonStr);                                                          // 输出Jason数据
?>

(责任编辑:ken)
TAG标签: jQuery php Ajax Jason
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
注册登录:不允许匿名留言,登录后留言无需输入验证码。
栏目列表
最新内容