Jump to content
paulaodaregulage

Atualizar página web junto com as variáveis

Recommended Posts

Srs ...boa noite

podem me ajudar por favor...

 

eu estou  atualizando a página automaticamente,mas ao atualizar a página as variáveis n continuam....gostaria que elas continuassem...

 

 

pagina1.php

<form  name="form" id="form" action="pagina2.php" method="post"> 
variável 1<input type="text" name="variavel1"  ><br>
variável 2<input type="text" name="variavel2"    ><br>
variável 3<input type="text" name="variavel3"     ><br>
<input type="submit" name="botao" value="Enviar script" >
 
</form>

 

 

 

pagina2.php

 

<?php header('Refresh:10'); ?>   <!-- qdo eu faço esse refresh   as variáveis abaixo n continuam nos "value=''" -->

<?php 
$variavel1=$_POST['variavel1'];
 $variavel2=$_POST['variavel2'];
$variavel3=$_POST['variavel3'];
?>




Variável 1<input type="text" name="variavel1"  value="<?php echo $variavel1; ?>"  ><br>
Variável 2<input type="text" name="variavel2"  value="<?php echo $variavel2; ?>"  ><br>
Variável 3<input type="text" name="variavel3"  value="<?php echo $variavel3; ?>"  >

 

 

 

Share this post


Link to post
Share on other sites

Use GET ao invés de POST.

página1:

<form  name="form" id="form" action="pagina2.php" method="get"> 
variável 1<input type="text" name="variavel1"  ><br>
variável 2<input type="text" name="variavel2"    ><br>
variável 3<input type="text" name="variavel3"     ><br>
<input type="submit" name="botao" value="Enviar script" >
</form>

página2:

<?php header('Refresh:10'); ?>   <!-- qdo eu faço esse refresh   as variáveis abaixo n continuam nos "value=''" -->

<?php 
$variavel1=$_GET['variavel1'];
 $variavel2=$_GET['variavel2'];
$variavel3=$_GET['variavel3'];
?>




Variável 1<input type="text" name="variavel1"  value="<?php echo $variavel1; ?>"  ><br>
Variável 2<input type="text" name="variavel2"  value="<?php echo $variavel2; ?>"  ><br>
Variável 3<input type="text" name="variavel3"  value="<?php echo $variavel3; ?>"  >

Caso seja necessário o uso do método post, você pode usar o setcookie() pra armazenar o valor no cache do navegador do usuário, dessa forma:

página1:

<form  name="form" id="form" action="pagina2.php" method="post"> 
variável 1<input type="text" name="variavel1"  ><br>
variável 2<input type="text" name="variavel2"    ><br>
variável 3<input type="text" name="variavel3"     ><br>
<input type="submit" name="botao" value="Enviar script" >
</form>

página2:

<?php 
header('Refresh:10');

$variavel1 = (isset($_POST['variavel1']) ? $_POST['variavel1'] : null);
$variavel2 = (isset($_POST['variavel2']) ? $_POST['variavel2'] : null);
$variavel3 = (isset($_POST['variavel3']) ? $_POST['variavel3'] : null);

if(isset($variavel1,$variavel2,$variavel3) AND !isset($_COOKIE["CookieVariavel1"],$_COOKIE["CookieVariavel2"],$_COOKIE["CookieVariavel3"])){
	setcookie("CookieVariavel1", $variavel1, time()+3600);
	setcookie("CookieVariavel2", $variavel2, time()+3600);
	setcookie("CookieVariavel3", $variavel3, time()+3600);
} else {
	$variavel1 = $_COOKIE['CookieVariavel1'];
	$variavel2 = $_COOKIE['CookieVariavel2'];
	$variavel3 = $_COOKIE['CookieVariavel3'];
}	
?>
Variável 1<input type="text" name="variavel1"  value="<?php echo $variavel1; ?>"  ><br>
Variável 2<input type="text" name="variavel2"  value="<?php echo $variavel2; ?>"  ><br>
Variável 3<input type="text" name="variavel3"  value="<?php echo $variavel3; ?>"  >

Explicação:

setcookie("CookieVariavel1", $variavel1, time()+3600);
  • setcookie() : função nativa do PHP (link caso queira estudar sobre setcookie()) http://php.net/manual/pt_BR/function.setcookie.php
  • CookieVariavel1 : O nome do cookie, você pode colocar o nome que quiser pra identificar o cookie.
  • $variavel1 : O valor que será associado e armazenado ao CookieVariavel1.
  • time()+3600 : É a duração do cookie, que nesse caso é de 1h.
$_COOKIE['CookieVariavel1']

Dá mesma forma que você utiliza $_POST ou $_GET pra pegar valores passados por um formulário ou url, você pode usar o $_COOKIE["nome_do_cookie"] pra pegar os valores de um cookie. 

(isset($_POST['variavel1']) ? $_POST['variavel1'] : null)

O nome dessa sintaxe acima é Operador Ternário, é pra simplificar o uso de if else em alguns casos.

(link caso queira estudar sobre Operador Ternário) 

http://php.net/manual/pt_BR/language.operators.comparison.php#language.operators.comparison.ternary

  • Obrigado! 1

Share this post


Link to post
Share on other sites
4 minutos atrás, paulaodaregulage disse:

tem um pequeno probleminha...rs

(usando o setcookie() )

qdo eu coloco valores diferentes na pagina1.php   e envio....  os valores da pagina2.php continuam com os valores antigos... 

 

Troca isso:

if(isset($variavel1,$variavel2,$variavel3) AND !isset($_COOKIE["CookieVariavel1"],$_COOKIE["CookieVariavel2"],$_COOKIE["CookieVariavel3"]))

por isso:

if(isset($variavel1,$variavel2,$variavel3))

Isso vai fazer com que o valor do cookie sempre seja atualizado toda vez que o formulário for preenchido e enviado.

  • Obrigado! 1

Share this post


Link to post
Share on other sites

Senha você nunca pode armazenar em cookies, tem que ser no banco de dados e criptografada com password_hash(). Aconselho estudar conexões PDO, tem vários tutoriais bacanas no Youtube, vai te dar uma boa noção de como construir uma área de login.

  • Gostei 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By mamotinho
      Boa noite! estou com dúvidas em relação a array, eu tenho uma procedure no SQL Server e essa procedure exibe uma lista de resultados, eu gostaria de pega o valor desses resultados e lista em um array para eu comparar com outro valor que vai ser selecionado em um select , tipo abaixo:
       
      $arraySelect = $db->prepare(exec WebSite.dbo.server_value_product 2);
      $arraySelect->execute();
      $arrayExemple = $arraySelect->fetchAll();

      procedure_list = array($arrayExemple);
       
      !in_array($valorSelect, $procedure_list){
         echo 'O Valor selecionado não existe nos resultados da procedure';
      }
       
       
      alguem sabe como posso listar o resultado da procedure em array. e sabe se o valor que procuro está entre os resultados da array.
    • By asacap1000
      Galera já não sei mais onde procurar, estou configurando o processo de login com certificação digital porém não consigo ler o retorno. No site da Certisign explica em java e .Net mas utilizo em minha aplicação da intranet tudo em PHP como eu teria que fazer. Segue exemplo que eles fornecem em .Net
       
      <form action="https://autenticador.certisign.com.br/CertisignLogin/certificado/login" method="get"> <input type="hidden" value="209" id="id" name="id"> <input type="hidden" value="CHAVE CRIPTOGRAFICA INICIAL" id="nome" name="nome"> <input type="hidden" value="http://www.seusite.com.br/suaAplicacao/retorno" id="retorno" name="retorno"> <div> <input type="image" src="images/ico-certisign_30x30.png" alt="Submit" id="btnLoginCertisign"> </div> </form> O de cima envia até aí tudo bem
       
      Abaixo o retorno que é o que não consigo fazer em PHP
       
      string retorno = Request["cb"]; string encryptionKey = "<conteúdo da chave criptográfica descarregada na etapa 2>"; retorno = CryptoLogin.Instance.DecryptText(retorno,encryptionKey);</conteúdo> A variável retorno deverá mostrar as informações como o exemplo aaixo.
       
      CertificadoBean: { emissor: Certisign Autoridade Certificadora TESTE, nome: "PROPRIETARIO DO CERTIFICADO DE TESTE", cpf: "001.002.003-44", cnpj: "", OAB: "", validade: "2015-05-27 20:59:59", emissao: "2014-05-27 21:00:00", email: "proprietario.teste@certisign.com.br", certificadoBase64: "MIIFmDCCBICgAwI...... BAQUFADCCARAx" }  
    • By Luis Fernando R. Valle
      Estou desenvolvendo um site de vinhetas, mas estou com o seguinte problema. Quando o cliente clica em um áudio ele toca normalmente, mas quando clica em um segundo com o primeiro ainda em execução, ficam os dois áudios executando ao mesmo tempo no sit.
      Gostaria que um executasse por vez.
       
      Lembrando que os áudios estão inseridos separadamente.
    • By Camilavip
      Queria saber como fazer esse select e quando eu trazer um estado ele já puxa as cidades contidos nele, e ao escolher a cidade ele trazer os bairros. Consegui pela internet mas só com estados e cidades. no caso em 2 níveis, e eu precisaria em 3, faço pelo mysqli
       
      Em estados no banco está assim
      CREATE TABLE `estados` ( `id_estado` int(10) NOT NULL, `estado` varchar(30) NOT NULL ) ENGINE=Aria DEFAULT CHARSET=latin1; -- -- Extraindo dados da tabela `estados` -- INSERT INTO `estados` (`id_estado`, `estado`) VALUES (1, 'Rio de Janeiro'), (2, 'Minas Gerais'); Cidades
      CREATE TABLE `cidades` ( `id_cidade` int(10) NOT NULL, `id_estado` int(10) NOT NULL, `cidade` varchar(255) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; -- -- Extraindo dados da tabela `cidades` -- INSERT INTO `cidades` (`id_cidade`, `id_estado`, `cidade`) VALUES (1, 1, 'Rio de Janeiro'), (2, 2, 'Belo Horizonte'); E bairros
      CREATE TABLE `bairros` ( `id_bairro` int(10) NOT NULL, `id_cidade` int(10) NOT NULL, `bairro` varchar(255) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; -- -- Extraindo dados da tabela `bairros` -- INSERT INTO `bairros` (`id_bairro`, `id_cidade`, `bairro`) VALUES (1, 1, 'Centro'), (2, 1, 'Tijuca'), (3, 1, 'Leblon'), (4, 2, 'Pampulha');  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.