Controllare se un utente ha gia votato!!

phpalex93

Nuovo Utente
30 Mar 2013
16
0
0
Come posso controllare che un utente ha gia votato il sondaggio, qualcuno puo aiutarmi??
questo è il mio codice!!
PHP:
<?php
session_start();
include_once "conn.inc.php";
$nomeU = $_SESSION['utente'];
if($_SESSION['loggato'] != true)
	{
	header('location:login.htm');
	}
	
$sql2=("Select idUtente FROM utente where username='$nomeU'");
$ris2=mysql_query($sql2);
$nr2=mysql_num_rows($ris2) or die (mysql_error());
if ($nr2 == 0)
{
die ("<h1>Non sono state inserite domande nella tabella</h1>");
}
else
{
	for($j=0;$j <$nr2; $j++)
	{
	$id=mysql_result($ris2,$j,"idUtente");
	}
	
}

$sql3=("Select * FROM sondaggio WHERE idUser='$id';");
$ris3=mysql_query($sql3);
$nr3=mysql_num_rows($ris3) or die (mysql_error());
if ($nr3 != 0)
{
header('location:error.htm');
}



echo "BENVENUTO $nomeU rispondi alle domande!!";
echo '</br>';
echo '</br>';
if (isset($_POST["arg"]))
	 {
	 $n=$_POST["arg"];
	 }
	 


$sql=("Select * FROM domande Where idSondi='$n'");
$ris=mysql_query($sql);
$nr=mysql_num_rows($ris) or die (mysql_error());
if ($nr == 0)
{
die ("<h1>Non sono state inserite domande nella tabella</h1>");
}
else
{
echo '<div>';

?>
<html>
<body>
<form name="" action="doman.php<?php mysql_query("update sondaggio set idUser='$id' where idSondaggio = '$n';") or die(mysql_error());  ?>" method="post" >
<?php
for($i=0;$i <$nr; $i++)
{

echo  mysql_result($ris,$i,"domanda");

$sql1=("Select * FROM Tipo");
$ris1=mysql_query($sql1);
$nr1=mysql_num_rows($ris1) or die (mysql_error());
if ($nr1 == 0)
{
die ("<h1>Non sono state inserite domande nella tabella</h1>");
}
else
{
	
	echo '<p>';
	while ($row = mysql_fetch_array($ris1))
	{
		
		echo ' <input type="radio" name="'.mysql_result($ris,$i,"idDomanda").'"  value="'.$row["idTipo"].'" Checked="True" />';
		echo  $row["nome"];
	}
	
	echo '</p>';
		
}
echo '</br>';

}
echo '</div>';
echo  '<input type=submit title="conferma" value="conferma" />&nbsp;&nbsp;';
echo '</form>';
}

session_destroy();
?>
è molto consusionario perche non so proprio come fare!!
 
PHP:
select * from sondaggio where idUser='$id' && idSondaggio = '$n'
se trovi il record vuol dire che ha votato altrimenti no
 
grazie, comunque il pezzo di codice:
PHP:
<form name="ciao" action="doman.php<?php mysql_query("update sondaggio set idUser='$id' where idSondaggio = '$n';") or die(mysql_error());  ?>" method="post" >
è giusto o sbagliato quando invio le risposte??
 
Mi rionosce se un utente ha gia votato, pero se è la prima volta che vota, mi fa una pagina bianca senza niente e rimane bloccato!! Quale potrebbe essere il problema???
 
ho trovato una soluzione alternativa, pero mi fa sempre pagina bianca e non so perche!!! Comunque mi sono creato una tabella a parte,chiamata prova, dove salvo l'id utente e l'id del sondaggio una volta premuto il tasto conferma!!
Questo è il codice, sembra giusto ma qualcosa non va!!
PHP:
<?php
session_start();
include_once "conn.inc.php";
$nomeU = $_SESSION['utente'];
if($_SESSION['loggato'] != true)
	{
	header('location:login.htm');
	}
if (isset($_POST["arg"]))
	 {
	 $n=$_POST["arg"];
	 }

$sql2=("Select idUtente FROM utente where username='$nomeU'");
$ris2=mysql_query($sql2);
$nr2=mysql_num_rows($ris2) or die (mysql_error());
if ($nr2 == 0)
{
die ("<h1>Non sono state inserite domande nella tabella</h1>");
}
else
{
	for($j=0;$j <$nr2; $j++)
	{
	$id=mysql_result($ris2,$j,"idUtente");
	}
	
}

$sql3=("Select ids,idu FROM prova Where ids='$n' and idu='$id';");
$ris3=mysql_query($sql3);
$nr3=mysql_num_rows($ris3) or die (mysql_error());
if ($nr3 != 0)
{
echo 'hai gia votato questo sondaggio!';
}

echo "BENVENUTO $nomeU rispondi alle domande!!";
echo '</br>';
echo '</br>';
$sql=("Select * FROM domande Where idSondi='$n'");
$ris=mysql_query($sql);
$nr=mysql_num_rows($ris) or die (mysql_error());
if ($nr == 0)
{
die ("<h1>Non sono state inserite domande nella tabella</h1>");
}
else
{
echo '<div>';

?>
<html>
<body>
<form name="ciao" action="dom.php<?php mysql_query("insert into prova (ids,idu) values('$n','$id');") or die(mysql_error()); ?>" method="post" >
<?php
for($i=0;$i <$nr; $i++)
{

echo  mysql_result($ris,$i,"domanda");

$sql1=("Select * FROM Tipo");
$ris1=mysql_query($sql1);
$nr1=mysql_num_rows($ris1) or die (mysql_error());
if ($nr1 == 0)
{
die ("<h1>Non sono state inserite domande nella tabella</h1>");
}
else
{
	
	echo '<p>';
	while ($row = mysql_fetch_array($ris1))
	{
		
		echo ' <input type="radio" name="'.mysql_result($ris,$i,"idDomanda").'"  value="'.$row["idTipo"].'" Checked="True" />';
		echo  $row["nome"];
	}
	
	echo '</p>';
		
}
echo '</br>';

}
echo '</div>';
echo  '<input type=submit title="conferma" value="conferma" />&nbsp;&nbsp;';
echo '</form>';
}

session_destroy();
?>

Se tolgo la query:
PHP:
$sql3=("Select ids,idu FROM prova Where ids='$n' and idu='$id';");
$ris3=mysql_query($sql3);
$nr3=mysql_num_rows($ris3) or die (mysql_error());
if ($nr3 != 0)
{
echo 'hai gia votato questo sondaggio!';
}
Il sondaggio parte, ma dopo non ho piu il controllo!! Qualche idea??
 

Discussioni simili