Heim >Backend-Entwicklung >PHP-Problem >Schritte zur Implementierung der dreistufigen PHP-Verknüpfung

Schritte zur Implementierung der dreistufigen PHP-Verknüpfung

王林
王林Original
2023-05-24 15:45:37848Durchsuche

Schritte zur Implementierung der dreistufigen PHP-Verknüpfung

Mit der Entwicklung des Internets ist die Webentwicklung zu einem wichtigen Bestandteil der IT-Branche geworden. Als wichtiges Werkzeug für die Webentwicklung hat PHP ein immer breiteres Anwendungsspektrum. In der Webentwicklung sind dreistufige Verknüpfungsformularsteuerungen in einigen besonderen Fällen sehr nützlich, z. B. bei der Auswahl von Adressen auf Provinz- und Gemeindeebene, Marke, Modell, Versionsauswahl usw. In diesem Artikel stellen wir kurz die Schritte zur Implementierung der dreistufigen PHP-Verknüpfung vor.

1. Was ist eine dreistufige Verknüpfungssteuerung?

Die dreistufige Verknüpfungssteuerung bezieht sich beispielsweise auf die Anzeige einer verknüpften Auswahlliste auf der Startseite Wählen Sie eine Region aus, wählen Sie zunächst die Provinz aus, wählen Sie dann die Stadt basierend auf der Provinzauswahl aus und wählen Sie schließlich den Bezirk oder Landkreis basierend auf der Städteauswahl aus. Diese dreistufige Gestängesteuerung ist in manchen besonderen Fällen sehr nützlich.

Technologien zur Realisierung von Second- und Third-Level-Linkage

Es gibt viele Technologien zur Realisierung von Third-Level-Linkage, die gebräuchlichsten sind Ajax, jQuery, Vue.js usw . Wir stellen diese Technologien hier nicht vor, sondern stellen eine einfache und benutzerfreundliche PHP-Implementierungsmethode vor.

Drittens die Schritte zur Realisierung der dreistufigen Verknüpfung

Lassen Sie uns kurz die Schritte zur Realisierung der dreistufigen Verknüpfung vorstellen.

1. Schreiben Sie eine HTML-Seite

Zuerst müssen wir eine HTML-Seite schreiben, die Dropdown-Felder für Provinzen, Städte und Landkreise enthält. Wie unten gezeigt:

<!DOCTYPE html>
<html>
<head>
    <title>三级联动控件</title>
    <meta charset="UTF-8">
</head>
<body>
    <select id="province" name="province">
        <option value="0">请选择省份</option>
        <option value="1">北京</option>
        <option value="2">上海</option>
        <option value="3">广东</option>
        <!-- 其他省份省略 -->
    </select>
    <br><br>
    
    <select id="city" name="city">
        <option value="0">请选择城市</option>
    </select>
    <br><br>

    <select id="district" name="district">
        <option value="0">请选择县区</option>
    </select>
    <br><br>

    <script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    <script type="text/javascript" src="script.js"></script>
</body>
</html>

2. Schreiben Sie JavaScript-Code

Als nächstes schreiben wir eine JavaScript-Datei, um dreistufige Verknüpfungsereignisse zu verarbeiten. Wie unten gezeigt:

$(function(){
    // 省份下拉框改变事件
    $('#province').change(function(){
        var pid = $(this).val(); // 获取选中的省份id
        if(pid == 0){ // 如果省份id为0,则清空城市下拉框和县区下拉框
            $('#city').empty().append('<option value="0">请选择城市</option>');
            $('#district').empty().append('<option value="0">请选择县区</option>');
            return;
        }
        
        $.ajax({
            type: 'post',
            url: 'get_city.php', // 服务器处理程序,可根据需要修改
            data: {pid:pid},
            dataType: 'json',
            success: function(citys){
                $('#city').empty().append('<option value="0">请选择城市</option>');
                $('#district').empty().append('<option value="0">请选择县区</option>');
                $.each(citys, function(i, city){
                    $('#city').append('<option value="'+city.id+'">'+city.name+'</option>');
                });
            }
        });
    });
    
    // 城市下拉框改变事件
    $('#city').change(function(){
        var cid = $(this).val(); // 获取选中的城市id
        if(cid == 0){ // 如果城市id为0,则清空县区下拉框
            $('#district').empty().append('<option value="0">请选择县区</option>');
            return;
        }
        
        $.ajax({
            type: 'post',
            url: 'get_district.php', // 服务器处理程序,可根据需要修改
            data: {cid:cid},
            dataType: 'json',
            success: function(districts){
                $('#district').empty().append('<option value="0">请选择县区</option>');
                $.each(districts, function(i, district){
                    $('#district').append('<option value="'+district.id+'">'+district.name+'</option>');
                });
            }
        });
    });
});

3. Schreiben Sie einen serverseitigen Handler

Schließlich müssen wir auch einen serverseitigen Handler für die Abfrage von Stadt- und Kreisdaten schreiben. Wie unten gezeigt:

get_city.php

<?php
header('Content-Type: application/json;charset=utf-8');
$pid = $_POST['pid'];
if(empty($pid)){
    echo json_encode([]);
    exit;
}

// 连接数据库查询城市数据
$conn = new mysqli('localhost', 'root', '123456', 'test');
if(mysqli_connect_errno()){
    echo json_encode([]);
    exit;
}

$conn->set_charset('utf8');
$sql = "select * from city where pid=".$pid;
$result = $conn->query($sql);
$citys = [];
while($row = $result->fetch_assoc()){
    $citys[] = $row;
}

echo json_encode($citys);
exit;
?>

get_district.php

<?php
header('Content-Type: application/json;charset=utf-8');
$cid = $_POST['cid'];
if(empty($cid)){
    echo json_encode([]);
    exit;
}

// 连接数据库查询县区数据
$conn = new mysqli('localhost', 'root', '123456', 'test');
if(mysqli_connect_errno()){
    echo json_encode([]);
    exit;
}

$conn->set_charset('utf8');
$sql = "select * from district where cid=".$cid;
$result = $conn->query($sql);
$districts = [];
while($row = $result->fetch_assoc()){
    $districts[] = $row;
}

echo json_encode($districts);
exit;
?>

IV. Zusammenfassung

In diesem Artikel , haben wir die Schritte zur Implementierung der dreistufigen PHP-Verknüpfung vorgestellt. Durch die Implementierung dieser Funktion können wir einen dreistufigen Verknüpfungsselektor für städtische Gebiete erstellen, der es Benutzern bequemer und schneller macht, Adressen auszuwählen. Die Verwendung der PHP-Technologie zur Implementierung einer dreistufigen Verknüpfungssteuerung erfordert die Zusammenarbeit des Front-Ends und des Back-Ends. Das Front-End implementiert hauptsächlich Seitenanzeige- und Ereignisverarbeitungsfunktionen, während das Back-End hauptsächlich für die Abfrage der Datenbank zum Abrufen von Daten verantwortlich ist. Die in diesem Artikel vorgestellte Methode ist nur eine der Implementierungsmethoden und kann vom Leser nach Bedarf verbessert und optimiert werden.

Das obige ist der detaillierte Inhalt vonSchritte zur Implementierung der dreistufigen PHP-Verknüpfung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn