Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal, agora o caso é o seguinte:
Tenho três arquivos para um programa> formulario.php, cadastro.php e lista.php.
Quero trafegar as variáveis entre os três arquivos. Algumas consigo fazer com GET e POST, outras não.
Para essas outras comecei a usar session e está tudo funcionando.
O problema é que é um aplicativo, e a session fica disponível enquanto o usuário está logado. Se ele abre dois programas que tenham a mesma variavel (ex: cod_fornecedor), ou pior, se ele abre em duas janelas o mesmo programa, vira uma bagunça, porque todas as janelas enxergam a mesma session. É inviável definir variáveis diferentes em cada programa para a mesma informação.
A pergunta é: Tem como eu criar uma session para cada programa, ou existe outra forma de passar variáveis de um .php para outro de forma segura quando não se trata de variáveis de formulário?
Abaixo um script que estou usando para testes:
session1.php
<?php session_start("1");
$_SESSION["cod_programa"] = '10';
?>
session2.php
<?php session_start("2");
$_SESSION["cod_programa"] = '20';
?>
Acesso a tela1, e em seguida, em outra aba, a tela 2. Volto para a tela1 e clico no link.
//tela1.php
<?php session_start("1");
require_once('session1.php');
echo 'O programa eh', $_SESSION["cod_programa"] ;
?>
<a href="tela3.php"><img src="imagens/home.gif" alt="Voltar" width="16" height="16" border="0" />
//tela2.php
<?php session_start("2");
require_once('session2.php');
echo 'O programa eh', $_SESSION["cod_programa"] ;
?>
//tela3.php
<?php session_start("1");
echo 'Agora O programa eh', $_SESSION["cod_programa"];
?>
Deveria aparecer a mensagem ''Agora O programa eh 10', mas aparece 20.
Tentei usar também $_SESSION[1]["cod_programa"] e $_SESSION[2]["cod_programa"], mas ai o conteúdo da variável nem aparece na terceira mensagem.
Carregando comentários...