$_GET [RESOLVIDO]

1. $_GET [RESOLVIDO]

Leonam Gama da Silva
leonamtotal90

(usa Ubuntu)

Enviado em 02/09/2010 - 18:05h

Fala galera
na minha pagina em php eu pesquiso opnioes do internauta. Percebi que ao recaregar a pagina(no botao ou ctrl+R) o valor da variavel $_GET['opniao'](no caso sim ou nao) permanece, fazendo a contagem acrescer em um a escolha antes clicada e armazenando nos arquivos.Ha como resetar o valor dessa variavel global?
ai vao o codigo:

<form action="Home.php" method="post">
<p>Você gostou da página?</p>
<p>
Sim <input type="radio" name="opcao" value="sim"><br>
Não
<input type="radio" name="opcao" value="nao">
</p>
<input type="submit" name="votar" value="Votar">
</form>
<?php
if($_POST)
{
$fsim=fopen('sim.txt','r+t');
$fnao=fopen('nao.txt','r+t');
$qsim=(int)fgets($fsim,10);
$qnao=(int)fgets($fnao,10);
if($_POST['opcao']=='sim')
$qsim++;
if($_POST['opcao']=='nao')
$qnao++;

echo '<br>Sim: '.$qsim.'<br>Não: '.$qnao;
fclose($fsim);
fclose($fnao);

$fsim=fopen('sim.txt','w+t');
$fnao=fopen('nao.txt','w+t');

fwrite($fsim,$qsim.'\n');
fwrite($fnao,$qnao.'\n');
fclose($fsim);
fclose($fnao);
}


?>

não liguem para o fato de usar dois arquivos(tem dado certo até agora, tentei usar so um mas deu muito erro).


  


2. Re: $_GET [RESOLVIDO]

William Freire Alves
willfreire

(usa Ubuntu)

Enviado em 09/09/2010 - 16:47h

Fala brother!

Então cada um tem a sua necessidade e faz do jeito que achar melhor, e pensando no jeito que vc fez aí eu ti daria uma solução referente ao reload da página.

Vale lembrar que toda fez que vc enviar dados de um formulário, tanto via Post ou Get, se vc apertar o CTRL+R ou F5 os mesmos valores serão reenviados, a não ser que vc crie um validador tipo CAPTCHA para validar 1 envio de dados por vez.

Enfim, mas para o seu código eu modificaria para ficar assim:

<form action="teste.php?up=1" method="post">
<p>Você gostou da página?</p>
<p>
Sim <input type="radio" name="opcao" value="sim"><br>
Não
<input type="radio" name="opcao" value="nao">
</p>
<input type="submit" name="votar" value="Votar">
</form>

<?php

if ($_GET['up'] == 1) {

$fsim=fopen('sim.txt','r+t');
$fnao=fopen('nao.txt','r+t');
$qsim=(int)fgets($fsim,10);
$qnao=(int)fgets($fnao,10);

if ($_POST['opcao']=='sim') {
$qsim++;
}

if ($_POST['opcao']=='nao') {
$qnao++;
}

$fsim=fopen('sim.txt','w+t');
$fnao=fopen('nao.txt','w+t');

fwrite($fsim,$qsim.'\n');
fwrite($fnao,$qnao.'\n');
fclose($fsim);
fclose($fnao);

echo '<script language="javascript">window.location.href="http://'.$_SERVER['REMOTE_ADDR'].'/teste.php"</script>';

}

$fsim=fopen('sim.txt','r+t');
$fnao=fopen('nao.txt','r+t');
$qsim=(int)fgets($fsim,10);
$qnao=(int)fgets($fnao,10);

echo '<br>Sim: '.$qsim.'<br>Não: '.$qnao;
fclose($fsim);
fclose($fnao);

?>

Onde a página teste.php é a mesma que possui esse código, mas aí vc vai brincando do jeito que achar melhor.

Abraços, até mais!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts