Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda Para Interpretar Um Erro


McBlade

Pergunta

Tenho o Seguinte Código:

<?php
  $userip = $REMOTE_ADDR;
  $votou = 1; // 1 para não 2 para sim
  $querypoll = mysql_query("select psq_ip from pesquisa");
  while ($retornopoll = mysql_fetch_array($querypoll)) {
    if ($retornopoll[0]==$userip) {
   $votou = 2;
	}
  }
  if ($votou==1) {
    echo "<form name='poll' action='pollsend.php' onSubmit='return poll();'>";
    echo "<table width='150' border='0'><tr><td>..:: Electronics Quer Saber ::..</td></tr>";
    echo "<tr><td>Qual sua ocupação?</td></tr>";
    echo "<tr><td><p><input type='radio' name='opcao' id='1'>Estudante (Eletrônica)<br>";
    echo "<input type='radio' name='opcao' id='2'>Professor (Eletrônica)<br>";
    echo "<input type='radio' name='opcao' id='3'>Pratico Eletrônica como Hobby<br>";
    echo "<input type='radio' name='opcao' id='4'>Outro...</p></td></tr>";
    echo "<tr><td><input type='submit' value=' Votar '></td></tr></table></form>";
  }
  else
  {
    // Pega o total de votos que a pesquisa teve
	$querypoll = mysql_query("select count(psq_opcao) from pesquisa where psq_codigo = 1");
    $retornopoll = mysql_fetch_array($querypoll);
	$totalvotos = $retornopoll[0];
	// Pega os resultados de cada opçao
    for ($ni=1;$ni<5;$ni++) {
   $querypoll = mysql_query("select psq_opcao from pesquisa where psq_codigo = 1 and psq_opcao = $ni");
   $retornopoll = mysql_fetch_array($querypoll);
      if ($ni==1) {
     $opcao1 = $retornopoll[0];
   }
   elseif ($ni==2) {
     $opcao2 = $retornopoll[0];
   }
   elseif ($ni==3) {
     $opcao3 = $retornopoll[0];
   }
   elseif ($ni==4) {
     $opcao4 = $retornopoll[0];
   }
	}
	// Monta a tabela de resultados
    echo "<table width='150' border='0'><tr><td>..:: Electronics Quer Saber ::..</td></tr>";
    echo "<tr><td>Qual sua ocupação?</td></tr>";
	// Resultados opção 1
	if ($totalvotos > 0) {
      echo "<tr><td>Estudante (Eletrônica): ",($opcao1*100/$totalvotos)," %<br><img src='img/pollleft.gif' width='5' height='10'><img src='img/poll.gif' width='",($opcao1*150/$totalvotos),"' height='10'><img src='img/pollright.gif' width='5' height='10'></td></tr>";
	}
	else
	{
      echo "<tr><td>Estudante (Eletrônica): 0 %<br><img src='img/pollleft.gif' width='5' height='10'><img src='img/pollright.gif' width='5' height='10'></td></tr>";	
	}
	if ($totalvotos > 0) {
      echo "<tr><td>Professor (Eletrônica): ",($opcao2*100/$totalvotos)," %<br><img src='img/pollleft.gif' width='5' height='10'><img src='img/poll.gif' width='",($opcao2*150/$totalvotos),"' height='10'><img src='img/pollright.gif' width='5' height='10'></td></tr>";
	}
	else
	{
      echo "<tr><td>Professor (Eletrônica): 0 %<br><img src='img/pollleft.gif' width='5' height='10'><img src='img/pollright.gif' width='5' height='10'></td></tr>";	
	}
	if ($totalvotos > 0) {
      echo "<tr><td>Pratico Eletrônica como Hobby: ",($opcao3*100/$totalvotos)," %<br><img src='img/pollleft.gif' width='5' height='10'><img src='img/poll.gif' width='",($opcao3*150/$totalvotos),"' height='10'><img src='img/pollright.gif' width='5' height='10'></td></tr>";
	}
	else
	{
      echo "<tr><td>Pratico Eletrônica como Hobby: 0 %<br><img src='img/pollleft.gif' width='5' height='10'><img src='img/pollright.gif' width='5' height='10'></td></tr>";	
	}
	if ($totalvotos > 0) {
      echo "<tr><td>Outro: ",($opcao4*100/$totalvotos)," %<br><img src='img/pollleft.gif' width='5' height='10'><img src='img/poll.gif' width='",($opcao4*150/$totalvotos),"' height='10'><img src='img/pollright.gif' width='5' height='10'></td></tr>";
	}
	else
	{
      echo "<tr><td>Outro: 0 %<br><img src='img/pollleft.gif' width='5' height='10'><img src='img/pollright.gif' width='5' height='10'></td></tr>";	
	}
  }
?>

Com ele obtendo os seguintes erros:

Warning: Supplied argument is not a valid MySQL result resource in c:\apache\htdocs\electronics\poll.php on line 5

Warning: Supplied argument is not a valid MySQL result resource in c:\apache\htdocs\electronics\poll.php on line 25

Warning: Supplied argument is not a valid MySQL result resource in c:\apache\htdocs\electronics\poll.php on line 30

Warning: Supplied argument is not a valid MySQL result resource in c:\apache\htdocs\electronics\poll.php on line 30

Warning: Supplied argument is not a valid MySQL result resource in c:\apache\htdocs\electronics\poll.php on line 30

Warning: Supplied argument is not a valid MySQL result resource in c:\apache\htdocs\electronics\poll.php on line 30

..:: Electronics Quer Saber ::..

Qual sua ocupação?

Estudante (Eletrônica): 0 %

(imagem)

Professor (Eletrônica): 0 %

(imagem)

Pratico Eletrônica como Hobby: 0 %

(imagem)

Outro: 0 %

(imagem)

Eu pergunto, o que estou fazendo de errado? Tendo em vista que eu não fiz curso entaum eu só muito aspirante em PHP. tongue.gif

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

ach oque achei...

parece-me que o erro tá aki

 $querypoll = mysql_query("select psq_opcao from pesquisa where psq_codigo = 1 and psq_opcao = $ni");

coloca entre aspas o $ni... e tenta ae.. se o valor dela não for numerico pode ser issoq ue tá dando pau...

falow..

qualquer coisa postae..

Link para o comentário
Compartilhar em outros sites

  • 0

oi, marca qual é a linha 30 pra ajudar..

outra coisa, faz assim nas querys

$sql = mysql_query( "..." ) or die ( "Erro de Sql: ".mysql_error() );

dessa forma, se tiver erro na query ele mostra....

Maluco c num vai acredita!!

osei o seu código e sabe qual a mensagem q a query deu??

Erro de Sql: No Database Selected

Desse geito nunca ia funciona mesmo!!! tongue.gif

Do resto está funcionando perfeitamente, agora aproveitando o tópico:

Pelos cálculos das minhas funções a porcentagem de digamos 16% está vindo assim: 16,66666667

Como eu faço pra arredondar esse valor sem que isso interfira na soma dos resultados ultrapassando 100 %.

porque eu to usando round() aí dependendo dos valores a soma ultrapassa ou não chega a 100 %.

Link para o comentário
Compartilhar em outros sites

  • 0

pow.. na verdade soma é exata.. não pode estourar o resultado.. a não ser que seja esse tipo ai.. (Esqueci o nome de quando fica 3,33333333333 infinatamente...)

mas o round deve ajeitar isso.. porque ele arredonda pro mais perto.. sefor maior que ,5 pra cima se for menos pra baixo.. saca?? seilá...

Link para o comentário
Compartilhar em outros sites

  • 0

Sim mas no caso do 16,6666667 ele arredonda pra 16,7 e a soma dos outros resultados fica em 101 %.

Eu fui ao superdownloads.com.br e a enquete deles tem 2 casas decimais: 84,02 % e a soma de todos os resultados dá 100 % certinho!!!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,6k
×
×
  • Criar Novo...