sonda-v2
Publicado por luca 10/05/2005
[ Hits: 4.289 ]
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;
?>
IP do usuario (usando arquivo tb)
Identificando o Navegador do Cliente Web
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
É normal não gostar de KDE? (9)
Linux é a solução para o fim do Windows10? (2)
Problemas com Driver NVIDIA (4)









