Poll :: ¡Encuesta!
...en PHP
Choly Berreteaga
Gente Loca
A continuacion se encuentran los 3 archivos que hacen que la encusta funcione, esta todo explicado.
Para una encuesta nueva tan solo borra el archivo "votos.txt" que se crea
automaticamnete y cambia las variables del archivo "conf_poll.php".
--------------------------------------------------------------------
votar.php
--------------------------------------------------------------------
<?
// incluimos la configuracion del poll
include "conf_poll.php";
?><html>
<head><title>Poll - <?echo"$titulo";?></title></head>
<body bgcolor=#ffffff>
<?
// escribimos en en archivo 'votos.txt' un voto a favor de la opcion
elegida, a cada voto le agregamos el simbolo "#" para luego poder separarlos
$arch = "votos.txt";
$fp = fopen($arch, "a+");
$w=fputs($fp,"$voto#");
fclose ($fp);
// abrimos el archivo 'votos.txt' para leerlo
$abrir = fopen($arch, "r");
$todo = fread ($abrir, filesize ($arch));
// separamos el contenido de 'votos.txt' mediante el simbolo '#'
$div = explode("#",$todo);
// contamos el total de votos
$total = count($div)-1;
// hacemos un for que recorra el archivo voto por voto y suamando un voto
por cada aparicion
for($i=0; $i<$total; $i++){
if($div[$i]=="op1"){
$op1++;
}
if($div[$i]=="op2"){
$op2++;
}
if($div[$i]=="op3"){
$op3++;
}
if($div[$i]=="op4"){
$op4++;
}
}
// hacemos las cuentas para sacar lso porcentajes
$grafico1 = $op1*100/$total;
$grafico2 = $op2*100/$total;
$grafico3 = $op3*100/$total;
$grafico4 = $op4*100/$total;
// redondeamos los porcentajes a 2 digitos
$grafico1 = round($grafico1);
$grafico2 = round($grafico2);
$grafico3 = round($grafico3);
$grafico4 = round($grafico4);
?>
<!-- mostramos la tabla con los resultados --!>
<table bgcolor=whitesmoke cellspacing=1 cellpadding=4><tr><td><font
face=Arial size=2>Total de Votos:
<b><?echo"$total";?></b></font></td></tr><tr><td bgcolor=#ffffff><font
face=Arial size=2><b><?echo"$titulo";?></b></font></td></tr><tr><td
bgcolor=#ffffff>
<table border="0" width="100%">
<tr>
<td width="10" bgcolor="#0000FF"> </td>
<td><font face="Arial" size="2"><?echo"$v1";?> <b>(<? echo $grafico1
?>%)</b> - <? echo $op1 ?> votos</font></td>
</tr>
<tr>
<td width="10" bgcolor="#000080"> </td>
<td><font face="Arial" size="2"><?echo"$v2";?> <b>(<? echo $grafico2
?>%)</b> - <? echo $op2 ?> votos</font></td>
</tr>
<tr>
<td width="10" bgcolor="#800000"> </td>
<td><font face="Arial" size="2"><?echo"$v3";?> <b>(<? echo $grafico3
?>%)</b> - <? echo $op3 ?> votos</font></td>
</tr>
<tr>
<td width="10" bgcolor="#008000"> </td>
<td><font face="Arial" size="2"><?echo"$v4";?> <b>(<? echo $grafico4
?>%)</b> - <? echo $op4 ?> votos</font></td>
</tr>
</table>
<!-- fin tabla con los resultados --!>
<!-- mostramos gráfico --!>
<table width=100%>
<tr><td>
<table border="0" width="<? echo $grafico1 ?>%" bgcolor="#0000FF"
cellspacing="0" cellpadding="2">
<tr>
<td width="100%"> </td>
</tr>
</table></td></tr><tr><td>
<table border="0" width="<? echo $grafico2 ?>%" bgcolor="#000080"
cellspacing="0" cellpadding="2">
<tr>
<td width="100%"> </td>
</tr>
</table></td></tr><tr><td>
<table border="0" width="<? echo $grafico3 ?>%" bgcolor="#800000"
cellspacing="0" cellpadding="2">
<tr>
<td width="100%"> </td>
</tr>
</table></td></tr><tr><td>
<table border="0" width="<? echo $grafico4 ?>%" bgcolor="#008000"
cellspacing="0" cellpadding="2">
<tr>
<td width="100%"> </td>
</tr>
</table></td></tr>
</table>
<!-- fin gráfico --!>
</td></tr></table>
</body>
</html>
--------------------------------------------------------------------
poll.php
--------------------------------------------------------------------
<?
// incluimos la configuracion del poll
include "conf_poll.php";
?>
<html>
<head>
<title>Poll</title>
</head>
<body bgcolor=#ffffff>
<form method="POST" action="votar.php">
<table bgcolor=whitesmoke cellspacing=1 cellpadding=4><tr><td><font
face=Arial size=2><?echo"$titulo";?></font></td></tr><tr><td
bgcolor=#ffffff>
<table border="0" width="100%">
<tr>
<td width="100%"><input type="radio" value="op1" name="voto"
checked><font face=Arial size=2><?echo"$v1";?></font></td>
</tr>
<tr>
<td width="100%"><input type="radio" value="op2" name="voto"><font
face=Arial size=2><?echo"$v2";?></font></td>
</tr>
<tr>
<td width="100%"><input type="radio" value="op3" name="voto"><font
face=Arial size=2><?echo"$v3";?></font></td>
</tr>
<tr>
<td width="100%"><input type="radio" value="op4" name="voto"><font
face=Arial size=2><?echo"$v4";?></font></td>
</tr>
</table></td></tr>
<tr><td>
<input type="submit" value="Enviar"></td></tr>
</table>
</form>
</body>
</html>
--------------------------------------------------------------------
conf_poll.php
--------------------------------------------------------------------
<?
$titulo="Por que te conectas mas amenudo a internet?"; // título del poll
$v1="Noticias";
$v2="Información";
$v3="E-Mail";
$v4="Chat";
?>
--------------------------------------------------------------------
Listo, eso es todo, espero te funcione, ah! te recomiendo que tengas un
vinculo con un javascript que haga saltar al poll en un pop-up, queda muy
bueno.
|
 |
 |
 |
|