About PHP - The connection between AJAX and PHP

jacklove
Release: 2023-03-25 14:34:02
Original
1559 people have browsed it

PHP - The connection between AJAX and PHP is very important for php. This article will explain the connection in detail.

When the user types characters in the input box above, the "showHint()" function will be executed. This function is triggered by the "onkeyup" event:

<html><head><script>function showHint(str){    if (str.length==0)    {         document.getElementById("txtHint").innerHTML="";        return;    }    if (window.XMLHttpRequest)    {        // IE7+, Firefox, Chrome, Opera, Safari 浏览器执行的代码        xmlhttp=new XMLHttpRequest();    }    else    {    
        //IE6, IE5 浏览器执行的代码        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");    }    xmlhttp.onreadystatechange=function()    {        if (xmlhttp.readyState==4 && xmlhttp.status==200)        {            document.getElementById("txtHint").innerHTML=xmlhttp.responseText;        }    }    xmlhttp.open("GET","gethint.php?q="+str,true);    xmlhttp.send();}</script></head><body><p><b>在输入框中输入一个姓名:</b></p><form> 姓名: <input type="text" onkeyup="showHint(this.value)"></form><p>返回值: <span id="txtHint"></span></p></body></html>
Copy after login

Source code explanation:

If the input box is empty (str.length==0), this function will Clear the contents of the txtHint placeholder and exit this function.

If the input box is not empty, then showHint() will perform the following steps:

Create an XMLHttpRequest object

Create a function that is executed when the server response is ready

Send a request to the file on the server

Please pay attention to the parameter (q) added to the end of the URL (contains the content of the input box)

PHP file

The above paragraph The server page called via JavaScript is a PHP file named "gethint.php".

The source code in "gethint.php" checks the name array and returns the corresponding name to the browser:

<?php// 将姓名填充到数组中$a[]="Anna";$a[]="Brittany";$a[]="Cinderella";$a[]="Diana";$a[]="Eva";$a[]="Fiona";$a[]="Gunda";$a[]="Hege";$a[]="Inga";$a[]="Johanna";$a[]="Kitty";$a[]="Linda";$a[]="Nina";$a[]="Ophelia";$a[]="Petunia";$a[]="Amanda";$a[]="Raquel";$a[]="Cindy";$a[]="Doris";$a[]="Eve";$a[]="Evita";$a[]="Sunniva";$a[]="Tove";$a[]="Unni";$a[]="Violet";$a[]="Liza";$a[]="Elizabeth";$a[]="Ellen";$a[]="Wenche";$a[]="Vicky";//从请求URL地址中获取 q 参数$q=$_GET["q"];//查找是否由匹配值, 如果 q>0if (strlen($q) > 0){    $hint="";    for($i=0; $i<count($a); $i++)    {        if (strtolower($q)==strtolower(substr($a[$i],0,strlen($q))))        {            if ($hint=="")            {                $hint=$a[$i];            }            else            {                $hint=$hint." , ".$a[$i];            }        }    }}// 如果没有匹配值设置输出为 "no suggestion" if ($hint == ""){    $response="no suggestion";}else{    $response=$hint;}//输出返回值echo $response;?>
Copy after login

Explanation: If JavaScript sends any text (i.e. strlen($q ) > 0), then:

Find names matching the characters sent by JavaScript

If no match is found, the response String is set to "no suggestion"

If one or more matching names are found, set the response string with all names

Send the response to the "txtHint" placeholder

This article explains Understand the connection between PHP - AJAX and PHP. For more learning materials, please pay attention to the php Chinese website to view.

Related recommendations:

Related knowledge about PHP Simple XML

Related knowledge about PHP XML DOM

About the basics of PHP XML Expat parser

The above is the detailed content of About PHP - The connection between AJAX and PHP. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template