PHP - undian AJ...LOGIN

PHP - undian AJAX

Pengundian AJAX

Dalam contoh berikut, kami akan menunjukkan program pengundian yang melaluinya keputusan undian dipaparkan tanpa memuat semula halaman web.

<!DOCTYPE html>
 <html lang="en">
 <head>
     <meta charset="UTF-8">
     <title>PHP中文网(php.cn)</title>
     <script>
         function getVote(int) {
             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("poll").innerHTML=xmlhttp.responseText;
                 }
             }
             xmlhttp.open("GET","poll_vote.php?vote="+int,true);
             xmlhttp.send();
         }
     </script>
 </head>
 <body>
 <div id="poll">
     <h3>你喜欢 PHP 和 AJAX 吗?</h3>
     <form>
         是:
         <input type="radio" name="vote" value="0" onclick="getVote(this.value)">
         <br>否:
         <input type="radio" name="vote" value="1" onclick="getVote(this.value)">
     </form>
 </div>
 </body>
 </html>

0.png

Apabila pengguna memilih salah satu daripada pilihan di atas, fungsi bernama "getVote()" akan dilaksanakan. Fungsi ini dicetuskan oleh peristiwa "onclick". Fungsi

getVote() melakukan langkah berikut:

· Cipta objek XMLHttpRequest

· Cipta fungsi yang dilaksanakan apabila respons pelayan sedia

· Hantar mesej ke pelayan Permintaan hantar fail pada

· Sila ambil perhatian parameter (q) yang ditambahkan pada penghujung URL (mengandungi kandungan senarai juntai bawah)


Fail PHP

Halaman pelayan yang dipanggil di atas melalui JavaScript ialah fail PHP bernama "poll_vote.php":

rreee

Apabila nilai yang dipilih dihantar daripada JavaScript ke fail PHP, Apa yang akan berlaku:

1 Dapatkan kandungan fail "poll_result.txt"

2 dan tambah 1 pada pembolehubah yang dipilih

3 Tulis keputusan pada fail "poll_result.txt"

4. >

fail teks

Data daripada program pengundian disimpan dalam fail teks (poll_result.txt). Data yang disimpannya adalah seperti berikut:

5||3

Nombor pertama mewakili The bilangan undian untuk "Ya", nombor kedua mewakili bilangan undian untuk "Tidak".

Nota

: Ingat untuk hanya membenarkan pelayan web anda mengedit fail teks ini. Jangan biarkan orang lain mendapat akses kecuali pelayan web (PHP).

bahagian seterusnya

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>PHP中文网(php.cn)</title> <script> function getVote(int) { 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("poll").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","poll_vote.php?vote="+int,true); xmlhttp.send(); } </script> </head> <body> <div id="poll"> <h3>你喜欢 PHP 和 AJAX 吗?</h3> <form> 是: <input type="radio" name="vote" value="0" onclick="getVote(this.value)"> <br>否: <input type="radio" name="vote" value="1" onclick="getVote(this.value)"> </form> </div> </body> </html>
babperisian kursus