Jump to content

Search the Community

Showing results for tags 'session'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento e Banco de Dados
    • HTML e CSS
    • Java
    • Javascript
    • .NET
    • PHP
    • Python
    • Ruby
    • Mobile
    • Ambientes de Desenvolvimento
    • Arquitetura e Métodos Ágeis
    • Banco de Dados
    • DevOps
    • Desenvolvimento de Games
    • E-Commerce e Pagamentos Online
    • SEO e Otimizações
    • WordPress
    • Algoritmos & Outras Tecnologias
  • Design e Produto
    • Fotografia
    • Photoshop
    • Design de interfaces e UX
    • Edição/Produção de Vídeos
    • Marketing Online
    • Desenho, Ilustração e 3D
  • Entretenimento e uso pessoal
    • Geral
    • Segurança & Malwares
    • Gadgets e wearable
    • Softwares e Apps
    • Entretenimento

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Found 98 results

  1. brunoogm

    Sessão não funciona no servidor

    Pessoal tenho o seguinte codigo: <!DOCTYPE html> <html lang="pt-br"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>KADAM - Menu Digital</title> <link rel="icon" href="../imagens/img.png" type="image.png" /> <link href="../css/bootstrap.min.css" rel="stylesheet"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <link rel='stylesheet' href='https://use.fontawesome.com/releases/v5.7.0/css/all.css' integrity='sha384-lZN37f5QGtY3VHgisS14W3ExzMWZxybE1SJSEsQp9S+oqd12jhcu+A56Ebc1zFSJ' crossorigin='anonymous'> <script src="../js/bootstrap.min.js"></script> <script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script> <script src="sweetalert2.all.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/promise-polyfill"></script> </head> <body> <div class="container theme-showcase" role="main"> <?php session_start(); include_once("php/conexao.php"); $idPessoa = $_SESSION['id_pessoa']; $id_cliente = $_SESSION['id_user']; $cont = $_SESSION['cont']; echo "ID cliente: ".$id_cliente."<br>"; echo "Cont: ".$cont."<br>"; $endereco = filter_input(INPUT_POST, 'endereco'); $total = filter_input(INPUT_POST, 'Total'); $metodopag = filter_input(INPUT_POST, 'pagamento'); $troco = filter_input(INPUT_POST, 'troco'); $cpfnota = filter_input(INPUT_POST, 'cpfnota'); $query= "Select * from enderecocliente WHERE CodigoEndereco = $endereco"; $resulta = mysqli_query($conectar, $query); $resultado = mysqli_fetch_array($resulta); //echo "Cod Endereco: ".$endereco."<br>"; //echo "Nome Cidade: ".$resultado['NomeCidade']."<br>"; //echo "Endereco: ".$resultado['Endereco']."<br>"; //echo "Cep: ".$resultado['CEP']."<br>"; //echo "numero: ".$resultado['Numero']."<br>"; //echo "Cod Endereco: ".$resultado['Bairro']."<br>"; //echo "Cod Endereco: ".$resultado['Estado']."<br>"; //echo "Cod Endereco: ".$metodopag."<br>"; //echo "Total: ".$total."<br>"; $query ="UPDATE comanda SET ValorTotal= '$total', CodigoEndereco= $resultado[CodigoEndereco], CodigoMetodoPag = $metodopag, CodigoSituacao = '3' WHERE CodigoComanda = $cont"; $resultado = @mysqli_query($conectar, $query); $query2 ="INSERT INTO pagamento (CodigoComanda, CpfNota, CodigoMetodoPag, Troco, ValorTotal) VALUES ('$cont', '$cpfnota', '$metodopag', '$troco', '$total')"; $resultado2 = @mysqli_query($conectar, $query2); $_SESSION['cont'] = 0; if (mysqli_affected_rows($conectar)) { ?> <script> swal({ closeOnEsc: false, closeOnClickOutside: false, title: "Sucesso!", text: "Parabéns! Pedido enviado com sucesso!", icon: "success", button: "Ok", }).then(function(){ window.location.href = "../carrinho.php"; }); </script> <?php } else { ?> <script> swal({ closeOnEsc: false, closeOnClickOutside: false, title: "Erro!", text: "Ops! Seu pedido não foi enviado!", icon: "error", button: "Ok", }).then(function(){ window.location.href = "../carrinho.php"; }); </script> <?php } ?> Testando em localhost esse código funciona normalmente onde os valores das sessions estão sempre disponíveis, porem agora que coloquei o site no ar essas sessões não estão mais apresentando valores, e é somente nessa pagina que isso acontece nas outras paginas elas apresentam seus valores corretamente... Alguém tem alguma sugestão, do que poderia ser ?
  2. studdiox

    Session Sem erro mas não Loga !!!

    Galera estou com um problema com session start ... houve atualização na versão do php no servidor de hospedagem caindo fora alguns argumentos estou tentando com uma nova versão passada por indicação de um colega aqui do forum washalbano que já me quebrou uma baita galho eliminando o primeiro erro do argumento extinguido da versão do php ( session_is_registered ) mas agora ele não quer logar se alguém puder dar uma mãozinha vou postar os códigos abaixo do formulário de acesso log-admin.php e da verificação loga.php e o erro que retorna a mensagem "Acesso Negado !! Usuário Não Logado" vinda do final do código loga.php Não aparece nenhum erro apenas isso e retorna para o formulário de login ( log-admin.php ) //agora a parte que verifica se o login já foi feito // se não há user em $_SESSION if (!isset($_SESSION['nome'])) { // Usuário não logado! Redireciona para a página de login echo '<script>' . 'alert("Acesso Negado !! Usuario Não Logado");' . 'document.location="log-admin.php";' . '</script>'; log-admin.php <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>: : : PAINEL DE ADMINISTRACAO DO WEBSITE : : :</title> <style type="text/css"> <!-- body, td, th { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; color: #FFFFFF; } body { background-color: #000000; } a:link { color: #000000; text-decoration: none; } a:visited { color: #000000; text-decoration: none; } a:hover { color: #000000; text-decoration: none; } a:active { color: #000000; text-decoration: none; } --> </style> </head> <body> <?php session_name("user1,user2"); session_start(); ?> <form name="form1" method="post" action="loga.php?acao=logar"> <div align="center"> <p>&nbsp;</p> <p>Painel de Acesso <br> </p> </div> <table width="338" border="0" align="center" cellpadding="4" cellspacing="2"> <tr> <td width="59" bordercolor="#333333" bgcolor="#333333">NOME : </td> <td width="239" bordercolor="#333333" bgcolor="#333333"> <label> <input name="nome" type="text" id="nome" size="35"> </label> </td> </tr> <tr> <td bordercolor="#333333" bgcolor="#333333">SENHA : </td> <td bordercolor="#333333" bgcolor="#333333"> <label> <input name="pwd" type="password" id="pwd" size="35"> </label> </td> </tr> <tr> <td colspan="2" bordercolor="#333333" bgcolor="#333333"> <div align="center"> <label> <input type="submit" name="Submit" value="ENTRAR"> </label> <div align="right"></div> </div> <div align="right"></div> </td> </tr> </table> <div align="center"><br> <br> <br> <br> <br> <br> <label> </label> <a href="deslogar.php">Deslogar</a><br> </div> </form> </body> </html> loga.php <?php // Turn off all error reporting error_reporting(0); // Report simple running errors error_reporting(E_ERROR | E_WARNING | E_PARSE); // Reporting E_NOTICE can be good too (to report uninitialized // variables or catch variable name misspellings ...) error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE); // Report all errors except E_NOTICE // This is the default value set in php.ini error_reporting(E_ALL ^ E_NOTICE); // Report all PHP errors error_reporting(E_ALL); // Same as error_reporting(E_ALL); ini_set('error_reporting', E_ALL); ini_set("display_errors", 1); ?> <?php // variáveis para conexão $host = 'localhost'; // define o host do banco de dados $user = 'root'; // user do banco de dados $password = ''; // senha do banco de dados $database = 'database'; // nome do banco de dados // estabelecer conexão com o mysql $sqli = new mysqli($host, $user, $password); // verificar se houve erro na conexão if ($sqli->connect_error) { // se houve erro, mostra erro na tela echo "<p>Erro ao Conectar: $sqli->connect_error</p>"; } // alterar o tipo de codificação da conexão com o banco de dados, para utf8 if (!$sqli->set_charset('utf8')) { echo "<p class='error'>O charset não é utf8: $sqli->error</p>"; } // selecionar/abrir o banco de dados para trabalhar if (!$sqli->select_db($database)) { // se o banco de dados não for encontrado echo "<p class='error'>Banco de dados não encontrado, chefe!</p>"; } // arquivo de verificar o login session_name('user1,user2'); session_start(); if (isset($_POST['acao']) && $_POST['acao'] == 'logar') { // trata o nome $nome = $sqli->real_escape_string($_POST['nome']); // define a query de busca $query = "SELECT * FROM sis_login WHERE login='$nome' LIMIT 1"; // executa a query e guarda o resultado em $result $result = $sqli->query($query); // se há algum resultado if ($result->num_rows) { // guarda o resultado em $dados $dados = $result->fetch_assoc(); // verificar se a senha postada é igual a senha retornada if ($_POST['pwd'] == $dados['senha']) { // registra o user na sessão $_SESSION['nome'] = $dados; // redireciona para admin.php header('Location: admin.php'); exit; } // Se a senha não confere else { echo '<script>' . 'alert("Senha Inválida !!");' . 'document.location="log-admin.php";' . '</script>'; } } // Se não há resultados em $result, o Login é inválido else { echo '<script>' . 'alert("Login Inválido !!");' . 'document.location="log-admin.php";' . '</script>'; } } //agora a parte que verifica se o login já foi feito // se não há user em $_SESSION if (!isset($_SESSION['nome'])) { // Usuário não logado! Redireciona para a página de login echo '<script>' . 'alert("Acesso Negado !! Usuario Não Logado");' . 'document.location="log-admin.php";' . '</script>'; } ?>
  3. MateusDuarte

    Problemas com SESSION

    Preciso de um Help. Eu tenho um sistema e nele os usuários precisam fazer login para acessar, os usuarios se logan, a SESSION é armazenada bonitinha, passa pela verificação de que está logado e até retorna o valor da SESSION. Porem se eu fechar o navegador e abrir de novo, ele pede para se logar de novo. Como faço para armazenar essa SESSION apenas uma vez? Tipo o facebook, você se loga 1 vez, e quando fecha e abre de novo ele sabe que você tem permissão naquele PC.
  4. Opa galera tudo certinho sou iniciante e a um tempo atrás fiz um sisteminha com session deixei parado e essa semana resolvi usar ele o que para minha surpresa não esta funcionando mais devido a atualização da versão do php na minha hospedagem .... bom se alguém puder me dar uma força ja tentei de tudo mas não consegui meu conhecimento é baixo ainda .... Erro esta no final do código teria que substituir if(!session_is_registered("nome")) { segue o código de verificação completo <? session_name("name"); session_start(); if($acao == "logar") { $conn = mysql_connect("mysql.servidor.com.br","user","senha"); //configure os dados do seu MySQL $banco = mysql_select_db("banco"); //coloque o nome do seu banco de dados $nome = $_POST['nome']; $q_user = mysql_query("SELECT * FROM login WHERE login='$nome'"); if(mysql_num_rows($q_user) == 1) { $query = mysql_query("SELECT * FROM login WHERE login='$nome'"); $dados = mysql_fetch_array($query); if($_POST['pwd'] == $dados['senha']) { session_register("nome"); header("Location: admin.php"); exit; } // Senha inválida else { echo("<script>"); echo("alert('Senha Inválida !!');"); echo("document.location='index.php';"); echo("</script>"); } } // Login inválido else { echo("<script>"); echo("alert('Login Inválido !!');"); echo("document.location='index.php';"); echo("</script>"); } } //agora a parte que verifica se o login já foi feito if(!session_is_registered("nome")) { // Usuário não logado! Redireciona para a página de login echo("<script>"); echo("alert('Acesso Negado !!');"); echo("document.location='log-admin.php';"); echo("</script>"); } ?>
  5. Galera, bom dia. Bom, tenho uma aplicação aonde salvo o carrinho de compras em uma session. Em desenvolvimento local wampserver tudo ocorre tranquilo. Subi meus arquivos pra nuvem e criei um subdominio para api (api.meudominio.com.br). HTTPS So que oque acontece, quando tento gravar o carrinho na sessão simplesmente não acontece. (Sim. Estou usando session_start() antes de declarar a session); Alimento minha api via ajax via POST (não sei se tem alguma coisa haver, so informação). Os dados chegam e tudo certo mais só não grava não grava na session. e não me apresenta nenhum erro. Verifico pra ver se existe a $_SESSION['cart'] mais não encontro. O mais estranho é que se eu declarar uma session no script. Ex: $_SESSION['teste'] = 'valor'; a session é gravada perfeitamente. Apenas não grava dados dinâmicos. Estou hospedando no HostGator. Aplicação toda finalizada e acontece esse erro com prazo de entrega curtíssimo. Ajuda ai galera.
  6. Philippe Luis

    erro session php. Ajuda!

    Galera boa noite. Bom tenho um sistema em php onde uso sessions. Bom quando acesso meu site através do pc cria se uma session na pasta /tmp no meu servidor, bom até ai tranquilo. Mais quando acesso o mesmo site pelo meu Smartphone, cria-se 4 arquivos de sessoes no minha pasta /tmp. Isso é um erro ou é comum acontecer ? Se for um erro como posso resolver? A foto a seguir mostra o ocorrido. Lembrando que nesse momento da foto só declarei apenas uma sessão .
  7. Estou criando meu próprio mvc php para adquirir mais conhecimento. Mas estou me deparando com uma coisa muita estranha, eu perco a $_SESSION de uma view para outra view Fiz um codigo simples pra testar.a.php ----- view a.php <?php session_start(); $_SESSION['teste'] = 'Funcionou'; echo $_SESSION['teste']; ?> <?php session_start(); echo $_SESSION['teste']; // Notice: Undefined variable: _SESSION in var_dump($_SESSION); // Notice: Undefined variable: _SESSION in NULL ?> <?php namespace Sis\Classes; use App\Model\ClassLogin; use Sis\Traits\TraitGetIp; class ClassSession { private $login; private $timeSession = 1200; private $timeCanary = 300; public function __construct(){ if(session_id() == ''){ ini_set("session.save_handler", "files"); //Cabeçalhos somente atraves de arquivos ini_set("session.use_cookies", 1); //Habilita o uso de cookies ini_set("session.use_only_cookies", 1); //Só pode habilitar a seção atraves de coockies ini_set("session.cookie_domain", DOMAIN); //Só aceita coockies vindo do nosso sistema ini_set("session.cookie_httponly", 1); //Só aceita script php e não deixa o javascript alterar o sistema if(DOMAIN != "localhost"){ ini_set("session.cookie_secure", 1); //Para trabalhar com o SSL do servidor ativo } /*Criptografia das nossas sessions*/ ini_set("session.entropy_length", 512); // ini_set("session.entropy_file","/dev/urandom"); ini_set("session.hash_function", "sha256"); ini_set("session.hash_bits_per_character", 5); session_start(); } $this->login = new ClassLogin(); } #Proteger contra roubo de sessão public function setSessionCanary($par=null){ session_regenerate_id(true); if($par == null){ $_SESSION['canary']=[ "birth" => time(), "IP" => TraitGetIp::getUserIp() //Pega o ip do usuario ]; }else{ $_SESSION['canary']['birth']=time(); } } #Verificar a integridade da sessão public function verifyIdSessions(){ if(!isset($_SESSION['canary'])){ $this->setSessionCanary(); } if($_SESSION['canary']['IP'] !== TraitGetIp::getUserIp()){ $this->destructSessions(); $this->setSessionCanary(); } if($_SESSION['canary']['birth'] < time() - $this->timeCanary){ $this->setSessionCanary("Time"); } } #Setar as sessões do nosso sistema public function setSessions($Email){ $this->verifyIdSessions(); $_SESSION['Login'] = true; $_SESSION['Time'] = time(); $_SESSION['Nome'] = $this->login->getIssetSession($Email)['data']['Nome']; $_SESSION['Email'] = $this->login->getIssetSession($Email)['data']['Email']; $_SESSION['Permissoes'] = $this->login->getIssetSession($Email)['data']['Permissoes']; } #Validar as páginas internas do sistema public function verifyInsideSession(){ $this->verifyIdSessions(); if(!isset($_SESSION['Login']) || !isset($_SESSION['Permissoes']) || !isset($_SESSION['canary'])){ $this->destructSessions(); header("Location: ".DIRPAGE."NaoAutorizado"); }else{ if($_SESSION['Time'] >= time() - $this->timeSession){ $_SESSION['Time']=time(); }else{ $this->destructSessions(); header("Location: ".DIRPAGE."NaoAutorizado"); } } } #Destruir as sessions existentes public function destructSessions(){ foreach (array_keys($_SESSION) as $key) { unset($_SESSION[$key]); } } #testar public function testarSessions(){ echo 'oiiiiiiiiiiiiiiiiiiiiiiooooooooooo'; } }
  8. Estou precisando fazer um refresh automático em algumas páginas do site de um cliente. Porém, esse refresh precisa acontecer apenas UMA vez. Eu sei que daria pra eu colocar a meta tag abaixo, por exemplo: <meta content="3;url=http://www.meusite.com.br/index.php" http-equiv="Refresh" /> Mas aí ela atualizaria sempre a cada 3 segundos. E eu queria que atualizasse só uma vez. Como dá pra fazer isso? Com uso de SESSION, COOKIE ou alguma outra coisa?
  9. Galera me ajudem pelo amor de Deus, eu preciso retornar o Nome completo do usuario e só consigo passar por método get o id dele então eu tenho uma pag login.php <form method="POST" action="br.com.appvoice.control.validaUsuario/ValidaUsuarios.php"> <input type="text" name="email" id="email"/> <input type="password" name="senha" /> <input type="submit" name="botao" value="Login" class="login"> que envia meus dados para ValidaUsuarios.php : VALIDAUSUARIOS.PHP <?php require'../br.com.appvoice.classe.usuario/Usuario.php'; require'../br.com.appvoice.validausuario/ValidaUsuario.php'; try { $usuario = new Usuario(); $validausuario = new ValidaUsuario(); $usuario->setemail($_POST['email']); $usuario->setsenha($_POST['senha']); $validausuario->validaUsuarios($usuario); } ela busca minha classe usuário e a minha ValidaUsuario VALIDA USUARIO: <?php session_start(); $usuario = $_POST['email']; $senha = $_POST['senha']; /*$nomecompleto = $_POST['nomecompleto'];*/ require '../br.com.appvoice.connectionfactory/ConnectionFactory.php'; class ValidaUsuario { private $conexao; private $porta; public function __construct() { $this->conexao = new ConnectionFactory(); $this->porta = $this->conexao->getInstance(); } public function validaUsuarios($usuario) { try { $stmt = $this->porta->prepare("select * from registro_usuario where email =?"); $stmt->bindValue(1,$usuario->getemail()); $stmt->execute(); if ($stmt->fetch(PDO::FETCH_ASSOC)) { try { $stmt = $this->porta->prepare("select * from registro_usuario where email = ? and senha = ?"); $stmt->bindValue(1,$usuario->getemail()); $stmt->bindValue(2,$usuario->getsenha()); $stmt->execute(); if($linha = $stmt->fetch(PDO::FETCH_ASSOC)) try { $stmt = $this->porta->prepare("select NomeCompleto from registro_usuario where email =?"); $stmt->bindValue(1,$usuario->getemail()); $stmt->execute(); if($linha = $stmt->fetch(PDO::FETCH_ASSOC)) { echo "<script>location.href='../controls/ValidaAcesso.php?login=".$usuario->getemail(),$senha->getsenha(). " '</script>"; } else { echo "Nome Completo do Usuário é inválido!"; } } e dai para validaAcesso : VALIDA ACESSO: session_start(); $_SESSION['Usuario']=$_GET['login']; header('Location:../Produtos.php'); quando eu finalmente chego em produtos.php eu dou o echo na session e ele me traz só o email e se eu quiser a senha pq to passando isso acho que aqui : "<script>location.href='../controls/ValidaAcesso.php?login=".$usuario->getemail(),$senha->getsenha(). " '</script>"; fica assim PRODUTO.PHP <?php session_start(); echo $_SESSION['Usuario']; mas daí só mostra meu email COMO EU FAÇO PRA MOSTRAR O NOME DO USUARIO? ja vi que tenho q usar o fetch mas em qual página? ?>
  10. Possível alterar essa função SESSION time que contabiliza por minuto no dados do balance alterar para contabilizar no balance apenas uma vez no mês ?
  11. Possível alterar essa função SESSION time que contabiliza por minuto no dados do balance alterar para contabilizar no balance apenas uma vez no mês ?
  12. Gente eu não estou conseguindo iniciar o session em php e realmente não consigo entender o motivo já tentei trocentas coisas que as pessoas sugeriram nos foruns, mas o session ainda assim não funciona arquivo index onde não recupera variáveis $_SESSION: <?php session_start(); ?> <!DOCTYPE html> <html> <head> <title>Pagina1</title> <link rel="stylesheet" href="css/style.css"/> </head> <body> <article id="newPrincipal"> <h1>Usuário id:<?php echo $_SESSION['userId']; ?></h1> </article> <h1>Result:<?php echo "Usuário id:".$_SESSION['userId']; ?></h1> </body> </html> <?php echo '<pre>'; print_r($_SESSION['userId']); echo '</pre>'; arquivo login: <?php if(isset($_POST['login-submit'])){ require 'dbh.inc.php'; $users = $_POST['nome']; $mailuid = $_POST['mailuid']; $password = $_POST['pwd']; $token; if(empty($mailuid) || empty($password)){ header("Location: ../header.php=emptyfields"); exit(); } else{ $sql = "SELECT * FROM users WHERE Usuarios=? AND email=?"; $stmt = mysqli_stmt_init($conn); if(!mysqli_stmt_prepare($stmt, $sql)){ header("Location: ../index.php?error=sqlerror"); exit(); } else{ mysqli_stmt_bind_param($stmt, "ss", $mailuid, $users); mysqli_stmt_execute($stmt); $result = mysqli_stmt_get_result($stmt); if($row = mysqli_fetch_assoc($result)){ $pwdCheck = password_verify($password, $row['pwdUsers']); if($pwdCheck == false){ header("Location: ../header.php?error=wrongpwd"); exit(); } else if($pwdCheck == true){ session_start(); $_SESSION['userId'] = $row['idUsers']; $_SESSION['userId2'] = $row['uidUsers']; $_SESSION['email'] = $row['emailUsers']; header("Location: ../index.php?login=".$_SESSION['userId']); } else{ header("Location: ../login.php?error=wrongpwd"); exit(); } } } } } else{ header("Location: ../index.php"); } Eu tentei de todas as formas recuperar alguma informação usando o $_SESSION no arquivo index, mas não consegui Estou beirando o desespero, xoxo
  13. Como deixar o tempo de expirar o session infinito?
  14. Sites da Google e Microsoft, por exemplo, ao realizar o logout, todas as páginas das respectivas empresas recarregam. Elas ficam em um loop verificando se existe a sessão, ou tem outra forma?
  15. wlaisson

    Erro session php.

    Estou com este erro no meu código php: Já tentei de tudo e não consigo arrumar, segue o código php da pagina mãe da session da onde este erro é gerado. <?php session_start(); $servername = "localhost"; $username = "root"; $password = ""; $db_name = "tcc-mysql"; $connect = mysqli_connect($servername, $username, $password, $db_name); if(mysqli_connect_error()): echo "Falha na conexão: ".mysqli_connect_error(); endif; if (isset($_POST['btn-entrar'])): $erros = array(); $login = mysqli_escape_string($connect, $_POST['login']); $senha = mysqli_escape_string($connect, $_POST['senha']); if (empty($login) or empty($senha)): $erros[] = "<script language='javascript' type='text/javascript'>alert('O campo Login/Senha deve ser preenchido');</script>"; else: $sql = "SELECT NomeUsu FROM usuario WHERE NomeUsu = '$login'"; $resultado = mysqli_query($connect, $sql); if (mysqli_num_rows($resultado) > 0): $sql = "SELECT * FROM usuario WHERE NomeUsu = '$login' AND CPFUsu = '$senha'"; $resultado = mysqli_query($connect, $sql); if (mysqli_num_rows($resultado) == 1): $dados = mysqli_fetch_array($resultado); $_SESSION['logado'] = true; $_SESSION['id'] = $dados['CodUsu']; echo "<script>location.href='pr.php';</script>"; else: $erros[] = "<script language='javascript' type='text/javascript'>alert('Usuário e Senha não comferem!');</script>"; endif; else: $erros[] = "<script language='javascript' type='text/javascript'>alert('Usuário inexistente!');</script>"; endif; endif; endif; ?> Aqui esta o código da pagina filha que utiliza esta sessão. <?php session_start(); $servername = "localhost"; $username = "root"; $password = ""; $db_name = "tcc-mysql"; $connect = mysqli_connect($servername, $username, $password, $db_name); if(mysqli_connect_error()): echo "Falha na conexão: ".mysqli_connect_error(); endif; $id = $_SESSION['id']; $sql = "SELECT * FROM usuario WHERE CodUsu = '$id'"; $resultado = mysqli_query($connect, $sql); $dados = mysqli_fetch_array($resultado) ?>
  16. Olá pessoas, sou novato em PHP, estou estudando a linguagem e ao mesmo tempo tentando criar algo com o que aprendi. Quando tenho dúvidas procuro na net, tópicos e ou scripts já prontos que me façam entender. Todavia desta vez não encontrei algo claro. Estou criando um mini sistema de vendas, do qual me permite adicionar uma lista de itens. Daí está o problema, como não tenho um conhecimento avançado de arrays não estou sabendo pegar os dados da lista criada e passar para o BD. Só consigo passar a última informação criada na lista. Aqui está o exemplo. <?php // inicio consulta url if(!isset($_SESSION['itens'])){ $_SESSION['itens'] = array(); } if(isset($_GET['acao'])){ $id = $_GET['id']; // Adiciona ao carrinho if($_GET['acao'] == 'add'){ if(!isset($_SESSION['itens'][$id])){ $_SESSION['itens'][$id] = 1; }else{ $_SESSION['itens'][$id] += 1; } } // Diminui carrinho if($_GET['acao'] == 'dim'){ if(!isset($_SESSION['itens'][$id])){ $_SESSION['itens'][$id] = 1; }else{ if($_SESSION['itens'][$id] > 1) $_SESSION['itens'][$id] -= 1; } } //deleta item do carrinho if($_GET['acao'] == 'del'){ $id = intval($_GET['id']); if(isset($_SESSION['itens'][$id])){ unset($_SESSION['itens'][$id]); } } } // fim consulta url // inicio consulta para adicionar if(count($_SESSION['itens']) == 0){ ?> <br> <div class="alert alert-danger alert-dismissible"> <button type="button" class="close" data-dismiss="alert">&times;</button> <strong>LISTA VAZIA:</strong> Para adicionar produtos/servicos realize a busca. </div> <br> <?php }else{ require_once('db.class.php'); $objDb = new db(); $link = $objDb -> conecta_mysql(); $total = 0; foreach ($_SESSION['itens'] as $idProdutos => $quantidade) { $sql = "SELECT * FROM produtos WHERE id='$idProdutos'"; $consultado = mysqli_query($link, $sql) or die(mysql_error()); $linha = mysqli_fetch_array($consultado); $id = $linha['id']; $codigo = $linha['codigo']; $produto = $linha['produto']; $quantidade_disp = $linha['qtd']; $valor = $linha['valor']; $subTotal = $linha['valor'] * $quantidade; $total += $linha['valor'] * $quantidade; ?> <tr> <td><input type="hidden" name="codigo_produto" value=""><?= $codigo; ?></td> <td><input type="hidden" name="nome_produto" value=""><?= $produto; ?></td> <td><input type="hidden" name="qtd_produto" value=""><?= $quantidade_disp; ?></td> <td> <a href="gerar_pedidos_admin.php?acao=dim&id=<?= $id; ?>"><span class="glyphicon glyphicon-minus" style="color: red"></span></a> <input type="number" name="qtd_produto1" min="1" max="<?= $quantidade_disp; ?>" value="<?= $quantidade; ?>"> <a href="gerar_pedidos_admin.php?acao=add&id=<?= $id; ?>"><span class="glyphicon glyphicon-plus" style="color: green"></span></a> </td> <td><input type="hidden" name="valor_produto" value="">R$ <?= number_format($valor,2,",", "."); ?></td> <td>R$ <?= number_format($subTotal,2,",", ".");?></td> <td><a href="gerar_pedidos_admin.php?acao=del&id=<?= $id; ?>"><span class="glyphicon glyphicon-remove" style="color: red;"></span></a></td> </tr> <?php } ?> <tr> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td><label>Total</label><br>R$ <input type="hidden" name="total_pedido" value=""><?= number_format($total,2,",", ".");?></td> </tr> <?php } ?> A pergunta e dúvida é como posso pegar os dados da lista e adicionar ao BD. Eu sei que é para usar um foreach ou um while, todavia só consigo passar a última informação da lista de modo repetido. Gostaria de uma ajuda. Não precisa faz de acordo com o meu código, gostaria de um exemplo prático. Abçs.
  17. Estou separando o menu de acordo com o nível do usuário, mas não consigo pegar o nível da session. Independente do nível do usuário ele só mostra o menu de adm que é nível 2 Onde está o erro? Outra coisa como posso colocar mais níveis? tipo 1 para usuario, 2 para administrador, 3 para vendedor etc? Em cada pagina coloquei o cód abaixo: session_start(); $_SESSION['nivel'] = $nivel; if($nivel == 1 ){ echo include 'adm/menu2.php'; echo "<a href=''>Painel de Usuário</a>"; }else{ echo include 'adm/menu.php'; echo "<a href=''>Painel de Admin</a>"; } A pagina que valida o login está assim: <?php // QUANDO TENTANDO LOGAR if(isset($_POST['acesso'])=="Logar") { // VERIFICANDO SE USUÁRIO E SENHA ESTÃO VAZIOS if(isset($_POST['usuario'])=="" || isset($_POST['senha'])=="") { echo "Os dados de acesso devem ser preenchidos"; exit; } // LOGANDO E CRIANDO AS SESSIONS $logar = mysqli_query($conexao,"SELECT usuario, senha, nivel FROM acesso WHERE usuario='".anti_injection($_POST['usuario'])."' AND senha='".anti_injection(md5($_POST['senha']))."' AND nivel='".anti_injection($nivel)."'"); if(mysqli_num_rows($logar) >= 1) { $_SESSION['usua'] = $_POST['usuario']; $_SESSION['senh'] = md5($_POST['senha']); $_SESSION['nivel'] = $_POST['nivel']; echo "<script> alert('Acesso permitido'); location.href='index.php'; </script>"; } else { echo "<script> alert('Acesso restrito'); </script>"; } } // VERIFICANDO SE O NÍVEL DA PÁGINA É VÁLIDA PARA O USUÁRIO LOGADO if(@$_SESSION['usua'] AND @$_SESSION['senh'] AND @$_SESSION['nivel']) { $verifica_nivel = mysqli_query($conexao,"SELECT usuario, senha, nivel FROM acesso WHERE usuario='".anti_injection($_SESSION['usua'])."' AND senha='".anti_injection($_SESSION['senh'])."' AND nivel='".anti_injection($nivel)."'"); if(mysqli_num_rows($verifica_nivel) >= 1) { // ACESSO CORRETO } else { echo "<script> alert('Você não tem o nível de acesso para essa página'); history.back(); </script>"; exit; } } // CASO NÃO LOGADO, MOSTRA O FORMULÁRIO if(!isset($_SESSION['usua']) OR !isset($_SESSION['senh']) OR $_SESSION['usua']=="" OR $_SESSION['senh']=="") { ?> <?php $qr=mysqli_query($conexao,"SELECT DISTINCT usuario, nivel FROM `acesso` ORDER BY `acesso`.`usuario` ASC"); if (mysqli_num_rows($qr)==0) echo "Adicione ao menos um Usuário"; else{ } ?> <link href="css/bootstrap.css" rel="stylesheet"> <link href="css/ie10-viewport-bug-workaround.css" rel="stylesheet"> <link href="css/signin.css" rel="stylesheet"> <form action="" method="post" form class="form-signin" > <p align="center"> <img src="img/logo.png" border="0"></p> <h2 class="form-signin-heading">Área Restrita</h2> <label><p align="center"><font color="#000000"><font color="#FF0000"><b>Usuário : </label><select class="form-control" name="usuario"> <option value="">Selecione o Usuário</option> <option value="Celia">Célia</option> <option value="Elin">Elin</option> <option value="Mariana">Mariana</option> <option value="Regiane">Regiane</option> <option value="Roberto">Roberto</option> </div> <BR> <br /> <font color="#FF0000"><b>Senha : </b></font> <input type="password" name="senha" class="form-control" value=""> <BR> <br /> <input class="btn btn-lg btn-danger btn-block" type="submit" name="acesso" value="Acessar"></font></p> </form> <?php exit; } ?>
  18. Olá a todos! Postei no PHP pois não achei a categoria ASP Tenho 2 session: cliente e visitas Preciso encerra a session visitas mas a session cliente não pode ser encerrada. Já tentei: visitas = Session.SessionID Session.Abandon("visitas") e gera o erro: O objeto não é uma coleção: Abandon Session.Contents.Remove("visitas") e não é encerrado nada Session.Collection.Remove("visitas") e gera o erro: O objeto não dá suporte para a propriedade ou método: Collection session("visitas")="" e não é encerrado nada Não sei o que pode ser, não posso usar somente session.Abandon pois vai encerrar todos os logados. Não uso mais nada na pagina de logout.asp além do script mencionado.
  19. DinhoPHP

    Preciso de um loop?

    Olá! Tenho uma página que exibe vários imóveis e em cada um deles há um coração preenchido que ao ser clicado, adiciona o imóvel em favoritos. Eu gostaria que esse coração (que é o único button deste código) exibisse a imagem de um coração vazio quando o imóvel não estivesse em favorito. Tentei com foreach e while, mas parece só ter funcionado no meu navegador, pois depois que limpei o cache, não aparecia coração nenhum, como nos demais PCs que testei. VEJA A PÁGINA PARA ENTENDER OBS.: ESSES FAVORITOS SÃO ARMAZENADOS EM SESSION, E JÁ É UM SISTEMA EXISTENTE NO SITE, NÃO DESENVOLVI. <div style="display:none;height:36px;" class="tips"><?=__FILE__?></div> <?php /* Todos os anúncios em destaque e ativos com limite pré determinado no vipmin, é exibido na home. */ $ordem = 'rand()'; $sql = "select * from team where ehdestaque = 'Y' and (status is null or status = 1) and (pago = 'sim' or anunciogratis = 's') and begin_time < '".time()."' and end_time > '".time()."' order by $ordem limit ".$INI['system']['qtde_anuncios_destaque_home']; $rs = mysql_query($sql); ?> <div style="text-align:center;clear:both;"><h1><?=utf8_decode($INI['system']['txt2'])?></h1></div> <div class="row-fluid"> <ul class="thumbnails"> <?php while($anuncio = mysql_fetch_assoc($rs)) { unset($vagas); unset ($quartos); /* Caso não tenha nenhuma imagem em destaque. */ //if(empty($anuncio["imgdestaque"])) { //$anuncio["imgdestaque"] = $PATHSKIN . "/images/semfoto.jpg"; //} /* Informações como cidade, estado e bairro são buscados para ser impresso. */ $sqlC = "select nome from cidades where id = " . $anuncio["city_id"]; $rsC = mysql_query($sqlC); $cidade = mysql_fetch_assoc($rsC); if(!(empty($anuncio["imob_estado"])) && !(empty($cidade["nome"]))) { $localizacao = $anuncio["imob_estado"] . " - " . $cidade["nome"]; } if(!(empty($anuncio["imob_tipo"]))) { $sqlT = "select nome from tipoimoveis where id = '" . $anuncio["imob_tipo"] . "'"; $rsT = mysql_query($sqlT); $tipo = mysql_fetch_assoc($rsT); } else { $bairro = utf8_decode("Bairro não informado."); } /* Número de vagas e de quartos são exibidos juntamente com o thumb do anúncio. */ if(!(empty($anuncio["imob_vagas"]))) { $vagas = "Total de vagas: " . $anuncio["imob_vagas"]; } if(!(empty($anuncio["imob_quartos"]))) { $quartos = "Total de quartos: " . $anuncio["imob_quartos"]; } $url = UrlAnuncio($anuncio["id"]); ?> <li style="background-color:#fff;" class="span3"> <a href="<?php echo $url; ?>"> <div style="background: #FFFFFF; opacity: 0.7; position: absolute; margin: 124px 0px 0px 5px; color:#000; letter-spacing: 0px; padding: 5px; line-height: 15px; font-size: 12px;font-weight: bold; width: 202px; height: 30px;"> <?php echo utf8_decode($anuncio["title"]);?> </div> </a> <div class="thumbnail"> <?php /* ÁREA RESPONSÁVEL POR DISTINGUIR OS IMÓVEIS INSERIDOS OU NÃO EM FAVORITOS */ foreach($_SESSION["IdAnuncio"] as $IdAnuncio => $idOffer) { $sql = "select * from team where id = " . $idOffer; $busca = mysql_query($sql); /* Imprime os anúncios, de acordo com o que se encontra armazenado na sessão. */ while($anuncios = mysql_fetch_assoc($busca)) { if ($anuncio["image"] == $anuncios["image"]){ $heart = "heart_full.png"; } else{ $heart = "heart_empty.png"; } ?> //ESSE BUTTON SÓ DEVE TER O HEART_FUL.PNG SE ELE VÊ QUE O IMÓVEL ESTÁ EM FAVORITOS <button data-id="<?php echo $anuncio["id"]; ?>" class="btn btn-favorito" style="position: absolute; background: transparent; border: none; box-shadow: none; -moz-box-shadow: none; -o-box-shadow: none; margin-left: 170px; /*top: 88px;*/"><img src="<?php echo $PATHSKIN . "/images/".$heart;?>" style="width: 20px; height: auto;"></button> <?php }} ?> <a href="<?php echo $url; ?>"> <img src="<?php echo $ROOTPATH; ?>/media/<?php echo $anuncio["image"]; ?>" style="width: 212px; height: 159px;" alt="221x159" data-src="holder.js/221x159"> <!-- <img src="<?php echo $ROOTPATH; ?>/media/<?php echo $anuncio["imgdestaque"]; ?>" style="width: 212px; height: 159px;" alt="221x159" data-src="holder.js/221x159"> --> </a> <div class="caption"> <div id="loc_364" class="textoLanc02"> <?php echo $localizacao; ?> </div> <div class="textoLanc03"> <?php echo utf8_decode("Imóvel: " . $tipo["nome"]); ?> </div> <div class="textoLanc04"> <ul> <li class="Residencial Parc Mantova " id="nomeEmpreendimento_364"> <?php echo $quartos; ?> </li> <li> <?php echo $vagas; ?> </li> </ul> </div> <div style="height:10px;"></div> <a href="<?php echo $url; ?>"> <div id="364" class="btn btn-netimoveis detalheEmpreendimento--"> <i class="icon-list icon-white"></i> ver detalhe</div> </a> </div> </li> <?php } ?> </ul> </div> </div>
  20. Olá! Estou fazendo alterações em um site imobiliário com base no que o cliente deseja. Neste site, existe a opção de adicionar os imóveis que são encontrados através da busca, à uma lista de favoritos que estranhamente funciona por SESSION e não requer login para este feito. Eu até mudaria tudo pra BD MySQL, porém o site foi construído por uma empresa que ainda concede suporte, mas não realiza todo o pedido dele e a parte SQL nem tem PDO (eu só sei usar PDO). A minha pergunta é: Existe a possibilidade de destruir essa SESSION (remover o imóvel escolhido) pelo próprio usuário? AddFavorite.js /* O anúncio escolhido é adicionado na lista de favoritos, que fica ativo enquanto estiver no site. */ J('document').ready(function(){ /* Adiciona o anúncio nos favoritos. */ J('.btn-favorito').click(function() { var IdAnuncio = J(this).attr('data-id'); J(this).AddFavorite(IdAnuncio); }); J.fn.AddFavorite = function(IdAnuncio){ var id = IdAnuncio; var urlFilterSearch = URLWEB + "/ajax/AddFavorite.php"; if(id != "") { /* Caso o ID tenha sido enviado corretamente, é enviado uma requisição Ajax. */ jQuery.ajax({ type: 'POST', url: urlFilterSearch, data: "action=AddFavorite&id=" + id, beforeSend: function() { jQuery('.ul-resultado').css('display', 'none'); jQuery('.LoadingImage').css('display', 'block'); }, success: function(r) { jQuery('.ul-resultado').css('display', 'block'); jQuery('.LoadingImage').css('display', 'none'); window.alert(r); } }); } else { /* Caso o ID não tenha sido enviado corretamente. */ window.alert("Ocorreu um erro inesperado. Tente novamente mais tarde."); return false; } } }); AddFavorite.php <?php include ('../app.php'); /* Ação para armazenar a ID dos anúncios nos favoritos. */ if(isset($_POST["action"]) and $_POST["action"] == "AddFavorite") { if(isset($_POST["id"]) and !(empty($_POST["id"]))) { /* Verifica se o anúncio realmente existe. */ $id = (int) strip_tags($_POST["id"]); $sql = "select * from team where id = " . $id; $rs = mysql_query($sql); $num = mysql_num_rows($rs); /* Caso tenha encontrado o anúncio. */ if($num >= 1) { /* Inicia a sessão para armazenar os anúncios. */ session_start(); /* Adiciona, apenas se o anúncio não estiver na lista de favoritos. */ if(!(in_array($id, $_SESSION["IdAnuncio"]))) { $_SESSION["IdAnuncio"][] = $id; echo utf8_encode("Anúncio adicionado com sucesso!"); } else { foreach ($_SESSION['IdAnuncio'] as $key => $val) { if($val == $id){ unset($_SESSION['IdAnuncio'][$key]); } } echo utf8_encode("Anúncio removido dos favoritos com sucesso!"); } } else { /* Tratamento de erro! */ return false; } } else { /* Tratamento de erro! */ return false; } } else { /* Tratamento de erro! */ return false; } ?>
  21. victortobias

    Problemas com Array e Session

    Bom dia a todos! Eu sou novato em PHP e estou tendo um pouquinho de dificuldade pra salvar as informações na sessão, até então na teoria era para ele pegar o post anterior e salvar na array 30x ja tentei com array_push e também fiz um manual, mas nenhum dos dois salva, ele só salva o último e fica substituindo as 30x o que pode ser, será que tem algo no meu código resetando a contagem? Desde já agradeço! Segue o código abaixo: <?php session_start(); //verifica se o paciente foi selecionado, caso não ele retornara $paciente = $_SESSION['paciente']; $terapeuta = $_SESSION['terapeuta']; //if (!isset($paciente) or !isset($terapeuta)){ // header("Location: iniciaexame.php"); // }else{ $actionform = "#"; //VERIFICAÇÃO DE REFRESH NA PÁGINA / ELE ZERA O TESTE CASO ACONTEÇA if (isset($_POST['questao'])){ $_SESSION['pergunta[$numper]'] = $_POST['questao']; $numper = $_SESSION['numper']; }else{ $numper = -1; } $verifica = $_SESSION['pergunta[$numper]']; $_SESSION['pergunta'] = array(); if (!isset($numper)){ $numper = -1; } else{ }; if ($numper <30){ $numper++; print_r($pergunta[$numper]); } else{ $actionform ="exame2.php"; } // sequencia da array 0 1 2 3 4 5 // sequencia exame1(5x) = a i u s ch m if ($numper == 0 or $numper == 6 or $numper == 12 or $numper == 18 or $numper == 24){ $audio = "audio/ex1a.mp3"; } elseif ($numper == 1 or $numper == 7 or $numper == 13 or $numper == 19 or $numper == 25){ $audio = "audio/ex1i.mp3"; } elseif ($numper == 2 or $numper == 8 or $numper == 14 or $numper == 20 or $numper == 26){ $audio = "audio/ex1u.mp3"; } elseif ($numper == 3 or $numper == 9 or $numper == 15 or $numper == 21 or $numper == 27){ $audio = "audio/ex1s.mp3"; } elseif ($numper == 4 or $numper == 10 or $numper == 16 or $numper == 22 or $numper == 28){ $audio = "audio/ex1ch.mp3"; } else{ $audio = "audio/ex1m.mp3"; } //} //finaliza a verificação do paciente e terapeuta $_SESSION['numper'] = $numper; ?> <html> <head> <title>Etapa 1 - Percep&ccedil;&atilde;o</title> </head> <body> <center> <h1>Voc&ecirc; ouviu?</h1><br><br> <form id="ex1" name=ex1 method="POST" action="<?php echo $actionform?>"> <input type="image" name="questao" src="img/like.png" value="1" onclick="document.ex1.submit();" /> <input type="image" name="questao" src="img/unlike.png" value="0" onclick="document.ex1.submit();" /> <br> <?php echo "Questao numero:".$numper; echo "Resposta:".$verifica; ?> </form> <!-- Player com Autoplay, deverá ter wait no audio --> <audio id="audioex1" autoplay> <source src="<?php echo $audio; ?>" type="audio/mp3"> Parece que o seu navegador não suporta o audio, tente utilizar o <a href="https://www.google.com.br/chrome/browser/desktop/index.html">Google Chrome</a> ou o <a href="https://www.mozilla.org/pt-BR/firefox/new/">Firefox</a> </audio> <h3><?php echo $audio; ?> </center> </body> </html>
  22. Kaio Augusto de Castro

    Duvida com a Sessão (session) no php

    e ai pessoal blz? Bom sou novo em PHP e estou com umas duvidas aqui no assunto $_SESSION[' ']; e a minha duvida é o seguinte: Se eu cria a session pra ela me retornar uma resposta de uma outra pagina que foi executada, obrigatoriamente eu teria que limpar essas session para que o usuário não pudesse ter acesso as informações que ele sou anteriormente nos campos. Até ai eu meio que compreendi, o que não me entra na cabeça é: Se eu acabar de usar o código para limpar/fechar a sessão ele tbm vai limpar as informações que ficam guardados o usuário que esta acessando aquela pagina?(no caso a pagina só pode ter acesso quem esta logado) Caso limpe tudo é possível criar mais de uma session?Ex "$_SESSION_LOGIN[' '] e $_SESSION[' ']" ? se for possível como faço pra limpar os dados de uma sem mexer nas outras sessions? Lembre-se eu sou iniciante por isso tenham paciência! :)
  23. Galera,Estou com uma dúvida que está me matando.. Tenho 2 tabelas que estão relacionadas:Usuarios (Campos: id, usuario, datacadastro, sexo, etc.......)Tab_Livros (Campos: id, usuario, livro1)Quando o usuário faz o login.. ele traz perfeitamente o nome do usuário que está logado, além dos demais dados que contém na Tabela Usuários (data cadastro, sexo.. etc).Porém, tudo que está na Tab_Livros, não puxa na session desse usuário que está logado.Segue o código de autenticação: <?php $usuario=$_POST['usuario']; $senha=$_POST['senha']; $sql = mysqli_query($conn, "SELECT * FROM usuarios WHERE usuario = '$usuario' and senha = '$senha'") or die (mysqli_error()); $row = mysqli_fetch_assoc($sql); if($row > 0) { session_start(); $_SESSION[ 'usuario' ] = $row[ 'usuario' ]; //armazenando usuario $_SESSION[ 'dados_user' ] = $row; //armazenando tudo em forma de array associativo echo "<center>Autenticação OK! Você será redirecionado, Aguarde!</center>"; echo "<script>loginsuccessfully()</script>"; } else { echo "<center>Senha ou User invalidos</center>"; echo "<script>loginfailed()</script>"; } ?> Segue a pagina index.php <?php include("classe/conexao.php"); $consulta = "SELECT * FROM usuarios INNER JOIN Tab_Livros ON usuarios.usuario = Tab_Livros.usuario LIKE usuarios.usuario and Tab_Livros.usuario = '".$_GET['usuario']."'"; $con = $mysqli->query($consulta) or die($mysqli->error); $usuario=$_GET['usuario']; ?> <?php session_start(); if((!isset ($_SESSION['usuario']) == true)){ unset($_SESSION['usuario']); header('location:login.php'); } ?> <p>Teste de Registros do usuário logado com 2 tabelas</p> <p> </p> <p>Usuário: <?php echo $_SESSION[ 'dados_user' ][ 'usuario' ]; ?><br> Registrou-se em: <?php echo $_SESSION[ 'dados_user' ][ 'datacadastro' ]; ?> <br> <p>Livro (Aqui deve aparecer o dado da Tab_Livros): <?php echo $_SESSION[ 'dados_user' ][ 'livro1' ]; ?> Help meeeeeeeeeee!!
  24. Boa noite. Sou leigo em PHP e atualmente tenho um projeto apenas para fins didáticos. Estou com um sistema de login, e gostaria de armazenar várias informações dentro de uma session. Porém, só estou conseguindo armazenar o email e senha (que é digitado pelo usuário no formulário de login). O formulário de login (index.php) está assim: <div class="modal-body"> <form name="loginform" method="post" action="userauthentication.php" class="form-login"> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-user"></i></span> <input type="email" name="email" id="inputEmail" class="form-control" placeholder="Exemplo: usuario@hotmail.com" required autofocus> </div> <div class="input-group"> <span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span> <input type="password" name="senha" id="inputPassword" class="form-control" placeholder="••••••••••••••••" required> </div> </div> O arquivo de autenticação de usuário (userauthentication.php) está assim: <?php $email=$_POST['email']; $senha=$_POST['senha']; $sql = mysql_query ("SELECT * FROM usuarios WHERE email = '$email' and senha = '$senha'") or die(mysql_error()); $row = mysql_num_rows($sql); if ($row > 0) { session_start(); $_SESSION['email']=$_POST['email']; $_SESSION['senha']=$_POST['senha']; echo "<script>alert('Você foi autenticado com sucesso. Redirecionando...');</script>"; echo "<script>loginsuccessfully()</script>"; //Script para redirecionamento de páginas } else { echo "<script>alert('Usuário ou senha incorretos. Tente novamente.');</script>"; echo "<script>loginfailed()</script>"; //Script para redirecionamento de páginas } ?> Eu gostaria de armazenar todos os dados (nome, endereço, data nascimento, etc) do usuário quando ele logasse com seu login e senha, e depois fazer uma consulta com SESSION, exemplo: .$_SESSION['data_nasc']. Atualmente eu consigo fazer essa consulta como citada acima somente com o EMAIL e SENHA, que são os campos que o usuário completa no formulário de login. Então, na verdade, a session só está armazenando os campos que o usuário digita no login. E como eu disse, eu gostaria de consultar todos os dados, e não somente o que o usuário digita no formulário de login. Eu dei uma olhada neste tópico: https://forum.imasters.com.br/topic/562416-resolvido-mostrar-mais-de-um-dado-do-usuário-logado-php/ porém não consegui resolver.
  25. Sei que já tem uns tópicos antigos aqui no fórum a respeito deste assunto, porém nenhum me ajudou... Comecei com o PHP agora e estou desenvolvendo um sistema de login apenas para testes. Esta é a parte que está fazendo a autenticação do usuário (userauthentication.php): <?php include "conexao.php"; ?> <html> <head> <meta charset="UTF-8"> <title>Authentication</title> <script type="text/javascript"> function loginsuccessfully() { setTimeout("window.location='painel.php'", 0); } function loginfailed() { setTimeout("window.location='index.html#mLogin'", 0); } </script> </head> <body> <?php $email=$_POST['email']; $senha=$_POST['senha']; $sql = mysql_query ("SELECT * FROM usuarios WHERE email = '$email' and senha = '$senha'") or die(mysql_error()); $row = mysql_num_rows($sql); if ($row > 0) { session_start(); $_SESSION['email']=$_POST['email']; $_SESSION['senha']=$_POST['senha']; echo "<script>alert('Você foi autenticado com sucesso. Redirecionando...');</script>"; echo "<script>loginsuccessfully()</script>"; } else { echo "<script>alert('Usuário ou senha incorretos. Tente novamente.');</script>"; echo "<script>loginfailed()</script>"; } ?> </body> </html> E o navbar (index.php) do meu site está com esta estrutura: <nav class="navbar navbar-inverse navbar-fixed-top"> <div class="container-fluid"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar"> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="index.html#home"><img src="imagens/logo.png" width="75" height="25"></img></a> </div> <div class="collapse navbar-collapse" id="myNavbar"> <ul class="nav navbar-nav"> <li class="hvr-underline-from-center"><a href="#home" name="modal"><i class="fa fa-home fa-lg" aria-hidden="true"></i> <span class="textomenu">Início</span></font></a></li> <li class="hvr-underline-from-center"><a href="#quemsomos"><i class="fa fa-users fa-lg" aria-hidden="true"></i> <span class="textomenu">Quem Somos</a></li> <li class="hvr-underline-from-center"><a href="#catalogopecas"><i class="fa fa-list-alt fa-lg" aria-hidden="true"></i> <span class="textomenu">Catálogo de Peças</a></li> <li class="hvr-underline-from-center"><a href="#agendamento"><i class="fa fa-clock-o fa-lg" aria-hidden="true"></i> <span class="textomenu">Agendamento de Horários</a></li> <li class="hvr-underline-from-center"><a href=""><i class="fa fa-handshake-o fa-lg"></i> <span class="textomenu">Parceiros</a></li> <li class="hvr-underline-from-center"><a href="#contato"><i class="fa fa-envelope fa-lg" aria-hidden="true"></i> <span class="textomenu">Contato</a></li> <li class="hvr-underline-from-center"><a href="#"><i class="fa fa-question fa-lg" aria-hidden="true"></i> <span class="textomenu">F.A.Q</a></li> </ul> <ul class="nav navbar-nav navbar-right"> <li data-toggle="modal" data-target="#mLogin" class="hvr-underline-reveal"><a href="#mLogin"><i class="fa fa-user fa-lg" aria-hidden="true"></i> <span class="textomenu">Minha Conta</a></li> </ul> </div> </div> </nav> Eu gostaria que quando o usuário fizesse o login no site, sumisse a <li> do Minha Conta e aparecesse o usuário da pessoa logada. Então ao invés de ficar "Minha Conta" no navbar, ficaria "Bem vindo $usuario!".
×

Important Information

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