sonda-v2
Publicado por luca 10/05/2005
[ Hits: 4.390 ]
esse è um script php criado para sondagens em sitos web.
- nao ha limitacoes por numero de perguntas!
- se pode adicionar qualquer sondagem!
- se pode votar tambem para sondegens velhos!
- ainda nao esta implementado o controlo de votacao. (um usuario pode re-votar)!
- è free software!
foi criado para um meu amigo, agora è de todos! obrigado.
brainstabber (italy)
<!=====sonda-v2.php===============>
<html>
<head>
</head>
<body style="background: #6686c2; text-align: center; color: #e2f4fe ">
<?php
include "sonda-v2.conf.php";
/*=================================================================================*/
/*====================sonda-v2====distribuito sotto licenza gpl====================*/
/*====tutti i diritti rivendicati, melegnano maggio 2005, brainstabber [27e½]======*/
/*=================================================================================*/
/*=============script pagina==================*/
$nomePagina="sonda-v2.php";
$racco= new raccoltaSondaggi();
$sonda=new sondaggio();
$racco->carica();
if($crea)
{
$racco->aggiungi_sondaggio($idEnv,$domandaEnv,$opzioniEnv);
$racco->salva();
}
if(empty($id))
{
$id=$racco->get_ultimo();
}
$sonda->carica($id);
if($login)
{
if($password==$passwordEnv&&$user==$userEnv)
{
echo "<div style=\" color:#e2f4fe; text-align:left; width: 500px; margin: 0 auto; \">";
echo "<br>autenticazione effettuata<br>";
echo "<h3>creazione nuovo sondaggio</h3>";
echo "<form method=post action=\"sonda-v2.php?crea=true\">";
echo "<table>";
echo "<tr><td>nome sondaggio:</td><td><input type=\"text\" name=\"idEnv\"></td></tr>";
echo "<tr><td>domanda:</td><td><input type=\"text\" name=\"domandaEnv\"></td></tr>";
echo "<tr><td>opzioni:</td><td><input type=\"text\" name=\"opzioniEnv\"></td></tr>";
echo "<tr><td></td><td> <input type=\"submit\" name=\"crea\" value=\"invia\"> </td></tr>";
echo "</table>";
echo "per inserire più opzioni separarle con \"&&\".<br>";
echo "esempio: opzione_uno&&opzione_due&&opzione_tre";
echo "</form></div>";
}
else
{
echo "<div style=\" color:#e2f4fe; text-align:left; width: 500px; margin: 0 auto; \">";
echo "<br><br><form method=post action=\"".$nomePagina."?login=true\">";
echo "<table align=\"center\">";
echo "<tr><td>nome utente:</td> <td><input type=\"text\" name=\"userEnv\"> </td></tr>";
echo "<tr><td>password:</td><td> <input type=\"password\" name=\"passwordEnv\"> </td></tr>";
echo "<tr><td></td><td><input type=\"submit\" name=\"logga\" value=\"invia\"> </td></tr>";
echo "</table></form>";
echo "</div>";
}
}
else
{
if($vota)
{
if(isset($risposta))
{
$sonda->incrementa($risposta);
$sonda->salva($id);
echo "<div style=\" color:#e2f4fe; text-align:left; width: 500px; margin: 0 auto; \">";
echo "<br><br>grazie per aver votato<br> <a href=\"".$nomePagina."?id=".$id."&&risultati=true\">visuliazza risultati</a>";
echo "</div>";
}
else
{
echo "<br><br>devi scegliere un opzione prima di votare<br> <a href=\"".$nomePagina."?id=".$id."\">torna votare</a>";
}
}
else
{
if($risultati)
{
echo "<div style=\" color:#e2f4fe; text-align:left; width: 500px; margin: 0 auto; \">";
echo "<h2> risultati del sondaggio $id </h2>";
echo $sonda->get_domanda();
$sonda->stampa();
echo "<a href=\"".$nomePagina."?id=".$id."\"> torna a votare</a><br><br>visualizza altri sondaggi";
$vecchi=$racco->get_sondaggi($id);
for($i=0;$i<count($vecchi); $i++)
{
echo "<a href=\"".$nomePagina."?id=".$vecchi[$i]."&&risultati=true\">".$vecchi[$i]."</a><br>";
}
echo "</div>";
}
else
{
echo "<div style=\"color:#e2f4fe; text-align:left; width: 400px; margin: 0 auto;\">";
echo "<h2>sondaggio ".$id."</h2>";
echo "<form method=post action=\"".$nomePagina."?id=".$id."\">".$sonda->get_domanda()."<br>";
$elementi=$sonda->get_elementi();
$vecchi=$racco->get_sondaggi($id);
for($i=0;$i<count($elementi);$i++)
{
echo "<input type=\"radio\" name=\"risposta\" value=\"".$elementi[$i]."\">".$elementi[$i]." <br>";
}
echo ("
<input type=\"submit\" name=\"vota\" value=\"invia\">
</form>
vecchi sondaggi:<br>");
for($i=0;$i<count($vecchi); $i++)
{
echo "<a href=\"".$nomePagina."?id=".$vecchi[$i]."\">".$vecchi[$i]."</a><br>";
}
echo ("
</div>
<a href=\"".$nomePagina."?login=true\">nuovo sondaggio</a>
");
}
}
}
/*==========fine script pagina================================*/
/*==============classe raccolta sondaggi====================*/
class raccoltaSondaggi
{
var $sondaggi;
function get_ultimo()
{
$ultimo=array_pop($this->sondaggi);
$this->sondaggi[]=$ultimo;
return $ultimo;
}
/* riceve id per eliminare il sondaggio corrente e restituire solo i mancanti! */
function get_sondaggi($id)
{
for ($i=count($this->sondaggi);$i>=0;$i--)
{
if($this->sondaggi[$i]!=$id)
{
$elenco[]=$this->sondaggi[$i];
}
}
return $elenco;
}
function aggiungi_sondaggio($id,$domanda,$opzioni)
{
$opzioni=explode("&&",$opzioni);
$sonda=new sondaggio();
$sonda->inserisci_domanda($domanda);
for($i=0;$i<count($opzioni);$i++)
{
$sonda->inizializza_elemento($opzioni[$i]);
}
$sonda->salva($id);
$this->sondaggi[]=$id;
}
function stampa()
{
for ($i=count($this->sondaggi);$i>=0;$i--)
{
echo $this->sondaggi[$i]."<br>";
}
}
function salva()
{
$dati=implode("(&sep)",$this->sondaggi);
$file=fopen("dati/sondaggi.list","w");
fwrite($file,$dati);
fclose($file);
}
function carica()
{
$dati=@file("dati/sondaggi.list");
$dati=explode("(&sep)",$dati[0]);
for ($i=0;$i<count($dati);$i++)
{
$this->sondaggi[]=$dati[$i];
}
}
}
/*==================classe sondaggio=================================*/
class sondaggio
{
var $domanda;
var $elementi;
var $numero;
function inserisci_domanda($domanda)
{
$this->domanda=$domanda;
}
function get_domanda()
{
return $this->domanda;
}
function get_elementi()
{
return $this->elementi;
}
function get_numeri()
{
return $this->numeri;
}
function inizializza_elemento($elemento)
{
$this->elementi[]=$elemento;
$this->numero[]=0;
}
function aggiungi($nome)
{
$this->elementi[]=$nome;
$this->numero[]=1;
}
function incrementa($nome)
{
$dim=count($this->elementi);
for ($i=0;$i<$dim;$i++)
{
if($this->elementi[$i]==$nome)
{
$pos=$i;
break;
}
}
if(isset($pos))
{
$this->numero[$pos]++;
}
else
{
$this->aggiungi($nome);
}
}
function get_percentuali()
{
for($i=0;$i<count($this->elementi); $i++)
{
$somma=$somma+$this->numero[$i];
}
for($i=0;$i<count($this->elementi); $i++)
{
$percentuali[]=($this->numero[$i]/$somma)*100;
}
return $percentuali;
}
function stampa()
{
$percentuali=$this->get_percentuali();
echo "<table cellpadding=3>";
echo "<tr><td><b>risposte</b></td><td><b>voti</b></td><td><b>percentuali</b></td></tr>";
for ($i=0; $i < count($this->elementi); $i++)
{
echo "<tr>";
echo "<td>".$this->elementi[$i]."</td>";
echo "<td align=\"center\">".$this->numero[$i]."</td>";
echo "<td> <table height=\"15\"><tr><td bgcolor=\"#e2f4fe\" width=\"".$percentuali[$i]."\"></td><td></td></tr></table></td>";
echo "<td>".(int)$percentuali[$i]."%</td>";
echo "</tr>";
}
echo "</table>";
}
function stampa_elementi()
{
for($i=0;$i<count($this->elementi);$i++)
{
echo "<b>".$this->elementi[$i]."</b><br>";
}
}
function stampa_numeri()
{
for($i=0;$i<count($this->numero);$i++)
{
echo "<b>".$this->numero[$i]."</b><br>";
}
}
function salva($sondaggio)
{
for($i=0;$i<count($this->elementi);$i++)
{
$stringa[$i] = $this->elementi[$i]."=".$this->numero[$i];
}
$dati=$this->domanda."(&tit)".implode("(&sep)",$stringa);
$file=fopen("dati/$sondaggio.dat","w");
fwrite($file,$dati);
fclose($file);
}
function carica($sondaggio)
{
$dati=@file("dati/$sondaggio.dat");
$dati=explode("(&tit)",$dati[0]);
$this->domanda=$dati[0];
if($dati)
{
$stringhe=explode("(&sep)",$dati[1]);
for($i=0;$i<count($stringhe);$i++)
{
$temp=explode("=",$stringhe[$i]);
$this->elementi[]=$temp[0];
$this->numero[]=$temp[1];
}
return true;
}
else
{
return false;
}
}
}
?>
</body>
</html>
<!=======sonda-v2.conf.php===============>
<?php
/*=================================================================================*/
/*======configurazione sonda-v2===distribuito sotto licenza gpl====================*/
/*====tutti i diritti rivendicati, melegnano maggio 2005, brainstabber [27e½]======*/
/*=================================================================================*/
$user=root;
$password=root;
?>
Squid - Bloqueio e liberação de páginas em PHP
Nenhum comentário foi encontrado.
Papagaiando o XFCE com temas e recursos
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Atualizações de Segurança Automáticas no Debian
Como cortar as partes de um vídeo com passagens de áudio em branco
Tiling automático no KDE Plasma
SNMP Scan no OCS Inventory só funciona com HTTPS corretamente configurado
Alguém tem que acabar com ANATEL!!! (1)
Reflexão sobre a sobrevivência do Gentoo Linux (0)
GOG confirma suporte oficial ao sistema Linux: "o trabalho começo... (4)









