• 0
Sign in to follow this  
Jetro

Transf De Valor De Variável Para Outra Página Php

Question

OLá Amigos.

Eu de novo! :D

Tenho uma página inicial checacpf.php que verifica se o CPF já é cadastrado ou se é um NOVO CADASTRO. A partir disso, direciona para outra página através do script: echo "<script language='javaScript'>window.location.href='cad.php'</script>";

Nesta página, CAD.PHP preciso usar o valor que continha na Variável $cpftrans da página anterior.

Qual a maneira mais fácil de transferir este valor?

Grande abraço

Jetro Bernardo

Share this post


Link to post
Share on other sites

8 answers to this question

Recommended Posts

  • 0

Isso deve estar dentro de um IF/ELSE (if cadastrado faz uma coisa, se não cadastrado faz outra)...

Bom baseado nisso você pode fazer assim, se o cpf não estiver cadastrado você passa ele para uma sessão e dai na outra página você dá um echo na sessão criou para resgatar o cpf... lembre-se de colocar na primeira linha session_start(); (de todas as páginas que vão chamar/criar a session)

No caso, se o cara não for cadastrado (dentro do teste, antes de redirecionar) você coloca:

$_SESSION['cpftrans'] = $cpftrans;

Dai na página de cadastro você chama o valor da session que acabou de criar que conterá o valor da $cpftrans...

Share this post


Link to post
Share on other sites
  • 0

Olá ESerra.

estou eu aqui dando trabalho denovo né? :)

Bem. Vamos lá... O Script é simples e eu fiz assim:

<?php

include "conect562.php";

$cpf =$_POST['cpf'];

$cpftrans =$_COOKIE['$cpf];

$sql =mysql_query("SELECT * FROM cadcli WHERE cpfcli ='". $cpf."'");

$conta =mysql_num_rows($sql);

if($conta ==0)

{

echo "<script language='javaScript'>window.location.href='cad.php'</script>";

}

else

{

include "formalteracad.php";

}

?>

Ms eu só quero transferir o valor da variável $cpftrans para outras páginas.

Entendeu?

Não sei com o"Envia-lo" nem como "Resgata-lo" noutra página.

Valeu :)

Jetro Bernardo

Edited by Jetro

Share this post


Link to post
Share on other sites
  • 0

Você leu o que eu disse? Bom eu primeiro lugar leia o manual acerca de sessões: http://br.php.net/session

Em segundo lugar eu disse:

Bom baseado nisso você pode fazer assim, se o cpf não estiver cadastrado você passa ele para uma sessão

Como você sabe se ele está cadastrado ou não? Se voltar 0, ou seja, no seu script:

if($conta ==0)
{
echo "<script language='javaScript'>window.location.href='cad.php'</script>";
}
Eu também disse:
No caso, se o cara não for cadastrado (dentro do teste, antes de redirecionar) você coloca: $_SESSION['cpftrans'] = $cpftrans;
Acho que uma simples interpretação de texto nos leva ao seguinte:
if($conta ==0)
{
$_SESSION['cpftrans'] = $cpftrans;
echo "<script language='javaScript'>window.location.href='cad.php'</script>";
}
Como eu também disse no meu post inicial você deve colocar session_start(); na primeira linha de toda página que for trabalhar, logo seu script fica:
<?php
session_start();
include "conect562.php";

$cpf =$_POST['cpf'];
$cpftrans =$_COOKIE['$cpf'];

$sql =mysql_query("SELECT * FROM cadcli WHERE cpfcli ='". $cpf."'");
$conta =mysql_num_rows($sql);

if($conta ==0)
{
$_SESSION['cpftrans'] = $cpftrans;
echo "<script language='javaScript'>window.location.href='cad.php'</script>";
}
else
{
include "formalteracad.php";
}
?>

Pronto, você passou o valor da $cfptrans para uma sessão, agora na página que você quer resgatar basta, colocar o session_start(); na primeira linha e chamar diretamente o $_SESSION['cpftrans'] que conterá o valor que você quer...

Share this post


Link to post
Share on other sites
  • 0

Olá ESerra.

Agradeço sua atenção. E paciência também.

Está dando o seguinte erro na página que recebe o cpftransf

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/spil/www/cadcli/cad.php:9) in /home/spil/www/cadcli/cad.php on line 10

As linhas do script são:

<?php

session_start();

echo "$cpftrans";

?>

E são as únicas em PHP desta página. O resto é HTML.

O que pode estar havendo?

Att.

Jetro

Share this post


Link to post
Share on other sites
  • 0

Existe alguma coisa de HTML antes dessas linhas... o session_start(); tem que ficar na primeira linha do arquivo...

Share this post


Link to post
Share on other sites
  • 0
Existe alguma coisa de HTML antes dessas linhas... o session_start(); tem que ficar na primeira linha do arquivo...

Ôi

Olha, coloquei como primeira linha mas deu o mesmo erro. Só mudou o numero da linha de erro:

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/spil/www/cadcli/cad.php:2) in /home/spil/www/cadcli/cad.php on line 3

:huh:

Jetro

Share this post


Link to post
Share on other sites
  • 0

Na primeira linha do arquivo (antes do session_start();) coloca:

ob_start();

Na última linha do arquivo coloca:

ob_end_flush();

Share this post


Link to post
Share on other sites
  • 0
Na primeira linha do arquivo (antes do session_start();) coloca:

ob_start();

Na última linha do arquivo coloca:

ob_end_flush();

Parou de dar o erro. :D

Está tudo funcionando agora.

Mutito obrigado e até a próxima. :)

Jetro

Edited by Jetro

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this