So implementieren Sie eine Provinz- und Stadtabfrage in PHP

藏色散人
Freigeben: 2023-03-14 15:40:02
Original
2214 Leute haben es durchsucht

So implementieren Sie eine Provinz- und Stadtabfrage in PHP: 1. Entwerfen Sie eine Datentabelle. 2. Suchen Sie die entsprechende parent_id entsprechend der Abfrage-ID. 3. Verwenden Sie Codes wie „function GetCityInfo(searstr, cityselect) {...}“ „Sie können Provinzen und Städte abfragen.

So implementieren Sie eine Provinz- und Stadtabfrage in PHP

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP Version 7.1, Dell G3-Computer.

PHP realisiert eine dreistufige verknüpfte Abfrage von Provinz, Stadt, Kreis (Bezirk)

Verknüpfte Abfrage

Was ist eine verknüpfte Abfrage? Tatsächlich kommt diese Sache im Leben sehr häufig vor, z Wenn Sie online einkaufen (fast jeder hat sie schon einmal verwendet), müssen wir beim Online-Einkauf die Bestellinformationen eingeben. Einige Websites verwenden eine Verknüpfungsabfrage, was den Benutzern das Ausfüllen ermöglicht Zu diesem Zeitpunkt ist die Verknüpfungsabfrage praktisch. Wenn wir beispielsweise im Dropdown-Feld „Provinz“ die Provinz Hebei auswählen, müssen die darin enthaltenen Informationen geändert und geladen werden Geben Sie das entsprechende Stadtgebiet in das Dropdown-Feld ein und fügen Sie ein Bild ein kann die gewünschten Ergebnisse abfragen. Unabhängig davon, ob sie benötigt werden oder nicht, lautet die Anweisung zum Erstellen der Datenbank wie folgt: Einfach Fügen Sie einige Daten ein. Die vollständigen Datencodes werden hier nicht angezeigt, um Aufsehen zu erregen. Wenn Sie diese Daten wünschen, können Sie sie auch online durchsuchen Ich habe einen hochgeladen, aber dafür sind Punkte erforderlich

CREATE TABLE `china_area` (
  `id` int(11) NOT NULL,
  `parent_id` int(11) NOT NULL DEFAULT '0',
  `code` varchar(10) NOT NULL,
  `name` varchar(191) NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Nach dem Login kopieren
So implementieren Sie eine Provinz- und Stadtabfrage in PHPDie Datenbank sieht ungefähr so ​​aus: Finden Sie den entsprechenden Wert über die ID der oberen Ebene und suchen Sie dann nach dem Wert, der der übergeordneten ID entspricht. Für die Daten wird eine Schleifensuche und eine dreistufige Verknüpfungssuche durchgeführt Lassen Sie uns ohne weitere Umschweife mit der Erklärung der Idee beginnen.

Designidee

Das erste Dropdown-Feld (dh die Provinz) wird beim Initialisieren der Seite geladen, sodass kein asynchrones Laden erforderlich ist. Das zweite (Stadt) und das dritte (Landkreis, Bezirk) werden geladen asynchron, und wenn der Benutzer dann das Dropdown-Feld betätigt, wird eine Ajax-Anfrage über das js-Ereignis gesendet, um den Hintergrundcode abzurufen, und dann sucht der Hintergrund basierend auf dem Wert der übergebenen parent_id (versuchen Sie, keine Felder in zu verwenden). die Datenbank für die Seitenübertragung).
So implementieren Sie eine Provinz- und Stadtabfrage in PHPCode-Implementierung

Das erste Dropdown-Feld kann direkt beim Laden der Seite generiert werden. Es ist nicht erforderlich, entsprechende Daten hinzuzufügen Standardmäßig ist der Wert -1

INSERT INTO `china_area` (`id`, `parent_id`, `code`, `name`, `created_at`, `updated_at`) VALUES(1, 0, '110000', '北京市', NULL, NULL),(2, 0, '120000', '天津市', NULL, NULL),(3, 0, '130000', '河北省', NULL, NULL),(4, 0, '140000', '山西省', NULL, NULL),(5, 0, '150000', '内蒙古自治区', NULL, NULL),(6, 0, '210000', '辽宁省', NULL, NULL),(7, 0, '220000', '吉林省', NULL, NULL),(8, 0, '230000', '黑龙江省', NULL, NULL),(9, 0, '310000', '上海市', NULL, NULL),(10, 0, '320000', '江苏省', NULL, NULL),(11, 0, '330000', '浙江省', NULL, NULL),(12, 0, '340000', '安徽省', NULL, NULL),(13, 0, '350000', '福建省', NULL, NULL),(14, 0, '360000', '江西省', NULL, NULL),(15, 0, '370000', '山东省', NULL, NULL),(16, 0, '410000', '河南省', NULL, NULL),(17, 0, '420000', '湖北省', NULL, NULL),(18, 0, '430000', '湖南省', NULL, NULL),(19, 0, '440000', '广东省', NULL, NULL),(20, 0, '450000', '广西壮族自治区', NULL, NULL),(21, 0, '460000', '海南省', NULL, NULL),(22, 0, '500000', '重庆市', NULL, NULL),(23, 0, '510000', '四川省', NULL, NULL),(24, 0, '520000', '贵州省', NULL, NULL),(25, 0, '530000', '云南省', NULL, NULL),(26, 0, '540000', '西藏自治区', NULL, NULL),(27, 0, '610000', '陕西省', NULL, NULL),(28, 0, '620000', '甘肃省', NULL, NULL),(29, 0, '630000', '青海省', NULL, NULL),(30, 0, '640000', '宁夏回族自治区', NULL, NULL),(31, 0, '650000', '新疆维吾尔自治区', NULL, NULL),(32, 0, '710000', '台湾省', NULL, NULL),(33, 0, '810000', '香港特别行政区', NULL, NULL),(34, 0, '820000', '澳门特别行政区', NULL, NULL),(35, 1, '110100', '北京城区', NULL, NULL),(36, 35, '110101', '东城区', NULL, NULL),(37, 35, '110102', '西城区', NULL, NULL),(38, 35, '110105', '朝阳区', NULL, NULL),(39, 35, '110106', '丰台区', NULL, NULL),(40, 35, '110107', '石景山区', NULL, NULL),(41, 35, '110108', '海淀区', NULL, NULL),(42, 35, '110109', '门头沟区', NULL, NULL),(43, 35, '110111', '房山区', NULL, NULL),(44, 35, '110112', '通州区', NULL, NULL),(45, 35, '110113', '顺义区', NULL, NULL),(46, 35, '110114', '昌平区', NULL, NULL),(47, 35, '110115', '大兴区', NULL, NULL),(48, 35, '110116', '怀柔区', NULL, NULL),(49, 35, '110117', '平谷区', NULL, NULL),(50, 35, '110118', '密云区', NULL, NULL),(51, 35, '110119', '延庆区', NULL, NULL),(52, 2, '120100', '天津城区', NULL, NULL),(53, 52, '120101', '和平区', NULL, NULL),(54, 52, '120102', '河东区', NULL, NULL),(55, 52, '120103', '河西区', NULL, NULL),(56, 52, '120104', '南开区', NULL, NULL),(57, 52, '120105', '河北区', NULL, NULL),(58, 52, '120106', '红桥区', NULL, NULL),(59, 52, '120110', '东丽区', NULL, NULL),(60, 52, '120111', '西青区', NULL, NULL),(61, 52, '120112', '津南区', NULL, NULL),(62, 52, '120113', '北辰区', NULL, NULL),(63, 52, '120114', '武清区', NULL, NULL),(64, 52, '120115', '宝坻区', NULL, NULL),(65, 52, '120116', '滨海新区', NULL, NULL),(66, 52, '120117', '宁河区', NULL, NULL),(67, 52, '120118', '静海区', NULL, NULL),(68, 52, '120119', '蓟州区', NULL, NULL),(69, 3, '130100', '石家庄市', NULL, NULL),(70, 3, '130200', '唐山市', NULL, NULL),(71, 3, '130300', '秦皇岛市', NULL, NULL),(72, 3, '130400', '邯郸市', NULL, NULL),(73, 3, '130500', '邢台市', NULL, NULL),(74, 3, '130600', '保定市', NULL, NULL),(75, 3, '130700', '张家口市', NULL, NULL),(76, 3, '130800', '承德市', NULL, NULL),(77, 3, '130900', '沧州市', NULL, NULL),(78, 3, '131000', '廊坊市', NULL, NULL),(79, 3, '131100', '衡水市', NULL, NULL),(80, 69, '130102', '长安区', NULL, NULL),(81, 69, '130104', '桥西区', NULL, NULL),(82, 69, '130105', '新华区', NULL, NULL),(83, 69, '130107', '井陉矿区', NULL, NULL),(84, 69, '130108', '裕华区', NULL, NULL),(85, 69, '130109', '藁城区', NULL, NULL),(86, 69, '130110', '鹿泉区', NULL, NULL),(87, 69, '130111', '栾城区', NULL, NULL),(88, 69, '130121', '井陉县', NULL, NULL),(89, 69, '130123', '正定县', NULL, NULL),(90, 69, '130125', '行唐县', NULL, NULL),(91, 69, '130126', '灵寿县', NULL, NULL),(92, 69, '130127', '高邑县', NULL, NULL),(93, 69, '130128', '深泽县', NULL, NULL),(94, 69, '130129', '赞皇县', NULL, NULL),(95, 69, '130130', '无极县', NULL, NULL);
Nach dem Login kopieren
Es gibt nur so viele HTML-Codes, und der nächste Schritt ist der js-Code. Hier habe ich das Bootstrap-Framework und die jQuery-Bibliothek zitiert (ich weiß nicht, ob das so ist Ein Framework. jq hat uns dabei geholfen, viele Methoden direkt zu kapseln. Hören Sie auf zu chatten und gehen Sie direkt zum Code ist ein Tipp, es ist am besten, den JS-Code am Ende der Seite einzufügen. Entwerfen Sie einfach den Code. Laden Sie das Projekt auf den Server, um es auszuführen

Zusammenfassung

Der Effekt ist in Ordnung. Dies ist natürlich nur das Erlernen der Verwendung, die tatsächliche Anwendung ist definitiv komplizierter. Wenn Sie sich gut fühlen, können Sie dreimal mit einem Klick klicken. Empfohlenes Lernen: „

PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo implementieren Sie eine Provinz- und Stadtabfrage in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage