Segue código das actions, dos PHP e do link da mesma no Pontoflash e da minha que não está funcionando, se alguém conseguir me ajudar ficarei muito grato.
Enquete Original
Enquete no meu site
connect.php
<?php /* Arquivo que fará a conexão com o seu banco de dados */ $DBhost = "localhost"; // nome do host $DBuser = "juffacom_pauloq"; // nome do usuário $DBpass = "xxxxxx"; // senha do banco de dados $DBName = "juffacom_enquete"; // nome da base de dados // Nome da tabela que estará usando $table = "enquete"; // está de acordo com o sql de criação da table... // se alterar aqui, altere o nome da tabela tb.... // Conexão e seleção da base de dados.... (não alterar) $Connect = mysql_connect($DBhost,$DBuser,$DBpass); mysql_select_db($DBName, $Connect); ?>
vote.php
<?php require('connect.php'); $escolha = $HTTP_GET_VARS[escolha]; $coluna = "opt".$escolha; // Checa e cria um cookie para evitar que a pessoa vote novamente.... $varName = "enquete"; $CookieCheck = $HTTP_COOKIE_VARS[$varName]; if ($CookieCheck != "") { // Uma mensagem que será enviada ao Flash dizendo que a pessoa já votou..... $MessageToUser = "O seu voto já foi computado"; } else { $MessageToUser = "Obrigado por ter votado!"; // Cria o Cookie setcookie ("enquete", "Voted", time()+30240000, "/"); // Só adiciona os valores na tabela se a pessoa não tiver votado.... $VoteNow = mysql_query("UPDATE $table SET $coluna = $coluna + 1", $Connect); } // REcupera os novos valores da tabela após votação..... $SelectResults = mysql_query("SELECT opt1, opt2, opt3, opt4 FROM $table", $Connect); // Coloca os valores em uma array.... $updatedVotes = mysql_fetch_row($SelectResults); // Envia para o Flash os valores do banco de dados...... print "&OptNew1=$updatedVotes[0]&OptNew2=$updatedVotes[1]&OptNew3=$updatedVotes[2]&OptNew4=$updatedVotes[3]&info=<b>$MessageToUser</b>"; ?>
results.php
<?php require('connect.php'); $escolha = $HTTP_GET_VARS[escolha]; $coluna = "opt".$escolha; // Check and Set Cookie // If the cookie has already been set - The user has already voted and their new vote will not count. // We use the PollID plus the word 'poll' to identify the cookie. // You may want to check your browsers cache and review the cookie that is set when your using it. $MessageToUser = "Resultados...."; // Select Updated Current Values from Database so we can send them back to Flash. $SelectResults = mysql_query("SELECT opt1, opt2, opt3, opt4 FROM $table", $Connect); // Assign results to an array. $updatedVotes = mysql_fetch_row($SelectResults); // Print out results to flash. print "&OptNew1=$updatedVotes[0]&OptNew2=$updatedVotes[1]&OptNew3=$updatedVotes[2]&OptNew4=$updatedVotes[3]&info=<b>$MessageToUser</b>"; ?>
No Flash ficou desta forma:
votou = 0; // variavel de controle (não mudar) info.text = ""; valor = 0; // assume o valor do click clicou = 0; // outra variavel de controle (nao mudar tb...) // Valores das opções de escolha...... // Só tomar o cuidado de não colocar algo muito grande, senão // podem coincidir com os campos dos resultados. opcoes.box1.texto.text = "Excelente"; opcoes.box2.texto.text = "Ótimo"; opcoes.box3.texto.text = "Bom"; opcoes.box4.texto.text = "Ruim";
// Algumas funcões criadas para facilitar a nossa vida.... // A função "checa" controla o mecanismo do Radio Button, // para que somente uma opção possa estar ativa de cada vez... // desativando a opção que estava ativada anteriormente.... function checa() { opcoes["box"+valor].gotoAndPlay("desativa"); } // Essa função, carrega os valores do banco de dados // em um objeto do Load Vars, com o nome "objload", // sendo assim vms acessar todos os valores com algo // do tipo: objload.(nome da variavel enviada pelo php) function resultados() { objload = new LoadVars(); // Troque a URL por onde está o arquivo results.php e o caminho objload.load("http://www.juffa.com.br/results.php"); // Quando todos os valores forem carregados, vai para o // frame 10..... objload.onLoad = function() { gotoAndPlay(10); }; }
if (votou == 0) { info.text = ""; } else { info.text= "Obrigado por ter votado!" } // Transformamos em número cada variável enviada pelo PHP (OptNew1...OptNew2...etc..) objload.OptNew1 = Number(objload.OptNew1); objload.OptNew2 = Number(objload.OptNew2); objload.OptNew3 = Number(objload.OptNew3); objload.OptNew4 = Number(objload.OptNew4); // COloca os valores vindos do PHP (objload.OptNew1) nas variáveis // criadas no flash (mostra_resultados.opt1) mostra_resultados.opt1 = objload.OptNew1; mostra_resultados.opt2 = objload.OptNew2; mostra_resultados.opt3 = objload.OptNew3; mostra_resultados.opt4 = objload.OptNew4; total = objload.OptNew1 + objload.OptNew2 + objload.OptNew3 + objload.OptNew4; // Cria o valor de porcentagem para cada opção.... percent1=Math.round(objload.OptNew1*100/total); percent2=Math.round(objload.OptNew2*100/total); percent3=Math.round(objload.OptNew3*100/total); percent4=Math.round(objload.OptNew4*100/total); // Coloca o valor da porcentagem em cada campo de texto dinâmico (opt11..opt22...) mostra_resultados.opt11 = percent1+"%"; mostra_resultados.opt22 = percent2+"%"; mostra_resultados.opt33 = percent3+"%"; mostra_resultados.opt44 = percent4+"%";
Disseram para mim que podia ser problema com o código PHP, pois a minha página results.php http://www.juffa.com.br/results.php esta dando este erro:
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/juffacom/public_html/results.php on line 20
&OptNew1=&OptNew2=&OptNew3=&OptNew4=&info=Resultados....