PHP - أجاكس و PHP
يستخدم أجاكس لإنشاء تطبيقات أكثر تفاعلية.
أجاكس PHP أمثلة
سوف تظهر الأمثلة التالية عندما يكتب المستخدم في مربع إدخال حرف، وكيفية التواصل صفحات ويب مع ملقم ويب:
أمثلة
尝试在输入框中输入一个名字,如:Anna:
返回值:
أمثلة توضح - صفحة HTML
عندما يقوم المستخدم في شخصية مربع الإدخال أعلاه يؤدي "showHint) (" وظيفة. وتتألف هذه الوظيفة من "onkeyup" الزناد الحدث:
<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>
وأوضح المصدر:
إذا مربع الإدخال فارغ (str.length == 0)، وهذه وظيفة مسح txtHint نائبا المحتوى، والخروج من وظيفة.
إذا مربع الإدخال ليست فارغة، ثم showHint () بتنفيذ الخطوات التالية:
- إنشاء كائن مدعوم
- إنشاء وظيفة عندما يكون الملقم جاهز لأداء استجابة
- ملف على الملقم لإرسال الطلبات
- يرجى ملاحظة أن إضافة إلى (يحتوي على مربع الإدخال) نهاية معلمة URL (ف)
ملف PHP
خوادم المذكورة أعلاه من خلال جافا سكريبت يدعو هذه الصفحة يسمى "gethint.php" ملف PHP.
"Gethint.php" رمز المصدر يتحقق مجموعة من الأسماء، ثم عاد إلى المتصفح اسم المقابلة:
<?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>0 if (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; ?>
التفسير: إذا كان جافا سكريبت ترسل أي نص (أي strlen ($ ف)> 0)، يحدث:
- البحث عن مطابقة الأحرف لإرسال أسماء جافا سكريبت
- إذا تم العثور على أي تطابق يتم تعيين سلسلة ردا على "أي اقتراح"
- إذا وجدت واحدة أو أكثر مطابقة أسماء، أسماء جميع الإعدادات مع سلسلة استجابة
- إرسال استجابة إلى العنصر النائب "txtHint"
حلول النطاق عبر PHP اياكس للمشاكل
إذا كنت بحاجة إلى ويمكن الاطلاع على طلب عبر المجال غير متزامن: PHP اياكس عبور حلول مجال للمشاكل.