Vortemos!
Bom... Muito estranho o erro q está dando. Eu até vi um erro na consulta, mas não é motivo pra dar "parse error". Veja se na linha anterior (a do include "info.php"
vc não esqueceu do ponto-e-vírgula.
Aliás... Me sinto MUITO envergonhado, pq a consulta que eu te passei está COMPLETAMENTE errada!!! Estou mto acostumado com consultas no banco Oracle, lidando todo dia com este banco, então só falei coisas q não funcionam no MySql...
Vou te explicar o q me pediu!
Vc está bem habituado ao famoso "select * from tabela", certo? Pois vc está bem no início... Aos poucos vc vai começando a fazer umas consultas bem mais cabeludas e vai vendo q SQL é bem mais interessante do q vc imagina...
Vamos entender a consulta que mandei (errada, mas corrigirei agora) para o MySql:
SELECT
a.*,
DATE_FORMAT(data,'%d/%m/%Y') AS data_formatada,
(votos_resp1+votos_resp2+votos_resp3+votos_resp4+votos_resp5) as total
FROM enquetes AS a
WHERE id='$id'
Esqueça a função SUM(), ok? Ela não existe no MySql! Pra somar campos, basta usar o +, mesmo!
Para começar, pra que serve este "a" que tanto uso?
Vamos voltar ao famoso "SELECT * FROM tabela"... Ele é idêntico a isto:
SELECT a.* FROM tabela AS a
Estou simplesmente dando um "apelido" pra minha tabela. Toda vez que uso a palavra AS, significa que estou apelidando o que estava definido anteriormente. Portanto, quando fiz SELECT a.*, significa que eu queria todos os campos da tabela "a", que no caso, é a "tabela" que foi apelidada de "a". É só uma mania que tenho por trabalhar com consultas gigantescas o dia todo... Não era nem necessário seu uso na consulta q te mandei, portanto, me desculpe pela confusão.
Próximo passo, e aquele DATE_FORMAT? Bem... Se vc tem um campo do tipo DATE, toda vez q vc fizer um SELECT buscando este campo, ele virá no seguinte formato: "2005-12-15", por exemplo. Portanto, para exibi-lo de forma mais bonitinha, a gente formata a exibição usando a função DATE_FORMAT. Assim eu especifico em qual formato ele virá. Veja:
DATE_FORMAT(data,'%d/%m/%Y')
Isto fará com que se busque o campo 'data' formatado como sendo dd/mm/yyyy. Pq aqui eu tb uso o "AS data_formatada"? Pq se eu fizer isto:
SELECT DATE_FORMAT(data,'%d/%m/%Y') FROM tabela
E depois eu der um mysql_fetch_array() na variável de busca, não existirá $campo['data']. Somente o campo $campo["DATE_FORMAT(data,'%d/%m/%y')"]. Sabia? Por isso a gente "renomeia" este nome grande para simplesmente data_formatada. Desta forma eu consigo acessar o dado retornado usando $campo['data_formatada'].
O (campo1+campo2+campo3+...) no lugar do SUM(campo1,campo2,...) vc já deve imaginar... Vai retornar a soma de todos os campos dentro do parênteses. Depois eu renomeio esta expressão gigante para simplesmente "total" usando "(a+b+c...) AS total".
Agora entenda... Consulta boa é aquela que trás exatamente os dados que você irá precisar. Portanto, o SELECT ideal seria este:
SELECT
DATE_FORMAT(data,'%d/%m/%Y') AS data,
pergunta,
resposta1,
resposta2,
resposta3,
resposta4,
resposta5,
votos_resp1,
votos_resp2,
votos_resp3,
votos_resp4,
votos_resp5,
(votos_resp1+votos_resp2+votos_resp3+votos_resp4+votos_resp5) AS total
FROM
enquetes AS a
WHERE id=$id
Desta forma não viria o campo "data" no formato do MySql, nem o campo ID, que é desnecssário, pois vc já sabe que ele está na variável $id. No entanto, para não ter que escrever isto tudo na consulta que eu te mostrei, eu busquei enquetes.*, pois só vieram 2 campos a mais, e isto não interferirá na performance da consulta. Mas saiba... Quando eu faço esta busca:
SELECT
a.*,
DATE_FORMAT(data,'%d/%m/%Y') AS data_formatada,
(votos_resp1+votos_resp2+votos_resp3+votos_resp4+votos_resp5) AS total
FROM
enquetes AS a
WHERE id=$id
Eu PRECISO que o "DATE_FORMAT(...)" seja "AS data_formatada", e não "AS data", pois nos campos a.* já existe um campo chamado "data". Senão daria ambigüidade no retorno no código em PHP.
Se tiver alguma dúvida com a consulta, pergunte!
Agora vamos ao seu código... Ele tá bem grande, né? Não precisa de nada daquile monte de if pra if voto=re1, voto=re2, etc...
Olha que código pequeno (comparado ao seu, é minúsculo, na verdade):
include("info.php");
$sql=mysql_query("SELECT a.*,DATE_FORMAT(data,'%d/%m/%Y') AS data_formatada, (votos_resp1+votos_resp2+votos_resp3+votos_resp4+votos_resp5) AS total FROM enquetes AS a WHERE id=$id");
$dados = mysql_fetch_array($sql);
?><html><head>
<title><? echo"$pergunta"; ?></title>
<link href="link.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#FFFFCC">
<?
echo"<font size='2' face='Verdana, Arial, Helvetica, sans-serif'><b>$pergunta</b><br><br></font>
<form name=\"form1\" method=\"post\" action=\"enquete_votar.php?id=$id\">
<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
<?
for($i=1;$i<=$dados['num_respostas'];$i++) {
?> <tr>
<td>
<input type=\"radio\" name=\"votar\" value=\"<?=$i?>\"><font size='2' face='Verdana, Arial, Helvetica, sans-serif'><?=$dados['resposta'.$i]?>
</td>
</tr>
<?}?>
</table><br>
<input type=\"submit\" class=\"campos\" name=\"Submit\" value=\"Votar\"> <font size=\"1\"><font face=\"Verdana, Arial, Helvetica, sans-serif\">| Ver resultado parcial |<br><br>
</form>
<font size=\"1\"><font face=\"Verdana, Arial, Helvetica, sans-serif\">Total de votos: <?=$dados['total']?></font><BR>
<font size=\"1\"><font face=\"Verdana, Arial, Helvetica, sans-serif\">Enquete iniciada em: <?=$dados['data_formatada']?></font><br>";
?>
enquete_votar.php:
<?
include("info.php");
$votar=$_POST['votar'];
$id=$_GET['id'];
//--------- Adiciona 1 voto para qualquer resposta --------------
mysql_query("UPDATE enquetes SET votos_resp$votar=votos_resp$votar+1 WHERE id='$id'");
?>
<link href="link.css" rel="stylesheet" type="text/css">
<body bgcolor="#FFFFCC">
Bom... Pense nestes códigos com calma... Muita calma, mesmo! E se tiver qualquer dúvida, pode perguntar!
Um abraço,
Thales Medeiros.