Jump to content


Photo

Sistema De Votação Em Estrela


  • Faça o login para participar
10 replies to this topic

#1 dfdias

dfdias

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Não informado

Posted 17/05/2011, 20:42

Olá,antes de mais anda nada nao entendo muito de PHP, consigo tudo com muita pesquisa, tenho um site estou colocando um sistema de votação em estrela, ja esta funcionando, mas esta com um problema, queria que quando alguem clicar na estrela ele muda de pagina para uma confirmação de voto. Tipo Obrigado pela sua participação !!!


Segue meu codigo funcionando:


<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.rating.js"></script>
<script type="text/javascript">
jQuery(function(){
jQuery('form.rating').rating();
});
</script>
<title>Index</title>
<link rel="stylesheet" type="text/css" href="style.css"/>
</head>
<body>

<?
mysql_connect('222.111.222.66','votacao','xxxx');
mysql_select_db('votacao');

$SQL = " SELECT votos, pontos FROM registro WHERE id = 1";
$RS = mysql_query($SQL);
$RF = mysql_fetch_array($RS);

$r = number_format($RF['pontos'] / $RF['votos'],2,'.','.');
$y = number_format($RF['votos']);
?>

<table>
<tr>
<td>Votos:&nbsp<?=$y?></td>
<td>&nbsp|&nbspVote: </td>
<td>
<form style="display:none" title="Average Rating: <?=$r?>" class="rating" action="rate.php">
<input type="hidden" name="valor" value="1" />
<select id="r1">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>

</select>

</form>
</td>
</tr>
</table>



</body>
</html>


So esta falatando essa parte da confirmação, quando alguem clica na estrela o voto é computado, porem nada acontece, fica meio estranho isso, por isso queria mostrar uma confirmação do voto

#2 kleryson

kleryson

    Mestre

  • Usuários
  • 687 posts
  • Sexo:Masculino

Posted 17/05/2011, 23:00

Pelo que estou vendo o formulario é enviado para uma página chamada rate.php...

Esse código é a página??

(y)?

#3 dfdias

dfdias

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Não informado

Posted 17/05/2011, 23:23

isso mesmo mestre

rate.php

sabe como eu posso fazer isso? estou pesquisando em tudo que é lugar e nao acho a solução

obrigado

#4 kleryson

kleryson

    Mestre

  • Usuários
  • 687 posts
  • Sexo:Masculino

Posted 17/05/2011, 23:33

Bom tem uma outra página que vocÊ faz o seguinte:

~<?

mysql_connect('host','user','senha');

mysql_select_db('banco_de_dados');



$rate = explode('#',$_POST[ 'rating' ]);

$r = $rate[1];



$SQL = "

UPDATE registro 

   SET votos = votos   1, 

       pontos = pontos   ".$r." 

WHERE id = ".$_POST[ 'id' ];

		  

if ( mysql_query($SQL) ){
     header("Location: ./confirmacao.php");
}

?>


Tenta isso...

(y)??

Edição feita por: kleryson, 17/05/2011, 23:38.


#5 dfdias

dfdias

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Não informado

Posted 17/05/2011, 23:59

obrigado mestre, vou tentar aqui, ja te falo
valeu

ola mestre, fiz o que vc falou, ficou assim meu arquivo rate.php

<?
mysql_connect('xxxxxxxx','xxxxxxxx','xxxxxxxxxxx');
mysql_select_db('votacao');

$rate = explode('#',$_POST['rating']);
$r = $rate[1];

$SQL = " UPDATE registro
SET votos = votos + 1,
pontos = pontos + ".$r."
WHERE id = ".$_POST['id'];


if ( mysql_query($SQL) ){ header("Location: enviado.php");}
?>


mas nao deu certo, ao clicar na estrela ele computa o voto, mas nao redireciona a pagina para enviado.php

Edição feita por: dfdias, 17/05/2011, 23:52.


#6 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 18/05/2011, 09:33

tenta mudar esta parte aqui

$SQL =" UPDATE registro
SET votos = votos + 1,
pontos = pontos + ".$r."
WHERE id = ".$_POST['id'];
mysql_query($SQL);

if ($SQL){ 
header("Location: enviado.php");
}else {
echo "Ocorreu erro";
}

dai fala oque acontece
Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook

#7 dfdias

dfdias

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Não informado

Posted 18/05/2011, 10:19

Olá Diego, obrigado pela resposta

Fiz o que vc falou, mas continua sem atualizar a pagina, ele faz a soma do voto, mas nao atualiza a pagina

#8 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 18/05/2011, 10:56

<?
mysql_connect('xxxxxxxx','xxxxxxxx','xxxxxxxxxxx');
mysql_select_db('votacao');

$rate = explode('#',$_POST['rating']);
$r = $rate[1];

$SQL =" UPDATE registro
SET votos = votos + 1,
pontos = pontos + ".$r."
WHERE id = ".$_POST['id'];
mysql_query($SQL);

if ($SQL){ 
echo "Seu voto foi computado";
}else {
echo "Ocorreu erro";
}

se vc ta colocando tudo na mema pagina tenta colocar este codigo ai em outra pagina . coloque este codigo acima

ou seja o formulario em um e o codigo do mysql em outro
Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook

#9 dfdias

dfdias

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Não informado

Posted 18/05/2011, 11:03

Olá Diego, obrigado mais uma vez

estou fazendo em duas paginas: index.php e rate.php

index.php

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.rating.js"></script>
<script type="text/javascript">
jQuery(function(){
jQuery('form.rating').rating();
});
</script>
<title>Index</title>
<link rel="stylesheet" type="text/css" href="style.css"/>
</head>
<body>

<?
mysql_connect('222.111.222.66','votacao','xxxx');
mysql_select_db('votacao');

$SQL = " SELECT votos, pontos FROM registro WHERE id = 1";
$RS = mysql_query($SQL);
$RF = mysql_fetch_array($RS);

$r = number_format($RF['pontos'] / $RF['votos'],2,'.','.');
$y = number_format($RF['votos']);
?>

<table>
<tr>
<td>Votos:&nbsp<?=$y?></td>
<td>&nbsp|&nbspVote: </td>
<td>
<form style="display:none" title="Average Rating: <?=$r?>" class="rating" action="rate.php">
<input type="hidden" name="valor" value="1" />
<select id="r1">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>

</select>

</form>
</td>
</tr>
</table>



</body>
</html>


e rate.php

<?
mysql_connect('xxxxxxxx','xxxxxxxx','xxxxxxxxxxx');
mysql_select_db('votacao');

$rate = explode('#',$_POST['rating']);
$r = $rate[1];

$SQL =" UPDATE registro
SET votos = votos + 1,
pontos = pontos + ".$r."
WHERE id = ".$_POST['id'];
mysql_query($SQL);

if ($SQL){
echo "Seu voto foi computado";
}else {
echo "Ocorreu erro";
}

#10 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 18/05/2011, 11:32

funcionou ???
Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook

#11 dfdias

dfdias

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Não informado

Posted 19/05/2011, 11:11

nao funcionou nao diego, porque será?

Alguem mais sabe? ainda nao consegui fazer




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq