Latest web development tutorials
×

PHP cours

PHP cours PHP Brève introduction PHP installer PHP grammaire PHP variable PHP echo/print PHP Types de données PHP constante PHP chaîne PHP opérateurs PHP If...Else PHP Switch PHP tableau PHP Tri d'un tableau PHP Superglobales PHP While circulation PHP For circulation PHP fonction PHP Variables magiques PHP Namespaces PHP Object-Oriented

PHP forme

PHP forme PHP Authentification Forms PHP forme - Les champs obligatoires PHP forme - email de vérification et d'URL PHP Complète instance de formulaire PHP $_GET variable PHP $_POST variable

PHP Tutorial avancée

PHP Les tableaux multidimensionnels PHP date PHP contenir PHP fichier PHP File Upload PHP Cookie PHP Session PHP E-mail PHP sécurité E-mail PHP Error PHP Exception PHP filtre PHP filtre avancé PHP JSON

PHP 7 Nouvelles fonctionnalités

PHP 7 Nouvelles fonctionnalités

PHP Base de données

PHP MySQL Brève introduction PHP MySQL raccordement PHP MySQL La création d'une base de données PHP MySQL Créer une table de données PHP MySQL Insérer des données PHP MySQL Insérez des données multiples PHP MySQL Déclarations préparées PHP MySQL Lire les données PHP MySQL WHERE PHP MySQL ORDER BY PHP MySQL UPDATE PHP MySQL DELETE PHP ODBC

PHP XML

XML Expat Parser XML DOM XML SimpleXML

PHP & AJAX

AJAX Brève introduction AJAX PHP AJAX Base de données AJAX XML AJAX Recherche en temps réel AJAX RSS Reader AJAX vote

PHP Manuel de référence

PHP Array PHP Calendar PHP cURL PHP Date PHP Directory PHP Error PHP Filesystem PHP Filter PHP FTP PHP HTTP PHP Libxml PHP Mail PHP Math PHP Misc PHP MySQLi PHP PDO PHP SimpleXML PHP String PHP XML PHP Zip PHP Timezones PHP Traitement de l'image PHP RESTful

instance PHP Votez AJAX

Vote AJAX

Dans les exemples suivants, nous allons démontrer une procédure de vote par lequel les résultats du vote sont affichés dans le cas où la page ne sont pas actualisées.

Avez-vous comme PHP et AJAX faire?

Ils sont:
NO:

Exemples expliquent - page HTML

Lorsque l'utilisateur sélectionne l'option ci-dessus pour execute nommé "getVote ()" fonction. Cette fonction est déclenchée par l'événement "onclick".

Code de fichier poll.html est la suivante:

<html>
<head>
<meta charset="utf-8">
<title>本教程(w3big.com)</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>

fonction getVote () effectue les étapes suivantes:

  • Créer un objet XMLHttpRequest
  • Créer la fonction lorsque le serveur est prêt à effectuer la réponse
  • Dossier sur le serveur pour envoyer des demandes
  • S'il vous plaît note ajoutée à la fin du paramètre d'URL (q) (contient le contenu de la liste déroulante)

Fichier PHP

Au- dessus de cette page de serveur appelé par le JavaScript est appelé "poll_vote.php" fichiers PHP:

<?php
$vote = htmlspecialchars($_REQUEST['vote']);

// 获取文件中存储的数据
$filename = "poll_result.txt";
$content = file($filename);

// 将数据分割到数组中
$array = explode("||", $content[0]);
$yes = $array[0];
$no = $array[1];

if ($vote == 0)
{
  $yes = $yes + 1;
}

if ($vote == 1)
{
  $no = $no + 1;
}

// 插入投票数据
$insertvote = $yes."||".$no;
$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/($no+$yes),2)); ?>px;
      height:20px;" ></span>
  <?php echo(100*round($yes/($no+$yes),2)); ?>%
  </td>
  </tr>
  <tr>
  <td>否:</td>
  <td>
  <span style="display: inline-block; background-color:red;
      width:<?php echo(100*round($no/($no+$yes),2)); ?>px;
      height:20px;"></span>
  <?php echo(100*round($no/($no+$yes),2)); ?>%
  </td>
  </tr>
</table>

Lorsque la valeur sélectionnée est envoyée à partir de JavaScript dans le fichier PHP va se produire:

  1. Obtenez Contenu fichier "poll_result.txt"
  2. Le contenu du fichier dans une variable, la variable sélectionnées pour être incrémenté de 1
  3. Ecrit "poll_result.txt" Résultats du fichier
  4. Sortie graphique des résultats du sondage

Fichier texte

Fichier texte (poll_result.txt) stockant des données de la procédure de vote.

Il stocke les données comme suit:

3||4

Le premier chiffre indique "Oui" décompte des voix, et le second nombre représente le «Non» vote compte.

Remarque: Pensez à autoriser que votre serveur Web pour modifier le fichier de texte.Ne laissezpasd' autres personnes à avoir accès, en plus de serveur Web (PHP).