代码展示

1,案例目录如下:

微信图片_20180310120415.png

2,所有代码展示:

conn.inc.php:

<?php
define("HOST",'localhost');
define("USER",'root');
define("PWD",'root');
define("DBNAME",'php');


mysqli.php:

<?php
include 'conn.inc.php';
$mysqli=new mysqli(HOST,USER,PWD,DBNAME);
if($mysqli->connect_errno){
    die('数据库链接出错'.$mysqli->connect_error);
}


region.html:

<!DOCTYPE html>
<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <script src="./jquery-1.11.0.js" type="text/javascript"></script>
        <script type="text/javascript">
            $(document).ready(function() {
                //  加载所有的省份
                $.ajax({
                    type: "get",
                    url: "region_action.php", // type=1表示查询省份
                    data: {"parent_id": "1", "type": "1"},
                    dataType: "json",
                    success: function(data) {
                        $("#provinces").html("<option value=''>请选择省份</option>");
                        $.each(data, function(i, item) {
                            // alert(item.region_id);
                            $("#provinces").append("<option value='" + item.region_id + "'>" + item.region_name + "</option>");
                        });
                    }
                });
                $("#provinces").change(function() {
                    $.ajax({
                        type: "get",
                        url: "region_action.php", // type =2表示查询市
                        data: {"parent_id": $(this).val(), "type": "2"},
                        dataType: "json",
                        success: function(data) {
                            $("#citys").html("<option value=''>请选择市</option>");
                            $.each(data, function(i, item) {
                                $("#citys").append("<option value='" + item.region_id + "'>" + item.region_name + "</option>");
                            });
                        }
                    });
                });
                $("#citys").change(function() {
                    $.ajax({
                        type: "get",
                        url: "region_action.php", // type =2表示查询市
                        data: {"parent_id": $(this).val(), "type": "3"},
                        dataType: "json",
                        success: function(data) {
                            $("#countys").html("<option value=''>请选择县</option>");
                            $.each(data, function(i, item) {
                                $("#countys").append("<option value='" + item.region_id + "'>" + item.region_name + "</option>");
                            });
                        }
                    });
                });
                //显示地址
                $("#countys").change(function() {
                    var value = $("#provinces").find("option:selected").text()
                        + $("#citys").find("option:selected").text()
                        + $("#countys").find("option:selected").text();
                    // alert(value);
                    $("#region").append("选择的地址是:"+"<input value='" + value + "'>");
                });
            });
        </script>
        
    </head>
    <body>
    <h1 align="center">PHP+Ajax+Mysql省市县三级联动</h1>
    <table align="center" border="1" cellpadding="3" cellspacing="0" width="30%">
        <tr bgcolor="skyblue">
            <th>省份</th>
            <th>市</th>
            <th>县</th>
        </tr>
        <tr style="height: 100px">
            <th>
                <select id="provinces">
                    <option value="">请选择省份</option>
                </select>
            </th>
            <th>
                <select id="citys">
                    <option value="">请选择市</option>
                </select>
            </th>
            <th>
                <select id="countys">
                    <option value="">请选择县</option>
                </select><br>
            </th>
        </tr>
    </table>
    <h4>
        <div align="center" id="region"></div></th>
    </h4>
    </body>
</html>


region_action.php:

<?php
header("Content-Type:text/html;charset=utf-8");
include './mysqli.php';
$type = isset($_GET["type"]) ? $_GET["type"] : "";
$parent_id = isset($_GET["parent_id"]) ? $_GET["parent_id"] : "";
// 链接数据库
if ($type == "" || $parent_id == "") {
    exit(json_encode(array("flag" => false, "msg" => "查询类型错误")));
} else {  
    // 链接数据库
    $sql="select *from global_region where parent_id=$parent_id AND region_type=$type";
    $result=$mysqli->query($sql);
    if($result->num_rows>0)
    {
        $arr=[];
        while ($row=$result->fetch_assoc())
        {
            $arr[$row["region_id"]]['region_id']=$row["region_id"];//$arr[1]["title"]=$row["title"]
            $arr[$row["region_id"]]['region_name']=$row["region_name"];//$arr[1]["content"]=$arr["content"]
        }
    }
    $provinces_json = json_encode($arr);
    exit($provinces_json);
}
?>


继续学习
||
<?php echo "所有代码展示";
提交重置代码
章节
笔记
提问
课件
反馈
捐赠

PHP+Jquery+Mysql实现省市县三级联动

  • 推荐课程
  • 评论
  • 问答
  • 笔记
  • 课件下载
不语

不语

改善显示地址:以下是修改的代码 $("#countys").change(function() { var value = $("#provinces").find("option:selected").text() + $("#citys&

2年前    添加回复 0

回复
麻辣爱上酸汤

麻辣爱上酸汤

运行页面出来,数据 不出来

2年前    添加回复 0

回复

数据查询乱码的同学,请将数据库查询设为$mysqli->query("SET NAMES utf8");

3年前    添加回复 0

回复
cl

cl

region_action.php这个链接数据库文件名出错了include './mysqli.php';,文件名是msyqli.php

3年前    添加回复 0

回复
呐喊丶

呐喊丶

调用不出来, 运行 region_action.php 这个PHP文件的时候报错 Parse error: syntax error, unexpected '[' in E:\phpstudy\WWW\3l\region_action.php on line 15

3年前    添加回复 0

回复
麦子穗

麦子穗

为什么运行不了

3年前    添加回复 0

回复

我的为什么会没东西啊

[最新 ╰倒轉流年丶祇爲一眼紅顔 的回答]导入了啊,连接也是没问题,就是显不出来

时间:3年前

当我选择第一条时会出现两个undefined

[最新  的回答]好的,你加我QQ908901178,我发给你

时间:3年前

乱码什么原因

[最新  的回答]你用的编辑器默认编码不是utf-8

时间:3年前

php怎样获取最后得到的省市区的值?

[最新 红尘呐滚滚 的回答]建一张省市区表,根据父级ID实现多层级值关联,然后就是在js里面通过触发事件请求接口,在接口里面对表进行一系列操作,将得到的省市区数据存储到 地址表中,下次根据唯一索引和主键就可以取了

时间:3年前

关于学习问题

[最新 lge 的回答]有个js写的三级联动javascript三级联动视频教程

时间:3年前

不语

不语

改善地址显示:与上面的<div>是一起改的 $("#countys").change(function() { var value = $("#provinces").find("option:selected").text() + $("#citys").find("option:selected").text() + $("#countys").find("option:selected").text(); var region = document.getElementById("region"); region.value = value ;

2年前 0

不语

不语

原本隐藏的的div改成一直显示状态。 <div align="center" > 选择的地址:<input id="region" readonly value=""> </div> 实现了误选择不会弹出多个文本框,重新选择后自动修改之前错误的地址。

2年前 0

不语

不语

报错: Uncaught ReferenceError: date is not defined shengji:16 报错地方: $.each(date, function(i, item) { 解决方法: $.each(JSON.parse(date), function(i, item) {,去掉前面的dataType: "json", 使用的是tp5框架

2年前 1

不语

不语

基于本课程遇到的问题

2年前 0

课件暂不提供下载,工作人员正在整理中,后期请多关注该课程~