이 글에서는 주로 PHP+AJAX 투표기 기능을 소개합니다. 이 글에서는 예제 코드를 통해 아주 자세하게 소개하고 있습니다. 필요하신 분들은 참고하시면 됩니다.
마지막으로 AJAX는 "비동기 Javascript 및 XML"로 번역됩니다. , 구현될 수 있습니다. 웹 콘텐츠의 부분 로딩은 사용자 경험을 향상시킬 수 있습니다. 요즘에는 많은 웹사이트에서 이 기술을 사용하고 있습니다. 어쨌든 웹페이지의 비동기 업데이트를 실현할 수 있다는 것을 알고 계실 것입니다. 물론, 다음 예시들은 상대적으로 간단하고 이 기능을 반영하지 않습니다~
voter
새 파일 [AJAX vote.html]
<html> <head> <script type="text/javascript"> // 这里是js代码 function getVote(int) { if (window.XMLHttpRequest) { // 创建 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) { // 找到 id 为 poll 的控件 document.getElementById('poll').innerHTML = xmlhttp.responseText; } } // 向PHP脚本传递主要参数q xmlhttp.open("GET", "poll_vote.php?q=" + int, true); xmlhttp.send(); } </script> </head> <body> <p id="poll"> <h3>你喜欢吃吗?</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> </p> </body> </html>
[poll_vote.php] 스크립트를 생성하세요 file
<?php // 接收参数q $vote = htmlspecialchars($_REQUEST['q']); // 获取文件中存储的数据(这里需要在同一目录下新建一个poll_result.txt文件) $filename = "poll_result.txt"; $conn = file($filename); // 将数据分割到数组 $array = explode("||", $conn[0]); $yes = $array[0]; $no = $array[1]; $count = $array[2]; if ($vote == 0) { $yes += 1; $count += 1; } if ($vote == 1) { $no += 1; $count += 1; } // 将投票数据保存到文档 $insertvote = $yes . '||' . $no . '||' . $count; $fp = fopen($filename, "w"); fputs($fp, $insertvote); fclose($fp); ?> <h2>结果:</h2> <table> <tr> <td>是:</td> <td> <span style="display: inline-block; background-color: green; width: <?php echo 100 * round($yes / ($yes + $no), 2);?>px; height: 20px;"></span><?php echo 100 * round($yes / ($yes + $no), 2); ?>% </td> </tr> <tr> <td>否:</td> <td> <span style="display: inline-block; background-color: red; width: <?php echo 100 * round($no / ($yes + $no), 2);?>px; height: 20px;"></span><?php echo 100 * round($no / ($yes + $no), 2); ?>% </td> </tr> </table> <p><?php echo "参与人数:" . $count; ?></p>
새 빈 문서 만들기 [poll_result.txt]
현재 디렉토리:
|-AJAX vote.html
|-poll_vote.php
|-poll_result.txt
다른 경우, 위의 해당 코드를 수정해야 합니다
효과:
관련 권장 사항:
PHP와 투표 MySQL 시스템의 디자인 및 구현 공유
위 내용은 PHP+AJAX로 투표기 기능을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!