Ciao a tutti,
Come posso creare un sondaggio in lingua html o javascript?
Aiutatemi per favore.
Ciao a tutti,
Come posso creare un sondaggio in lingua html o javascript?
Aiutatemi per favore.
Con solo HTML e/o JavaScript non è possibile farlo. L'unico modo sarebbe quello di utilizzare il PHP. Puoi trovare alcuni script già pronti qui.
P.S.: Sposto nella sezione dedicata al PHP.
Ultima modifica di funcool : 21-01-2007 alle ore 19.23.08
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
ok grazie mille
EDIT: Ho un poblema con un script, mi dice di importare il file av_pole.sql nel database mysql, io lo importo ma mi dà quest'errore:
il file sql che devo importare è questo:Codice PHP:
Messaggio di MySQL:
#1067 - Invalid default value for 'ap_id'
Aiutatemi GrazieCodice PHP:
#
# Table structure for table 'av_pole'
#
CREATE TABLE av_pole (
ap_id int(255) DEFAULT '0' NOT NULL auto_increment,
ad_id int(255) DEFAULT '0' NOT NULL ,
ip varchar(20) DEFAULT '' NOT NULL ,
Primary key(ap_id));
#
# Table structure for table 'av_pole_def'
#
CREATE TABLE av_pole_def (
ad_id int(255) DEFAULT '0' NOT NULL auto_increment,
am_id int(255) DEFAULT '0' NOT NULL ,
ad_name varchar(60) DEFAULT '' NOT NULL ,
Primary key(ad_id));
#
# Table structure for table 'av_pole_master'
#
CREATE TABLE av_pole_master (
am_id int(255) DEFAULT '0' NOT NULL auto_increment,
am_name varchar(200) DEFAULT '' NOT NULL ,
Primary key(am_id));
FunCool: Non scrivere due messaggi consecutivi, utilizza il tasto Edita.
Ultima modifica di funcool : 23-01-2007 alle ore 12.30.54
Prova con questoCodice:CREATE TABLE av_pole ( ap_id int(255) NOT NULL auto_increment, ad_id int(255) DEFAULT '0' NOT NULL , ip varchar(20) DEFAULT '' NOT NULL , Primary key(ap_id)); # # Table structure for table 'av_pole_def' # CREATE TABLE av_pole_def ( ad_id int(255) NOT NULL auto_increment, am_id int(255) DEFAULT '0' NOT NULL , ad_name varchar(60) DEFAULT '' NOT NULL , Primary key(ad_id)); # # Table structure for table 'av_pole_master' # CREATE TABLE av_pole_master ( am_id int(255) NOT NULL auto_increment, am_name varchar(200) DEFAULT '' NOT NULL , Primary key(am_id));
ho risolto grazie lo stesso
EDIT: ho un altro problema, come faccio in modo che il voto non viene non può essere fatto più di 1 volta rilevandi l'ip?
Ultima modifica di planetdownload : 21-01-2007 alle ore 21.32.26
Puoi agevolmente utilizzare la variabile $_SERVER['REMOTE_ADDR'] che rileva proprio l'ip.
Luffio Web Site, Luffio's personal site
Age Of Empires GIF, sito per la creazione di GIF animate di Age of Empires
Clan italiano di Age of Empires The Conquerors, uno dei più vecchi ancora attivi
EDIT: ho creato una tabella el DataBase My SQL, ho creato 2 campi uno ID del tip INT con auto_increment e l'ho messo anche come chiave primaria,in seguito nel 2 campo l'ho chiamato IP del tipo Varchar con lunghezza di 15; mi potreste spiegare come adesso dovrei fare in seguito, in modo che l'ip del'utente venga trasferito nella tabella?e fare in modo che se l'utente volesse votare non può perchè il suo ip risulta presente sulla tabella. Grazie mille
Ultima modifica di planetdownload : 22-01-2007 alle ore 17.25.48
Per inserire l'indirizzo IP nel database:
Per verificare che l'indirizzo IP è già presente nella tabella:Codice PHP:
mysql_query("INSERT INTO nometabella (ip) VALUES ('{$_SERVER['REMOTE_ADDR']}')");
Codice PHP:
$risultato=mysql_query("SELECT * FROM nometabella WHERE ip='{$_SERVER['REMOTE_ADDR']}'");
if (mysql_num_rows($risultato))
echo "IP presente.";
else
echo "IP non presente.";
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
ok grazie mille della risposta, adesso non capisco dove si devono inserire questi codici, credo che si inseriscono nel file in cui aggiunge il voto, ma da quale parte dl file?
ecco il file:
vote.php
Codice PHP:
<?php
/*
Aplomb Poll - Version 1.1
Copyright (C) 2003 Aplomb Scripts
http://www.global-centre.com/aplomb/
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
require_once("functions/general.php");
$exectime['start'] = GetTime();
require ("config.php");
function PrintHeader() {
?>
<!-- Start HTML Header -->
<html>
<head>
<title>Planet Wrestling - Sondaggio</title>
<style type="text/css">p, table, tr, td, h6, input, option, select, textarea { font-family: Verdana, Arial, Helvetica, sans-serif; }.copyright { color: #000000; font-size: 8pt; font-family: Verdana, Arial, Helvetica, sans-serif; }a:link, a:visited, a:active { color: #336699; font-family: Verdana, Arial, Helvetica, sans-serif; text-decoration: underline; }a:hover { color:#990000; font-family: Verdana, Arial, Helvetica, sans-serif; text-decoration: underline; }</style>
</head>
<body>
<!-- End HTML Header -->
<?php
}
function PrintFooter() {
global $exectime;
$exectime['end'] = GetTime();
$exectime = CalcTime($exectime);
?>
<!-- Start HTML Footer -->
</body>
</html>
<!-- End HTML Footer -->
<?php
}
function Error($error) {
PrintHeader();
echo '<table border="0" cellpadding="5" width="100%" cellspacing="0"><tr><th style="background-color: #A72305; color: #FFFFFF; text-align: left;">Errore!</th></tr><tr><td>'.$error.'<br /><br />Per qualsiasi problema, contattare il webmaster.<br /><br /><a href="javascript:history.back()">Indietro</a></td></tr></table>';
PrintFooter();
exit;
}
// Perform Basic Checks
if ($_POST['poll'] == "") {
Error ("No poll specified.");
}
if (!file_exists("db/".$_POST['poll'])) {
Error ("Poll does not exist.");
}
if ($_POST['pollanswer'] == "") {
Error ("Non hai selezionato un voto.");
}
if ($_POST['pollanswer'] != "3" AND $_POST['pollanswer'] != "5" AND $_POST['pollanswer'] != "7" AND $_POST['pollanswer'] != "9" AND $_POST['pollanswer'] != "11" AND $_POST['pollanswer'] != "13" AND $_POST['pollanswer'] != "15" AND $_POST['pollanswer'] != "17" AND $_POST['pollanswer'] != "19" AND $_POST['pollanswer'] != "21") {
Error ("Non hai selezionato un voto.");
}
// Open the Poll File
$filep = fopen ("db/".$_POST['poll'], "r");
$contents = fread ($filep, filesize ("db/".$_POST['poll']));
fclose ($filep);
$contents = explode("|", $contents);
if ($contents['1'] == "0") {
Error ("Questo sondaggio è chiuso. Non puoi votare perchè il sondaggio è chiuso.");
}
// Add the vote..
// Increase the amount of votes
++$contents['2'];
switch ($_POST['pollanswer']) {
case '3':
++$contents['4'];
break;
case '5':
++$contents['6'];
break;
case '7':
++$contents['8'];
break;
case '9':
++$contents['10'];
break;
case '11':
++$contents['13'];
break;
case '13':
++$contents['14'];
break;
case '15':
++$contents['16'];
break;
case '17':
++$contents['18'];
break;
case '19':
++$contents['20'];
break;
case '21':
++$contents['22'];
break;
}
// Write
$contentsw = implode ("|", $contents);
$filep = fopen ("db/".$_POST['poll'], "w");
fwrite ($filep, $contentsw);
fclose ($filep);
// Display Message
PrintHeader();
echo '<table border="0" cellpadding="5" width="100%" cellspacing="0"><tr><th style="background-color: #A72305; color: #FFFFFF; text-align: left;">Grazie per il tuo voto!</th></tr><tr><td><b>'.$contents['0'].'</b><br />Voti Totali: '.$contents['2'].'<br />';
function PrintResult($id) {
global $contents;
$percent = number_format((($contents[$id] / $contents['2']) * 100), 1);
return '('.$contents[$id].' voti)'.' '.$percent.'% <img src="bar.gif" height="10" width="'.($percent * 3).'" />';
}
// Results
if ($contents['3'] != "") {echo "<p><b>".$contents['3']."</b> ".PrintResult("4")."</p>";}
if ($contents['5'] != "") {echo "<p><b>".$contents['5']."</b> ".PrintResult("6")."</p>";}
if ($contents['7'] != "") {echo "<p><b>".$contents['7']."</b> ".PrintResult("8")."</p>";}
if ($contents['9'] != "") {echo "<p><b>".$contents['9']."</b> ".PrintResult("10")."</p>";}
if ($contents['11'] != "") {echo "<p><b>".$contents['11']."</b> ".PrintResult("12")."</p>";}
if ($contents['13'] != "") {echo "<p><b>".$contents['13']."</b> ".PrintResult("14")."</p>";}
if ($contents['15'] != "") {echo "<p><b>".$contents['15']."</b> ".PrintResult("16")."</p>";}
if ($contents['17'] != "") {echo "<p><b>".$contents['17']."</b> ".PrintResult("18")."</p>";}
if ($contents['19'] != "") {echo "<p><b>".$contents['19']."</b> ".PrintResult("20")."</p>";}
if ($contents['21'] != "") {echo "<p><b>".$contents['21']."</b> ".PrintResult("22")."</p>";}
echo '<a href="javascript:history.back()">Back</a> | <a href="'.$settings['siteurl'].'">Return to Site</a></td></tr></table>';
PrintFooter();
?>
Dopo a dove dà l'errore "Non hai selezionato un voto." devi aggiungere il pezzo dove controlli che l'indirizzo IP non sia già presente nel database:
Invece il pezzo dove inserisci il voto nel database lo metti subito dopo alla scritta:Codice PHP:
$risultato=mysql_query("SELECT * FROM nometabella WHERE ip='{$_SERVER['REMOTE_ADDR']}'");
if (mysql_num_rows($risultato))
Error("Hai già votato.");
Inoltre all'inizio dello script devi aggiungere la connessione al database.Codice PHP:
// Add the vote..
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
ti ringrazio nuovamente, allora devo aggiungere all'inizio del file la connesione del database ad esempio:
dopo aver aggiunto questo, devo fare qualcos'altro?Codice:$db_host="localhost"; $db_username="username"; $db_password="pass"; $db_name="name db"
Grazie ancora.
I dati per la connessione al database li puoi trovare qui.
Poi devi aggiungere la connessione vera e propria:
Codice PHP:
$db=mysql_connect($db_host, $db_username, $db_password);
if ($db==FALSE)
die ("Errore nella connessione. Verificare i parametri nel file di connessione.");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file di connessione.");
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
inserendo i miei dati mi da l'errore, ma sono sicuro che i dati che inserisco sono giusti, ecco come sono:
non riesco a capire dove sbaglio comunque ti do lo script: http://planetdownload.altervista.org...cript_3402.zipCodice PHP:
$db=mysql_connect($localhost, $planetdownload, $mia pass dell'account);
if ($db==FALSE)
die ("Errore nella connessione. Verificare i parametri nel file di connessione.");
mysql_select_db($my_planetdownload, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file di connessione.");
spero che risolverò questo problema
[/PHP]
Il pezzo che ti ho scritto io lo devi lasciare com'è. Devi modificare il pezzo che hai scritto tu come spiegato nel link che ti ho scritto prima.
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Oh non me ne sono accorto, grazie, funziona perfettamente, grazie tante funcool per avermi aiutato.
EDIT: come posso creare una pagna dove viene visualizzato solamente il risultato dopo il voto?
Ultima modifica di planetdownload : 24-01-2007 alle ore 21.17.13
Beh, a questo punto ti conveniva prendere un altro script.
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
allora questo è il fle vote.php in cui viene visualizzato anche il risultato del sondaggio
io vorrei solo sapere qualè il pezzo che fà funzionare la visualizzazione del risultato del sondaggio,dopo dove devo aggungee il pezzo?grazieCodice PHP:
<?php
/*
Aplomb Poll - Version 1.1
Copyright (C) 2003 Aplomb Scripts
http://www.global-centre.com/aplomb/
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
require_once("functions/general.php");
$exectime['start'] = GetTime();
require ("config.php");
function PrintHeader() {
?>
<!-- Start HTML Header -->
<html>
<head>
<title>Planet Wrestling - Sondaggio</title>
<style type="text/css">p, table, tr, td, h6, input, option, select, textarea { font-family: Verdana, Arial, Helvetica, sans-serif; }.copyright { color: #000000; font-size: 8pt; font-family: Verdana, Arial, Helvetica, sans-serif; }a:link, a:visited, a:active { color: #336699; font-family: Verdana, Arial, Helvetica, sans-serif; text-decoration: underline; }a:hover { color:#990000; font-family: Verdana, Arial, Helvetica, sans-serif; text-decoration: underline; }</style>
</head>
<body>
<!-- End HTML Header -->
<?php
}
function PrintFooter() {
global $exectime;
$exectime['end'] = GetTime();
$exectime = CalcTime($exectime);
?>
<!-- Start HTML Footer -->
</body>
</html>
<!-- End HTML Footer -->
<?php
}
function Error($error) {
PrintHeader();
echo '<table border="0" cellpadding="5" width="100%" cellspacing="0"><tr><th style="background-color: #A72305; color: #FFFFFF; text-align: left;">Errore!</th></tr><tr><td>'.$error.'<br /><br />Per qualsiasi problema, contattare il webmaster.<br /><br /><a href="javascript:history.back()">Indietro</a></td></tr></table>';
PrintFooter();
exit;
}
// Perform Basic Checks
if ($_POST['poll'] == "") {
Error ("No poll specified.");
}
if (!file_exists("db/".$_POST['poll'])) {
Error ("Poll does not exist.");
}
if ($_POST['pollanswer'] == "") {
Error ("Non hai selezionato un voto.");
}
if ($_POST['pollanswer'] != "3" AND $_POST['pollanswer'] != "5" AND $_POST['pollanswer'] != "7" AND $_POST['pollanswer'] != "9" AND $_POST['pollanswer'] != "11" AND $_POST['pollanswer'] != "13" AND $_POST['pollanswer'] != "15" AND $_POST['pollanswer'] != "17" AND $_POST['pollanswer'] != "19" AND $_POST['pollanswer'] != "21") {
Error ("Non hai selezionato un voto.");
}
// Open the Poll File
$filep = fopen ("db/".$_POST['poll'], "r");
$contents = fread ($filep, filesize ("db/".$_POST['poll']));
fclose ($filep);
$contents = explode("|", $contents);
if ($contents['1'] == "0") {
Error ("Questo sondaggio è chiuso. Non puoi votare perchè il sondaggio è chiuso.");
}
// Add the vote..
// Increase the amount of votes
++$contents['2'];
switch ($_POST['pollanswer']) {
case '3':
++$contents['4'];
break;
case '5':
++$contents['6'];
break;
case '7':
++$contents['8'];
break;
case '9':
++$contents['10'];
break;
case '11':
++$contents['13'];
break;
case '13':
++$contents['14'];
break;
case '15':
++$contents['16'];
break;
case '17':
++$contents['18'];
break;
case '19':
++$contents['20'];
break;
case '21':
++$contents['22'];
break;
}
// Write
$contentsw = implode ("|", $contents);
$filep = fopen ("db/".$_POST['poll'], "w");
fwrite ($filep, $contentsw);
fclose ($filep);
// Display Message
PrintHeader();
echo '<table border="0" cellpadding="5" width="100%" cellspacing="0"><tr><th style="background-color: #A72305; color: #FFFFFF; text-align: left;">Grazie per il tuo voto!</th></tr><tr><td><b>'.$contents['0'].'</b><br />Voti Totali: '.$contents['2'].'<br />';
function PrintResult($id) {
global $contents;
$percent = number_format((($contents[$id] / $contents['2']) * 100), 1);
return '('.$contents[$id].' voti)'.' '.$percent.'% <img src="bar.gif" height="10" width="'.($percent * 3).'" />';
}
// Results
if ($contents['3'] != "") {echo "<p><b>".$contents['3']."</b> ".PrintResult("4")."</p>";}
if ($contents['5'] != "") {echo "<p><b>".$contents['5']."</b> ".PrintResult("6")."</p>";}
if ($contents['7'] != "") {echo "<p><b>".$contents['7']."</b> ".PrintResult("8")."</p>";}
if ($contents['9'] != "") {echo "<p><b>".$contents['9']."</b> ".PrintResult("10")."</p>";}
if ($contents['11'] != "") {echo "<p><b>".$contents['11']."</b> ".PrintResult("12")."</p>";}
if ($contents['13'] != "") {echo "<p><b>".$contents['13']."</b> ".PrintResult("14")."</p>";}
if ($contents['15'] != "") {echo "<p><b>".$contents['15']."</b> ".PrintResult("16")."</p>";}
if ($contents['17'] != "") {echo "<p><b>".$contents['17']."</b> ".PrintResult("18")."</p>";}
if ($contents['19'] != "") {echo "<p><b>".$contents['19']."</b> ".PrintResult("20")."</p>";}
if ($contents['21'] != "") {echo "<p><b>".$contents['21']."</b> ".PrintResult("22")."</p>";}
echo '<a href="javascript:history.back()">Back</a> | <a href="'.$settings['siteurl'].'">Return to Site</a></td></tr></table>';
PrintFooter();
?>
Questo pezzo scrive ringrazia per aver votato e scrive il numero totale dei votanti:
Questo pezzo serve a scrivere i risultati:Codice PHP:
// Display Message
PrintHeader();
echo '<table border="0" cellpadding="5" width="100%" cellspacing="0"><tr><th style="background-color: #A72305; color: #FFFFFF; text-align: left;">Grazie per il tuo voto!</th></tr><tr><td><b>'.$contents['0'].'</b><br />Voti Totali: '.$contents['2'].'<br />';
Codice PHP:
function PrintResult($id) {
global $contents;
$percent = number_format((($contents[$id] / $contents['2']) * 100), 1);
return '('.$contents[$id].' voti)'.' '.$percent.'% <img src="bar.gif" height="10" width="'.($percent * 3).'" />';
}
// Results
if ($contents['3'] != "") {echo "<p><b>".$contents['3']."</b> ".PrintResult("4")."</p>";}
if ($contents['5'] != "") {echo "<p><b>".$contents['5']."</b> ".PrintResult("6")."</p>";}
if ($contents['7'] != "") {echo "<p><b>".$contents['7']."</b> ".PrintResult("8")."</p>";}
if ($contents['9'] != "") {echo "<p><b>".$contents['9']."</b> ".PrintResult("10")."</p>";}
if ($contents['11'] != "") {echo "<p><b>".$contents['11']."</b> ".PrintResult("12")."</p>";}
if ($contents['13'] != "") {echo "<p><b>".$contents['13']."</b> ".PrintResult("14")."</p>";}
if ($contents['15'] != "") {echo "<p><b>".$contents['15']."</b> ".PrintResult("16")."</p>";}
if ($contents['17'] != "") {echo "<p><b>".$contents['17']."</b> ".PrintResult("18")."</p>";}
if ($contents['19'] != "") {echo "<p><b>".$contents['19']."</b> ".PrintResult("20")."</p>";}
if ($contents['21'] != "") {echo "<p><b>".$contents['21']."</b> ".PrintResult("22")."</p>";}
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
grazie mille adesso mi manca soltando l'ultima cosa: come faccio in modo che tutto questo compare nel messaggio in cui dice che ha già votato?questo è l'ultimo problema grazie mille