Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

formigoni

Problema com acesso de página

Recommended Posts

Olá, boa tarde moçada, preciso de uma ajuda dos "caras" do fórum.

Seguinte, tenho uma página aqui na empresa onde trabalho que faz o seguinte:

 

Menu com produtos

-> usuário escolhe um produto

-> monto uma lista dos produtos escolhidos

-> usuário clica em um ícone de "cesta" para inserir o produto no carrinho que modifiquei para atender a nossa necessidade.

 

Ai que começa o meu drama, os produtos não estão aparecendo nesse carrinho.

 

Vejam a codigo:

 

CODE
<?php

 

 

include("config.php");

include("TMySQL.php");

include("TCarrinho.php");

 

session_start();

 

//Verificando se a variavel de sessão foi criada

if (!session_is_registered("MeuCarrinho")){

session_register("MeuCarrinho");

$MeuCarrinho = new TCarrinho();

}

 

$MySQL = new TMySQL();

$MySQL->connect($host, $db, $user, $pass);

 

if (!empty($op)){

 

switch ($op) {

case "adicionar":

if (!empty($id)){

$Query = "select * from produto where id = $id";

$R_Query = $MySQL->query($Query);

if (mysql_num_rows($R_Query) > 0){

$MeuCarrinho->AdicionarItem($id_prod,1);

}

}

break;

case "excluir":

$MeuCarrinho->RemoverItem($id);

break;

case "atualizar":

$MeuCarrinho->AtualizarCarrinho($HTTP_POST_VARS);

break;

case "finalizar":

if ($MeuCarrinho->QuantosItens()>0) {

header("Location:fim.php");

}

break;

}

}

 

$QuerySQL = " select id, codigo, descricao, medida from produto " . $MeuCarrinho->QuerySQL_ObtemListaDeItens();

//echo $QuerySQL;

$Resultado = $MySQL->query($QuerySQL);

 

?>

 

A página não dá erro e fica completamente em branco.

Será que pode ser essa verificação da sessão e o resgate das variáveis?

Caraca, não consigo fazer esse treco funcionar.

 

Valeu moçada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não da erro ?...

 

o primeiro erro ta aqui:

 

include("config.php");
include("TMySQL.php");
include("TCarrinho.php");

session_start();

o session_start deve estar assima de tudo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia Alaerte.

Cara, não dá erro algum...

... e o mais sinistro é que tenho esse mesmo esquema funcionando em um outro provedor.

Coloquei esse no meu domínio e ai ele não funciona.

Valeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

deve ser que a versao do PHP deve ser um pouco diferente ou esta configurado diferente... mais muda a session para o inicio de td como o alaerte falou

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, tarde moçada...

... estive vendo aqui e reparei que onde tenho o sistema funcionando tem o php 4.4.3 com o register_global = On e onde estou tentando fazer a coisa funcionar tem o 4.4.6 com o register_global = Off.

Vejam como está o script no momento:

 

CODE
<?php

 

// Emular register_globals on

if (!ini_get('register_globals')) {

$superglobales = array($_SERVER, $_ENV,

$_FILES, $_COOKIE, $_POST, $_GET);

if (isset($_SESSION)) {

array_unshift($superglobales, $_SESSION);

}

foreach ($superglobales as $superglobal) {

extract($superglobal, EXTR_SKIP);

}

}

 

session_start();

 

//Verificando se a variavel de sessão foi criada

 

if (!session_is_registered("MeuCarrinho")){

$_SESSION("MeuCarrinho");

$MeuCarrinho = new TCarrinho();

}

 

$id_produto = $_GET['id_produto'];

$op = $_GET['op'];

 

include("config.php");

include("TMySQL.php");

include("TCarrinho.php");

 

$MySQL = new TMySQL();

$MySQL->connect($host, $db, $user, $pass);

 

if (!empty($op)){

switch ($op) {

case "adicionar":

if (!empty($id_produto)){

$Query = "select * from produto where id_produto = $id_produto ";

$R_Query = $MySQL->query($Query);

if (mysql_num_rows($R_Query) > 0){

$MeuCarrinho->AdicionarItem($id_produto,1);

}

}

break;

 

case "excluir":

$MeuCarrinho->RemoverItem($id_produto);

break;

case "atualizar":

$MeuCarrinho->AtualizarCarrinho($HTTP_POST_VARS);

break;

case "finalizar":

if ($MeuCarrinho->QuantosItens()>0) {

header("Location:Final.php");

}

break;

}

}

 

$QuerySQL = " select id_produto, codigo, descricao, medida from produto " . $MeuCarrinho->QuerySQL_ObtemListaDeItens();

//echo $QuerySQL;

$Resultado = $MySQL->query($QuerySQL);

 

?>

 

Não sei mais o que fazer.

Se alguém tiver alguma dica, agradeço.

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia Alaerte.

Cara, não dá erro algum...

... e o mais sinistro é que tenho esse mesmo esquema funcionando em um outro provedor.

Coloquei esse no meu domínio e ai ele não funciona.

Valeu.

 

As vezes pode não apresentar o erro dependendo das configs do PHP.ini

 

O que o Alarte falou tem razão...

 

quer uma dica?

coloca o session_start(); dentro do conecta!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Rodrigo Aleixo o conexta que você se referindo é o meu conexao.php?

Valeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já que o globals está OFF, isso não vai funcionar, e consequentemente você não terá resultados:

 

session_is_registered
e nem
session_register();

no lugar de

session_is_registered
use:
if(!$_SESSION['nome_sessao']){/* se não existir a sessão não faça nada. */}

coloque o session_start(); no onício do documento, abaixo das tags do PHP.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia moçada...

... caraca, não estou conseguindo registrar uma sessão.

Tenho esse sistema rodando em php4 mas agora com o php5 tá dando um zica danada pra funcionar.

Já fiz de tudo o que era possível e nada, inclusive seguindo as dicas do pessoal do fórum, por isso venho aqui mais uma vez pedir uma força.

 

O que tenho que fazer para que esse sistema funcione no php5, só estou pedindo esse help porque não sei mais o que fazer mesmo.

 

CODE
<?php

 

session_start();

 

//Verificando se a variavel de sessão foi criada

if(!$_SESSION["MeuCarrinho"]){

$_SESSION("MeuCarrinho");

$MeuCarrinho = new TCarrinho();

}

 

$id_prod = $_GET['id_prod'];

$op = $_GET['op'];

 

include("config.php");

include("TMySQL.php");

include("TCarrinho.php");

 

$MySQL = new TMySQL();

$MySQL->connect($host, $db, $user, $pass);

 

if (!empty($op)){

switch ($op) {

case "adicionar":

if (!empty($id_prod)){

$Query = "select * from roma_produto where id_prod = $id_prod ";

$R_Query = $MySQL->query($Query);

if (mysql_num_rows($R_Query) > 0){

$MeuCarrinho->AdicionarItem($id_prod,1);

}

}

break;

 

case "excluir":

$MeuCarrinho->RemoverItem($id_prod);

break;

case "atualizar":

$MeuCarrinho->AtualizarCarrinho($HTTP_POST_VARS);

break;

case "finalizar":

if ($MeuCarrinho->QuantosItens()>0) {

header("Location:OrcamentoFinal.php");

}

break;

}

}

 

$QuerySQL = " select id_prod, codigo, descricao, medida from roma_produto " . $MeuCarrinho->QuerySQL_ObtemListaDeItens();

//echo $QuerySQL;

$Resultado = $MySQL->query($QuerySQL);

 

?>

 

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara... to com o mesmo problema... e o pior de tudo... o meu register_globals ta On cara... entao... te juro que nao entendo, e no site onde hospedo ta funcionando, e aqui no meu micro nada...

 

O que é isso gente ?

 

Alguem pode ajudar !!! ?

 

Obrigado!!!

 

Edgard

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.