Sistema De Enquete
#16
Posted 20/12/2005, 14:36
usando $erro = $erro +1; imprime
1213121412131215
$erro = $erro++; imprime
2222222222222221
#17
Posted 20/12/2005, 14:43
e depois vc verifica... bom faz isso usando array + facil do q ficar criando varias variaveis diferentes
if (empty($_POST['CAMPO'])){
$Erro[1] = $Erro[1] + 1;
} elseif (.....) {
$Erro[2] = $Erro[2] + 1;
}
e ai vai..
T+
PALMEIRAS - Primeiro campeão do mundo em 1951
#18
Posted 20/12/2005, 14:48
#19
Posted 20/12/2005, 15:01
po cara... n intendi como vc kiz dizer....
<? if(empty($_POST['resposta1'])) { $erro[1] = $erro[1] + 1; } elseif(empty($_POST['resposta2'])) { $erro[2] = $erro[2] + 1; } elseif(empty($_POST['resposta3'])) { $erro[3] = $erro[3] + 1; } elseif(empty($_POST['resposta4'])) { $erro[4] = $erro[4] + 1; } elseif(empty($_POST['resposta5'])) { $erro[5] = $erro[5] + 1; } echo (is_array($erro))?'Contém RESPOSTA EM BRANCO':'nenhuma resposta está em branco'; ?>
PALMEIRAS - Primeiro campeão do mundo em 1951
#20
Posted 20/12/2005, 15:26
Contém RESPOSTA EM BRANCO
':'
falta alguma coisa...
#21
Posted 20/12/2005, 15:32
T+
PALMEIRAS - Primeiro campeão do mundo em 1951
#22
Posted 20/12/2005, 15:39
ué... ta td certo...então e pq ta vindo alguma variavel em BRANCO ou o nome da varivel está errado...
T+
os campos do form são esses mesmo...
#23
Posted 20/12/2005, 16:08
Gostaria de saber d vc, Masters... O q não funfo naquele exemplo q te passei?
Este formulário, por exemplo, funciona:
<html><head><title>Adiciona enquete</title> <script language=JavaScript> function habilita(x) { for(var i=1;i<=5;i++) { with(document.forms[0]['resp'+i]) { disabled=(i>x); style.backgroundColor=(i>x)?'#cccccc':'white'; } } } </script></head> <body> <form method=post action=recebe.php> Pergunta: <input type=text name=pergunta><br> Nº de respostas: <select name=nresp onChange=habilita(this.value)> <option value=1>1<option value=2>2<option value=3>3<option value=4>4<option value=5 selected>5</select> <br>Resposta 1: <input type=text name=resp1><br> Resposta 2: <input type=text name=resp2><br> Resposta 3: <input type=text name=resp3><br> Resposta 4: <input type=text name=resp4><br> Resposta 5: <input type=text name=resp5><br> <input type=submit value=CADASTRAR> </form> </body></html>
Desta forma, a página recebe.php receberá o campo "nresp" contendo o número de respostas selecionado no formulário.
Eu testei este exemplo aqui no meu trabalho e funcionou, portanto, me avise depois se algo der errado.
Um abraço,
Thales Medeiros.
#24
Posted 20/12/2005, 16:12
Um exemplo do script recebe.php:
<? $respostas=Array('','','','',''); for($i=0;$i<$_POST['nresp'];$i++) $respostas[$i]=$_POST['resp'.($i+1)]; $pergunta=$_POST['pergunta'] mysql_query("INSERT INTO enquetes VALUES (0,'$pergunta','$_POST[nresp]','{$respostas[0]}','{$respostas[1]}','{$respostas[2]}','{$respostas[3]}','{$respostas[4]}',0,0,0,0,0"); ?>
Isto é para a tabela com a seguinte estrutura:
ID, Pergunta, Número de Respostas, Resposta1, Resposta2, Resposta3, Resposta4, Resposta5, NVotos1, NVotos2, NVotos3, NVotos4, NVotos5
Acho q tem um campo data na sua estrutura, tb. Mas não me lembro onde ele fica. Basta no INSERT, na posição do campo DATA, colocar o valor 'now()'. Só isto!
Um abraço,
Thales Medeiros.
#25
Posted 20/12/2005, 16:24
bom tópico encerrado ...
T+
PALMEIRAS - Primeiro campeão do mundo em 1951
#26
Posted 20/12/2005, 16:31
oq falta.... eh ver quantos campos foram preenchidos.... isso em PHP !!!!!
if(empty($_POST['resposta1'])) {
$erro[1] = $erro[1] + 1;
} elseif(empty($_POST['resposta2'])) {
$erro[2] = $erro[2] + 1;
} elseif(empty($_POST['resposta3'])) {
$erro[3] = $erro[3] + 1;
} elseif(empty($_POST['resposta4'])) {
$erro[4] = $erro[4] + 1;
} elseif(empty($_POST['resposta5'])) {
$erro[5] = $erro[5] + 1;
}
echo (is_array($erro))?'Contém RESPOSTA EM BRANCO':'nenhuma resposta está em branco';
soh q assim n funfo.. e n sei como fazer
#27
Posted 20/12/2005, 17:28
Leia direitinho o meu penúltimo post antes deste. Repare que o HTML já entrega para o PHP a variável com o número de campos que foram selecionados para resposta. Não há verificação para ser feita, ok?
Bom uso!
Um abraço,
Thales Medeiros.
Goku: Tudo ok! (hahaha... Foi mal pelo erro! Quem não sabe digitar é assim, mesmo!)
#28
Posted 20/12/2005, 18:40
http://forum.wmonlin...ndpost&p=676833
ah Thales e GOKU e não GOKY
T+
PALMEIRAS - Primeiro campeão do mundo em 1951
#29
Posted 22/12/2005, 16:14
o sis de enquete ta perfeito!
mas precizo por 4 enquetes uma do lado da outra...até ai ta d perfeito...
a unica coisa q n ta funfando.. eh q n consegue pegar a variavel ID de cada enquete..... ele sempre pega o ID da 1° enquete:
<?
include("info.php");
$i=0;
$n = 5; //numero de colunas
$t = mysql_num_rows(mysql_query("SELECT * FROM enquetes"));
$tamanho = 100 / $t;
echo "<table width='700'border=0 cellpadding=10 cellspacing=0>";
$sql=mysql_query("SELECT * FROM enquetes LIMIT 4");
while($dados = mysql_fetch_array($sql)) {
$iddd = $dados['id'];
echo"<form name=\"form1\" method=\"post\" action=\"java script:abrir('enquete_votar.php?idde=";?><?=$dados['id']?><? echo"')\">";
echo $i%$n==0 ? "\n<tr>\n<td>" : "\n<td width='$tamanho%' valign='top'>";
echo"<font size='2' face='Verdana, Arial, Helvetica, sans-serif'><b>";?><?=$dados['pergunta']; echo"</b><br><br></font>
<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
for($i=1;$i<=$dados['num_respostas'];$i++) {
echo"<tr><td><input type=\"radio\" name=\"votar\" value=\"$i\"><font size='2' face='Verdana, Arial, Helvetica, sans-serif'>";
?><?=$dados['resposta'.$i]; echo" </td></tr>"; } ?> </td>
</tr>
</table>
<br />
<input type="submit" class="campos" name="Submit" value="Votar"/>
<br />
<span class="style3"><font arial,="Arial," helvetica,="Helvetica," sans-serif\="sans-serif\"">(<a href="java script:abrir('enquete_resultado.php?id=<?=$dados['id']?>')">Ver resultado parcial</a>)</font></span><font face="\"Verdana," arial,="Arial," helvetica,="Helvetica," sans-serif\="sans-serif\""><font size="\"1\""><br />
</font></font><span class="style2"><span class="style1">
<?
}
echo $i%$n==3 ? "\n</td>\n</tr>" : "\n</td>";
$i++;
echo"</table>";
?>
o q ta em vermelho n funfa......ele sempre pega o ID da 1° enquete
mas oq ta em verde..... (q usa a variavel id tbm) funfa... ele pega o ID correto d cada enquete..
qual problema ?
#30
Posted 22/12/2005, 19:35
tente assim
echo"<form name='form1' method='post' action=javascript:abrir('enquete_votar.php?idde=".$dados['id']."')>";
T+
PALMEIRAS - Primeiro campeão do mundo em 1951
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)