Ir para conteúdo

Arquivado

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

balasalgada

SESSION

Recommended Posts

Tenho duas paginas: login.php e reservar.php. O cliente vai fazer seu login (na login.php) e o codigo vai salvar o codCliente numa variável, essa variavel deve ser lida na pagina reservar.php para que quando esse usuario estiver logado ele reserve o livro e seu codCliente seja inserido na tabela dos livros, para que assim a bibliotecária possa identificar quem reservou o livro. Mas não to conseguindo passar o codCliente para uma variável nem passar para a pagina reservar.php. Alguém me ajuda :(

Segue o código:

login.php
//pega os dados digitados no formulário de login
$login = $_POST['login'];
$senha = $_POST['senha'];

//seleciona o cliente de acordo com o que foi digitado
$sql = ("SELECT codCliente, userLoginCliente, senhaLoginCliente FROM loginclientes WHERE userLoginCliente = '$login' and senhaLoginCliente='$senha'") or die (mysqli_connect_error());

$res= mysqli_query($conexao, $sql);
//permite o acesso ou não
if(mysqli_num_rows($res) > 0){

// 'tenta' pegar o codCliente do usuário que foi selecionado, mas não ta funcionando :/
$cod = codCliente;
$_SESSION['codCliente'] = $cod;

//faz login
$_SESSION['login'] = $_POST['login'];
$_SESSION['senha'] = $_POST['senha'];

//redireciona para a próxima pagina

header('location: opcoesUsu.php');

}else{
echo"<center> Nome ou senha inválidos</center>";
}

reservar.php
//codLIvro digitado pelo cliente
$codLivro = isset($_POST['codigoLivro']) ? $_POST['codigoLivro'] : '';

//codCliente que to tentando pegar da pagina login.php
$codCliente = isset($_SESSION['codCliente']) ? $_SESSION['codCliente'] : '';

//seleciona o livro
$sql = ("SELECT codCliente, statusLivro, codLivro FROM livros WHERE codLivro = '$codLivro' and statusLivro = 'disponivel'") or die (mysqli_connect_error());
$res = mysqli_query($conexao, $sql);

if(mysqli_num_rows($res) > 0){
//muda o status do livro para reservado no bd
$sql1 = ("UPDATE livros SET statusLivro='Reservado', codCliente='$codCliente' WHERE codLivro = '$codLivro' and statusLivro = 'disponivel'") or die (mysqli_connect_error());

$res2 = mysqli_query($conexao, $sql1);

 

if(!$res2) {
echo"<center>Erro!</center>";

}else{
echo"<center>Livro reservado com sucesso!</center>";
}

}else{
echo"<center>Livro indisponível no momento</center>";
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando manda imprimir o "codCliente", retorna algum erro? Imprima a variável para termos uma ideia do que ela esta retornando.

echo $cod;

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Quando manda imprimir o "codCliente", retorna algum erro? Imprima a variável para termos uma ideia do que ela esta retornando.

echo $cod;

 

Retorna codCliente ao invés de retornar o código do cliente.​

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em login.php substitui

$cod = codCliente;

 

por

 

$cod = 0;

if($resultado = mysqli_fetch_array($res))
$cod = $resultado['codCliente'];
Posta o resultado após a execução da modificação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Em login.php substitui

$cod = codCliente;

 

por

 

$cod = 0;

if($resultado = mysqli_fetch_array($res))
$cod = $resultado['codCliente'];
Posta o resultado após a execução da modificação.

 

 

Funcionou! Obrigada :D

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.