Maison développement back-end tutoriel php php+mysql 采用ajax技术的 省 市 地 3级联动无刷新菜单 源码_PHP教程

php+mysql 采用ajax技术的 省 市 地 3级联动无刷新菜单 源码_PHP教程

Jul 13, 2016 am 10:59 AM
ajax php+mysql 刷新 技术 源码 de 简单 联动 菜单 utiliser

很简单的   

  1.先把  
加到 header.html 页
  2.把 regionss() 函数 加到 /include/tag.php 里
  3.在你网站的根目录建立个  regions.php 文件
  4.在你的模板的适当的地方加入   {$regionss(中华人民共和国)}   即可  

注意:  表单的名字可根据你的需要可以自己修改...


测试页代码:



php+ajax动态生成下拉菜单




{$regionss(中华人民共和国)}


regionss 函数代码:
//省市地3级联动下拉菜单函数 regionss 省.市.地  
function regionss($country="中华人民共和国")
{      
        global $db; $i = 1;
        $text="";
        $text.=" \n";
        $text.="\n";   
        return $text;
                        
}

regions.js 的代码:

//var ab = new Array();
var xmlHttp;
var xmlHttpa;
function createXMLHttpRequest() {
    if (window.ActiveXObject) {
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }  
    else if (window.XMLHttpRequest) {
        xmlHttp = new XMLHttpRequest();
    }
}
function createXMLHttpRequesta() {
    if (window.ActiveXObject) {
        xmlHttpa = new ActiveXObject("Microsoft.XMLHTTP");
    }  
    else if (window.XMLHttpRequest) {
        xmlHttpa = new XMLHttpRequest();
    }
}  
   
function startRequest() {
    createXMLHttpRequest();
    createXMLHttpRequesta();
    xmlHttp.onreadystatechange = handleStateChange;
    xmlHttpa.onreadystatechange = handleStateChangearea;
    document.getElementById('select2').options.length = 0;
    document.getElementById('select3').options.length = 0;
    var url = document.form1.select1.value;
    var qurl = "/regions.php?province="+url+"&time="+new Date().getTime();
    xmlHttp.open("GET", qurl, true);
    xmlHttp.send(null);
    //setTimeout("startRequest()",2000);
}
     
function handleStateChange() {
    if(xmlHttp.readyState == 4) {
        if(xmlHttp.status == 200) {
         var obj = document.getElementById('select2'); //将服务器返回的字符串写到页面中ID为select2的区域   
            obja = document.getElementById('select3'); //将服务器返回的字符串写到页面中ID为select3的区域   
            eval(xmlHttp.responseText);   
        
        }
    }
}
function handleStateChangearea() {         
            eval(xmlHttpa.responseText);         
}
//var ab = new Array();

function startRequesta() {
    createXMLHttpRequesta();
    xmlHttpa.onreadystatechange = handleStateChangea;
    document.getElementById('select3').options.length = 0;
    var url = document.form1.select2.value;
    var qurl = "/regions.php?city="+url+"&time="+new Date().getTime();
    xmlHttpa.open("GET", qurl, true);
    xmlHttpa.send(null);
    //setTimeout("startRequest()",2000);
}

function handleStateChangea() {
    if(xmlHttpa.readyState == 4) {
        if(xmlHttpa.status == 200) {
         var obja = document.getElementById('select3');
            eval(xmlHttpa.responseText);  
        //将服务器返回的字符串写到页面中ID为select3的区域
            
        }
    }
}

数据岛 regions.php 页面代码

require "common.php";
$city = $city ? $city : "";
$area = $area ? $area : "";
if($province && $city==''){
  global $db; $i = 1;
  
  $result = $db->query("SELECT DISTINCT city FROM ".TABLE_CITY." WHERE province='$province' ORDER BY cityid");
  while($r = $db->fetch_array($result))
    {
       $r[city]=iconv('gb2312','UTF-8',$r[city]);
echo "obj.options[obj.options.length] = new Option('".$r[city]."','".$r[city]."');\n";
$i++;
    }
  $resultarea = $db->query("SELECT DISTINCT city FROM ".TABLE_CITY." WHERE province='$province' ORDER BY cityid");
  $r = $db->fetch_array($resultarea);
  $city = $r[city];
  $resulta = $db->query("SELECT DISTINCT area FROM ".TABLE_CITY." WHERE city='$city' ORDER BY cityid");
   while($ra = $db->fetch_array($resulta))
    {
       $ra[area]=iconv('gb2312','UTF-8',$ra[area]);
echo "obja.options[obja.options.length] = new Option('".$ra[area]."','".$ra[area]."');\n";
$i++;
    }


}
if($city && $province==''){
   global $db; $i = 1;
  
   $result = $db->query("SELECT DISTINCT area FROM ".TABLE_CITY." WHERE city='$city' ORDER BY cityid");
   while($r = $db->fetch_array($result))
    {
       $r[area]=iconv('gb2312','UTF-8',$r[area]);
echo "obja.options[obja.options.length] = new Option('".$r[area]."','".$r[area]."');\n";
$i++;
    }
}
?>

地址信息数据库:

     采用的是phpcms3.0里自带的数据库,我没有进行任何改动

本程序可以在phpcms3.0里直接使用,若在其他地方使用请自己修改

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/631911.htmlTechArticle很简单的 1.先把 script language=JavaScript src=../include/js/regions.js/script 加到 header.html 页 2.把 regionss() 函数 加到 /include/tag.php 里 3.在你网站的根目...
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
4 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La touche d'actualisation F5 ne fonctionne pas sous Windows 11 La touche d'actualisation F5 ne fonctionne pas sous Windows 11 Mar 14, 2024 pm 01:01 PM

La touche F5 ne fonctionne pas correctement sur votre PC Windows 11/10 ? La touche F5 est généralement utilisée pour actualiser le bureau ou l'explorateur ou recharger une page Web. Cependant, certains de nos lecteurs ont signalé que la touche F5 actualisait leur ordinateur et ne fonctionnait pas correctement. Comment activer l’actualisation F5 dans Windows 11 ? Pour actualiser votre PC Windows, appuyez simplement sur la touche F5. Sur certains ordinateurs portables ou de bureau, vous devrez peut-être appuyer sur la combinaison de touches Fn+F5 pour terminer l'opération d'actualisation. Pourquoi l’actualisation F5 ne fonctionne-t-elle pas ? Si l'appui sur la touche F5 ne parvient pas à actualiser votre ordinateur ou si vous rencontrez des problèmes sous Windows 11/10, cela peut être dû au verrouillage des touches de fonction. D'autres causes potentielles incluent le clavier ou la touche F5

Le moyen le plus simple d'interroger le numéro de série du disque dur Le moyen le plus simple d'interroger le numéro de série du disque dur Feb 26, 2024 pm 02:24 PM

Le numéro de série du disque dur est un identifiant important du disque dur et est généralement utilisé pour identifier de manière unique le disque dur et identifier le matériel. Dans certains cas, nous pouvons avoir besoin d'interroger le numéro de série du disque dur, par exemple lors de l'installation d'un système d'exploitation, de la recherche du pilote de périphérique approprié ou de la réparation du disque dur. Cet article présentera quelques méthodes simples pour vous aider à vérifier le numéro de série du disque dur. Méthode 1 : utilisez l’invite de commande Windows pour ouvrir l’invite de commande. Dans le système Windows, appuyez sur les touches Win+R, entrez « cmd » et appuyez sur la touche Entrée pour ouvrir la commande

Cet article vous suffit pour en savoir plus sur la conduite autonome et la prédiction de trajectoire ! Cet article vous suffit pour en savoir plus sur la conduite autonome et la prédiction de trajectoire ! Feb 28, 2024 pm 07:20 PM

La prédiction de trajectoire joue un rôle important dans la conduite autonome. La prédiction de trajectoire de conduite autonome fait référence à la prédiction de la trajectoire de conduite future du véhicule en analysant diverses données pendant le processus de conduite du véhicule. En tant que module central de la conduite autonome, la qualité de la prédiction de trajectoire est cruciale pour le contrôle de la planification en aval. La tâche de prédiction de trajectoire dispose d'une riche pile technologique et nécessite une connaissance de la perception dynamique/statique de la conduite autonome, des cartes de haute précision, des lignes de voie, des compétences en architecture de réseau neuronal (CNN&GNN&Transformer), etc. Il est très difficile de démarrer ! De nombreux fans espèrent se lancer dans la prédiction de trajectoire le plus tôt possible et éviter les pièges. Aujourd'hui, je vais faire le point sur quelques problèmes courants et des méthodes d'apprentissage introductives pour la prédiction de trajectoire ! Connaissances introductives 1. Existe-t-il un ordre d'entrée pour les épreuves de prévisualisation ? R : Regardez d’abord l’enquête, p

Le papier Stable Diffusion 3 est enfin publié, et les détails architecturaux sont révélés. Cela aidera-t-il à reproduire Sora ? Le papier Stable Diffusion 3 est enfin publié, et les détails architecturaux sont révélés. Cela aidera-t-il à reproduire Sora ? Mar 06, 2024 pm 05:34 PM

L'article de StableDiffusion3 est enfin là ! Ce modèle est sorti il ​​y a deux semaines et utilise la même architecture DiT (DiffusionTransformer) que Sora. Il a fait beaucoup de bruit dès sa sortie. Par rapport à la version précédente, la qualité des images générées par StableDiffusion3 a été considérablement améliorée. Il prend désormais en charge les invites multithèmes, et l'effet d'écriture de texte a également été amélioré et les caractères tronqués n'apparaissent plus. StabilityAI a souligné que StableDiffusion3 est une série de modèles avec des tailles de paramètres allant de 800M à 8B. Cette plage de paramètres signifie que le modèle peut être exécuté directement sur de nombreux appareils portables, réduisant ainsi considérablement l'utilisation de l'IA.

Animation classique Zhengtu IPx 'Voyage vers l'Ouest' Le voyage vers l'ouest est intrépide et intrépide Animation classique Zhengtu IPx 'Voyage vers l'Ouest' Le voyage vers l'ouest est intrépide et intrépide Jun 10, 2024 pm 06:15 PM

Voyagez à travers l’immensité et embarquez pour le voyage vers l’ouest ! Aujourd'hui, Zhengtu IP a officiellement annoncé qu'elle lancerait une coopération transfrontalière avec l'animation CCTV « Journey to the West » pour créer conjointement une fête culturelle alliant tradition et innovation ! Cette coopération marque non seulement la coopération approfondie entre les deux grandes marques classiques nationales, mais démontre également les efforts inlassables et la persistance de la série Journey dans la promotion de la culture traditionnelle chinoise. Depuis sa naissance, la série Zhengtu est appréciée des joueurs pour son profond héritage culturel et son gameplay diversifié. En termes d'héritage culturel, la série Zhengtu a toujours maintenu le respect et l'amour pour la culture traditionnelle chinoise et a habilement intégré des éléments culturels traditionnels dans le jeu, apportant plus de plaisir et d'inspiration aux joueurs. L'animation CCTV "Voyage vers l'Ouest" est un classique qui a accompagné la croissance des générations.

DualBEV : dépassant largement BEVFormer et BEVDet4D, ouvrez le livre ! DualBEV : dépassant largement BEVFormer et BEVDet4D, ouvrez le livre ! Mar 21, 2024 pm 05:21 PM

Cet article explore le problème de la détection précise d'objets sous différents angles de vue (tels que la perspective et la vue à vol d'oiseau) dans la conduite autonome, en particulier comment transformer efficacement les caractéristiques de l'espace en perspective (PV) en vue à vol d'oiseau (BEV). implémenté via le module Visual Transformation (VT). Les méthodes existantes sont globalement divisées en deux stratégies : la conversion 2D en 3D et la conversion 3D en 2D. Les méthodes 2D vers 3D améliorent les caractéristiques 2D denses en prédisant les probabilités de profondeur, mais l'incertitude inhérente aux prévisions de profondeur, en particulier dans les régions éloignées, peut introduire des inexactitudes. Alors que les méthodes 3D vers 2D utilisent généralement des requêtes 3D pour échantillonner des fonctionnalités 2D et apprendre les poids d'attention de la correspondance entre les fonctionnalités 3D et 2D via un transformateur, ce qui augmente le temps de calcul et de déploiement.

Comment obtenir des variables de la méthode PHP en utilisant Ajax ? Comment obtenir des variables de la méthode PHP en utilisant Ajax ? Mar 09, 2024 pm 05:36 PM

L'utilisation d'Ajax pour obtenir des variables à partir de méthodes PHP est un scénario courant dans le développement Web. Grâce à Ajax, la page peut être obtenue dynamiquement sans actualiser les données. Dans cet article, nous présenterons comment utiliser Ajax pour obtenir des variables à partir de méthodes PHP et fournirons des exemples de code spécifiques. Tout d’abord, nous devons écrire un fichier PHP pour gérer la requête Ajax et renvoyer les variables requises. Voici un exemple de code pour un simple fichier PHP getData.php :

Retrouvailles classiques, renversement du temps et de l'espace, décision de liaison entre les films 'Dragon 2' et 'Westward Journey' Retrouvailles classiques, renversement du temps et de l'espace, décision de liaison entre les films 'Dragon 2' et 'Westward Journey' Mar 28, 2024 pm 04:40 PM

Retrouvailles classiques, inversion du temps et de l’espace. Le jeu mobile "Dragon 2" et le film classique "Westward Journey" devraient sortir conjointement le 11 avril ! Cela coïncide avec la célébration de l'anniversaire du jeu mobile "Dragon 2" Nous invitons tout le monde à revivre les souvenirs classiques et une fois. assistez à nouveau à la bataille entre Zhizunbao et Zixia jusqu'à la mort. L'histoire légendaire de Chongqing. Il doit y avoir des nuages ​​​​colorés de bon augure, et il doit y avoir une armure dorée et des vêtements sacrés. Lorsque la phrase « Prajna Paramita » résonnera dans vos oreilles, penserez-vous à la larme que Zixia a laissée au cœur du Trésor Suprême. mille ans, mais il est impossible d'échapper au sort du destin. Même s’il n’y a pas de retour, mon amour ne changera jamais jusqu’à la mort. Les apparitions de la collaboration Westward Journey [One Eye for Ten Thousand Years] et [God's Will] seront lancées simultanément avec la version anniversaire. J'espère que vous pourrez porter l'armure dorée ou rencontrer votre propre héros sans précédent et revenir à votre jeunesse la plus passionnée. Cinq cents ans de protection, le véritable amour jusqu'à la mort, dit par hasard quand j'ai rencontré Luoyang ce jour-là

See all articles