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 11 results

  1. brunoogm

    Duvidas sobre SESSION e codigo php

    Pessoal estou com um código onde tenho uma tabela Comanda e uma Quantidadevendacomanda, e preciso através da mesma pagina php criar a comanda e inserir valores nas duas... Então preciso criar a tabela comanda, em seguida pegar o ID e após isso inserir na tabela Quantidadevendacomanda os seus valores junto com esse ID. Até ai tudo OK, mas... Preciso que na segunda vez que essa ação for feita ele verifique se essa comanda já existe e se existir ele apenas use o ID para inserir mais um valor na tabela Quantidadevendacomanda. E ai surge o problema, no meu código usei uma SESSION para armazenar o ID da tabela comanda e se ele for 0 (Zero) ele cai na condição que cria a comanda nova senão ele apenas usa o ID na outra tabela, então na finalização eu faço com que a SESSION receba 0 novamente e o ciclo continua... O que acontece é o seguinte, sempre que a SESSION vale zero e eu tento criar a comanda e inserir valor na Quantidadevenda... ele não faz, mas se eu tentar pela segunda vez ele faz certinho Resumindo, toda vez que a SESSION é 0 ele pula o insert da segunda tabela, mas pega o ID e na proxima vez ele executa como determinado Codigo :: session_start(); include_once("php/conexao.php"); $idPessoa = $_SESSION['id_pessoa']; $id_cliente = $_SESSION['id_user']; $cont = $_SESSION['cont']; echo $cont; if ($cont == 0) { $insert ="INSERT INTO comanda (CodigoCliente, CodigoSituacao, ValorTotal) VALUES ('$id_cliente','1', '$codigoprato')"; $resulta = mysqli_query ($conectar, $insert); $sql = "SELECT MAX(CodigoComanda) FROM comanda"; $resultado_banco = @mysqli_query($conectar, $sql); $inter = mysqli_num_rows ($resultado_banco); if ($inter == 0){ echo "Erro"; }else { $dados = @mysqli_fetch_array($resultado_banco); } $id_comanda= $dados[0]; $_SESSION['cont'] = $id_comanda; } $select = "INSERT INTO quantidadevendacomanda (CodigoComanda, CodigoPrato , CodigoCliente, Quantidade, Preco) VALUES ('$cont','$codigoprato', '$idPessoa','$quantidade', '$valor')"; $resultado = @mysqli_query($conectar, $select); Na outra tabela tenho um UPDATE referente a outra coisa e o $_SESSION['cont'] = 0; assim quando ele voltar ele cai na condição... Alguma dica de como fazer isso funcionar???
  2. Boa tarde, estou tentando entender como faço para manter o valor do "Tamanho" na minha $_SESSION... no carrinho de compras... toda vez que insiro um produto o tamanho muda junto pelo valor do ultimo inserido... seguem os codigos, caso alguem saiba... Obrigado! carrinho.php <?php session_start(); if(!isset($_SESSION['carrinho'])){ $_SESSION['carrinho'] = array(); } //adiciona produto if(isset($_GET['acao'])){ //ADICIONAR CARRINHO if($_GET['acao'] == 'add'){ $id = intval($_GET['id']); $tam = $_POST['tam']; if(!isset($_SESSION['carrinho'][$id])){ $_SESSION['carrinho'][$id] = 1; } else { $_SESSION['carrinho'][$id] += 1; } } //REMOVER CARRINHO if($_GET['acao'] == 'del'){ $id = intval($_GET['id']); if(isset($_SESSION['carrinho'][$id])){ unset($_SESSION['carrinho'][$id]); } } //ALTERAR QUANTIDADE if($_GET['acao'] == 'up'){ if(is_array($_POST['prod'])){ foreach($_POST['prod'] as $id => $qtd){ $id = intval($id); $qtd = intval($qtd); if(!empty($qtd) || $qtd <> 0){ $_SESSION['carrinho'][$id] = $qtd; }else{ unset($_SESSION['carrinho'][$id]); } } } } } ?> <html xmlns="http://www.w3.org/1999/xhtml"> <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>Pedidos</title> <link href="css/bootstrap.min.css" rel="stylesheet"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <title>Carrinho</title> <style> #interna{ text-align: center; } </style> </head> <body> <div class="col-md-12"> <table class="table table-striped" border="1px" width=300 height=100 bgcolor="#d9d9d9"> <caption>Carrinho de Compras</caption> <thead> <tr> <th>Produto</th> <th>Quantidade</th> <th>Preço</th> <th>SubTotal</th> <th>Remover</th> </tr> </thead> <form action="?acao=up" method="post"> <tfoot> <tr> <td colspan="5"><input type="submit" value="Atualizar Carrinho" /></td> </tr> <td colspan="5"><a href="index.php">Continuar Comprando</a></td> </tfoot> <tbody> <?php if(count($_SESSION['carrinho']) == 0){ echo '<tr> <td colspan="5">Não há produto no carrinho</td> </tr>'; }else{ require("conexao.php"); $total = 0; foreach($_SESSION['carrinho'] as $id => $qtd){ $pdo= conecta(); $resultado = $pdo ->prepare("SELECT max(ID_LISTA)AS ID FROM listas_preco where cod_cliente = 1"); $resultado->execute(); $lista = $resultado->fetch(PDO::FETCH_ASSOC); $result = $pdo ->prepare("SELECT PRODUTOS.CODIGO, PRODUTOS.DESCRICAO AS DESC, listas_itens.PRECO FROM listas_itens inner join produtos on (listas_itens.cod_produto = produtos.codigo) inner join grupos_produto on (produtos.cod_grupo = grupos_produto.codigo) WHERE PRODUTOS.CODIGO=".$id." and (listas_itens.id_lista = '".$lista['ID']."')"); $result->execute(); $ln = $result->fetch(PDO::FETCH_ASSOC); $nome = $ln['DESC']; $preco = number_format($ln['PRECO'], 2, ',', '.'); $sub = number_format($ln['PRECO'] * $qtd, 2, ',', '.'); $total += $ln['PRECO'] * $qtd; echo '<tr height=70>' . '<td><p>'. $nome .'</p><br/> Tamanho: '. $tam .'</td></br> <td><input type="text" size="3" name="prod['.$id.']" value="'.$qtd.'" /></td> <td>R$ '.$preco.'</td> <td>R$ '.$sub.'</td> <td><a href="?acao=del&id='.$id.'">Remove</a></td> </tr>'; } $total = number_format($total, 2, ',', '.'); echo '<tr> <td colspan="4">Total</td> <td>R$ '.$total.'</td> </tr>'; } ?> </tbody> </form> </table> </div> </body> </html>
  3. Pessoal, Sou novato em desenvolvimento php... Estou com um problema que é o seguinte: tive a necessidade de criar uma nova aplicação php no servidor, já tinha uma outra (também desenvolvida por mim), apenas direcionei para outra porta... vou chamar de aplicação 1 e aplicação 2... realizo meu login na aplicação 1, até ai normal... mas quando preciso ir para a aplicação 2 acredito que tenha um conflito com a $_SESSION, pois ela ja foi guardada no login realizado anteriormente na aplicação 1... então tenho problemas de depois de ter logado em qualquer aplicação, conseguir acessar áreas da outra aplicação sem ter autenticado nela.... acredito que seja devido as $_SESSION terem os mesmos nomes, como as duas aplicações é eu quem esta desenvolvento, por habito tenho meus padroes... $_SESSION["login"], $_SESSION["id_perfil"] e por ai vai.... Há a possibilidade de a $_SESSION de uma não interferir na outra? ou estando no mesmo servidor vai acontecer isso mesmo? atualmente as aplicações estao assim: xx.xx.x.xx:80 e xx.xx.x.xx:8083
  4. Ola Pessoal, Seguinte, estou com uma dúvida, quero fazer um site sem aparecer nada no endereço acima, por isso estou utilizando $_POST, até ae, está tudo tranquilo, porém estou encontrando dificuldade em aplicar um método seguro e confiável para transferir uma valor "id=2" no $_POST, então estou utilizando $_SESSION, porém desta maneira: <? while ($result = mysql_fetch_assoc($query)) { $_SESSION['id'] = $result['doctors_id']; ?> <button type="submit" title="<?php echo $result['name']; ?>" class="button" name="juvi" value="pro_dados" /> <img src="<?php echo $result['photo']; ?>" class="img_profile"><br> <?php echo $result['name']; ?><br> <?php if($result['enable']=='1'){ echo "Ativo"; } else{ echo "Inativo"; } ?></button><br><br> <? } ?> Está funcionando corretamente, mas acredito que esteja criando vários $_SESSION pelo loop, isso não seria bom, como posso "apagar" após o uso ou mudar o método para ter um resultado melhor. Att,
  5. Luccas Gaulia

    SESSION não puxa

    Ola Pessoal, Segue meus códigos, não consigo visualizar porque o SESSION não puxa o meu registro para aparecer o nome no index.php.... tambem futuramente pegar o $id_admin para atualizar cadastro e tudo mais... Acesso pelo login.php (formulário de acesso), ele está entrando corretamente, porém o SESSION não está puxando, não sei porque. index.php <?php require_once('conexao.php'); require_once('protect.php'); if (!empty($_POST['logout'])){ session_destroy(); header("Location:login.php"); } ?> Seja Bem Vindo, <?php echo $_SESSION['userName']; ?></br> protect.php <?php if(!isset($_SESSION)) { session_start(); } $_JUVI['paginaLogin'] = "login.php"; if (isset($_SESSION['userEmail']) OR isset($_SESSION['userPassword'])) { $id_admin = $_SESSION['userID']; $name = $_SESSION['userName']; $email = $_SESSION['userEmail']; $password = $_SESSION['userPassword']; } $sql = "SELECT admin_id, email, password FROM tbl_admins WHERE email = '$email' AND password = '$password' LIMIT 1"; $query = mysql_query($sql) or die(mysql_error()); $result = mysql_num_rows($query); if($result == 1){ return true; } elseif(empty($result)) { header("Location: ".$_JUVI['paginaLogin']); return false; } else{ return false; } // Se o usuário não está logado, manda para página de login. ?> security.php <?php require_once("conexao.php"); if(!isset($_SESSION)) { session_start(); } $_JUVI['validUser'] = true; $_JUVI['valid'] = true; $_JUVI['paginaLogin'] = "login.php?erro"; $_JUVI['caseSensitive'] = false; $_SERVER['REQUEST_METHOD'] == 'POST'; $email= (isset($_POST['email'])) ? $_POST['email'] : ''; $password = (isset($_POST['password'])) ? $_POST['password'] : ''; function validUser($email, $password) { global $_JUVI; $cS = ($_JUVI['caseSensitive']) ? 'BINARY' : ''; $nemail = addslashes($email); $npassword= addslashes($password); $sql = "SELECT admin_id, name, email, password FROM tbl_admins WHERE ".$cS." email = '$nemail' AND ".$cS." password = '$npassword' LIMIT 1"; $query = mysql_query($sql) or die(mysql_error()); $result = mysql_fetch_assoc($query); if (empty($result)) { header("Location: ".$_JUVI['paginaLogin']); return false; } else { $_SESSION['userID'] = $result['admin_id']; $_SESSION['userEmail'] = $result['email']; $_SESSION['userName'] = $result['name']; $_SESSION['userEmail'] = $result['email']; $_SESSION['userPassword'] = $result['password']; if ($_JUVI['valid'] == true) { $_SESSION['userID'] = $id_admin; $_SESSION['userName'] = $name; $_SESSION['userEmail'] = $email; $_SESSION['userPassword'] = $password; } return true; } } /** Função Proteger Sessão */ function protectPage() { global $_JUVI; if (!isset($_SESSION['userID']) OR !isset($_SESSION['userEmail'])) { visitorExpulsion(); } elseif (!isset($_SESSION['userID']) OR !isset($_SESSION['userEmail'])) { if ($_JUVI['valid'] == true) { if (!validUser($_SESSION['userEmail'], $_SESSION['userPassword'])) { visitorExpulsion(); } } } } /** Função Expulsar */ function visitorExpulsion() { global $_JUVI; unset($_SESSION['userID'], $_SESSION['userEmail'], $_SESSION['userPassword']); header("Location: ".$_JUVI['paginaLogin']); } ?> validar.php (formulário de login envia para este e direciona para o index.php, este está funcionando corretamente.) <?php require_once("security.php"); if ($_SERVER['REQUEST_METHOD'] == 'POST') { $email = (isset($_POST['email'])) ? $_POST['email'] : ''; $password = (isset($_POST['password'])) ? $_POST['password'] : ''; if (validUser($email, $password) == true) { header("Location: index.php"); } else { visitorExpulsion(); } } ?>
  6. kamikaze19971997

    [Resolvido] SESSION como usar ?

    Boas pessoa tudo bem ? estou precisando muito da ajuda de vocês... já tem 4 dais que estou quebrando a cabeça nesse assunto e ainda não consegui resolver... * Só para deixar claro desculpa minha ignorância mas não manjo muito de PHP. Meu problema é o seguinte pessoa... eu estou desenvolvendo um sistema bastante simples para ser usado pela minha pessoa e mas 4 amigos... o sistema trata-se de; Pagina de Login, Pagina de Cadastro e um Painel... só que estou com uma pequena dificuldade em usar "SESSION" para que cada usuário possa ver suas informações... gostaria de uma orientação de como fazer isso. Meu projeto tem as seguintes pasta.. index.html config.php login.php cadastro.php e um banco de dados com a tabala com USUARIO e SENHA. Segue o código abaixo: LOGIN e CADASTRO index.php <!DOCTYPE html> <html > <head> <meta charset="UTF-8"> <title>BetCoins - Login</title> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/meyer-reset/2.0/reset.min.css"> <link rel='stylesheet prefetch' href='http://fonts.googleapis.com/css?family=Roboto:400,100,300,500,700,900|RobotoDraft:400,100,300,500,700,900'> <link rel='stylesheet prefetch' href='http://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css'> <link rel="stylesheet" href="css/style.css"> </head> <body> <!-- Mixins--> <!-- Pen Title--> <div class="pen-title"> <h1>Painel de Controle</h1><span> </div> <div class="container"> <div class="card"></div> <div class="card"> <h1 class="title">Login</h1> <form action="Login.php" method="post"> <div class="input-container"> <input type="#{type}" id="#{label}" type="text" name="usuario"/> <label for="#{label}">Usuário</label> <div class="bar"></div> </div> <div class="input-container"> <input type="password" id="#{label}" name="senha" required="required"/> <label for="#{label}">Senha</label> <div class="bar"></div> </div> <div class="button-container"> <button><span> ENTRAR</span></button> </div> <div class="footer"><a href="#">Esqueceu a senha?</a></div> </form> </div> <div class="card alt"> <div class="toggle"></div> <h1 class="title">Cadastrar <div class="close"></div> </h1> <form action="Cadastro.php" method="post"> <div class="input-container"> <input type="#{type}" id="#{label}" type="text" required="required" name="novo_usuario"/> <label for="#{label}">Usuário</label> <div class="bar"></div> </div> <div class="input-container"> <input type="password" id="#{label}" required="required" name="nova_senha"/> <label for="#{label}">Senha</label> <div class="bar"></div> </div> <div class="input-container"> <input type="password" id="#{label}" required="required" name="nova_senha2"/> <label for="#{label}">Repitir Senha</label> <div class="bar"></div> </div> <div class="button-container"> <button><span>CADASTRAR</span></button> </div> </form> </div> </div> <script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script> <script src="js/index.js"></script> </body> </html> Login.php <?php include ("Config.php"); // INCLUINDO INFORMAÇÕES DO CONDIG.PHP @mysql_connect("$host", "$user", "$pass") or die(mysql_error()); // CONECTANDO-SE AO MYSQL DA MAQUINA mysql_select_db($database) or die(mysql_error()); // CONECTANDO-SE A DATA BASE $usuario = ($_POST['usuario']); // ESSA VARIAVEL IRÁ GUARDAR INFORMAÇÕES FORNECIDAS PELO CAMPO DE TEXTO LOGIN DO FORMULARIO $senha = ($_POST['senha']); // ESSA VARIAVEL IRÁ GUARDAR INFORMAÇÕES FORNECIDAS PELO CAMPO DE TEXTO SENHA DO FORMULARIO $analisar = "SELECT * FROM login WHERE usuario = '$usuario' AND senha = '$senha'"; // ESSA VARIAVEL IRÁ ANALISAR NO BANCO DE DADOS NA TABELA LOGIN SE USUARIO E SENHA ESTAO CORRETOS $resultado = mysql_query($analisar); // ESSA VARIAVEL IRÁ GUARDAR INFORMAÇÕES FORNECIDAS PELA VARIAVEL $ANALISAR $iniciar = mysql_num_rows($resultado); // ESSA VARIAVEL SERVIRÁ PARA CHECAR SE EXISTE UM USUARIO COM ESSE LOGIN (NOTE QUE ELA BUSCA INFORMAÇÕES DE OUTRAS VARIAVEIS) if ($iniciar == 1)// ESSA CONDIÇÃO IRÁ VERIFICAR SE OS DADOS FORNECIDOS NÃO IGUAIS AOS DO BANCO DE DADOS { // APÓS A CONDIÇÃO FOR ACEITA, ACONTECE UMA AÇÃO, E ESSA AÇÃO SERÁ O RESULTADO DO LOGIN EFETUADO ?> <!-- NOTE QUE ISSO JÁ É UM COMENTARIO EM HTML, ISSO ACONTECEU PORQUÊ EU FECHEI A TAG DO PHP PARA QUE EU POSSA TRBALHAR COM CODIGOS EM HTML APÓS EU TER EFETUADO O LOGIN --> <center> Bem Vindo ao seu Painel <font style="font-weight:bold;"><?php echo $usuario ?></font> <!-- MENSAGEM QUE APARECERÁ CASO ESTA LOGADO --> </center> <?php // AQUI JA COMEÇA COMENTARIOS EM PHP, OU SEJA EU ABRI NOVAMENTE A TAG DO PHP PARA QUE MEU CODIGO CONTINUE PROCESSANDO SEM ERRO ALGUM } else // EXCEÇÃO CASO LOGIN OU SENHA ESTIVEREM ERRADOS { echo "Login ou Senha Invalido"; // MENSAGEM QUE APARECERÁ CASO OS DADOS FORNECIDOS ESTAJAM ERRADOS } ?> Cadastro.php <?php require_once ("Config.php"); // INCLUINDO INFORMAÇÕES DO CONDIG.PHP @mysql_connect("$host", "$user", "$pass") or die(mysql_error()); // CONECTANDO-SE AO MYSQL DA MAQUINA mysql_select_db($database) or die(mysql_error()); // CONECTANDO-SE A DATA BASE $novo_usuario = ($_POST['novo_usuario']); // ESSA VARIAVEL IRÁ GUARDAR INFORMAÇÕES FORNECIDAS PELO CAMPO DE TEXTO LOGIN DO FORMULARIO $nova_senha = ($_POST['nova_senha']); // ESSA VARIAVEL IRÁ GUARDAR INFORMAÇÕES FORNECIDAS PELO CAMPO DE TEXTO SENHA DO FORMULARIO $nova_senha2 = ($_POST['nova_senha2']); // ESSA VARIAVEL IRÁ GUARDAR INFORMAÇÕES FORNECIDAS PELO CAMPO DE TEXTO COMFIRME A SENHA DO FORMULARIO $selecionar = "SELECT usuario FROM login WHERE usuario = '$novo_usuario'"; // ESSA VARIAVEL IRÁ SELECIONAR A TABELA E A COLUNA PARA QUE SEJA CHECADO SE NÃO EXISTE UM MESMO LOGIN $verificar = mysql_query($selecionar); // ESSA VARIAVEL IRÁ GUARDAR INFORMAÇÕES FORNECIDAS PELA VARIAVEL $SELECIONAR $enviar = mysql_num_rows($verificar); // ESSA VARIAVEL SERVIRÁ PARA CHECAR SE JA EXISTE UM USUARIO COM ESSE LOGIN (NOTE QUE ELA BUSCA INFORMAÇÕES DE OUTRAS VARIAVEIS) if ($enviar == 1) // ESSA CONDIÇÃO IRÁ VERIFICAR SE OS DADOS FORNECIDOS DESDE A PRIMEIRA VARIAVEL $SELECIONAR ATÉ ENVIAR SE NÃO HÁ NENHUM CONFRONTO (A CONDIÇÃO A SER CUMPRIDA AQUI É QUE O VALOR DO LOGIN DO USUARIO TEM QUE SER DIFERENTE DE 1 PARA CONTINUAR, SE O POR ACASO ALGUEM JA ESTIVER UTILIZANDO O MESMO LOGIN, DE ALGUMA FORMA ESSE NOME SERÁ COMPARADO COM O Nº 1, E APARECERÁ A MENSAGEM DE ERRO ABAIXO) { echo "O Nome do Usuario Já Existe"; // MENSAGEM DE ERRO QUE IRÁ APARECER CASO A CONDIÇÃO SEJA CUMPRIDA, OU SEJA, A CONDIÇÃO SE CUMPRE QUANDO O LOGIN JA ESTIVER SENDO USADO } else // EXCEÇÃO CASO NÃO SEJA CUMPRIDA AS CONDIÇÕES ( ESSA EXCEÇÃO ELA SERÁ PROCESSADA QUANDO OS DADOS FORNECIDOS PELA PESSOA AINDA NÃO ESTIVER SENDO UTILIZADA) { if ($nova_senha == $nova_senha2) // ESSA CONDIÇÃO IRÁ VERIFICAR SE A SENHA PRINCIPAL É A MESMA FORNECIDA PELA CONFIRMAÇÃO DA SENHA, SE AS DUAS SENHAS ESTIVEREM CORRETAS O CADASTRO IRÁ SER CONCLUIDO. { $sqlEnviando = mysql_query("INSERT INTO login (usuario,senha) VALUES ('$novo_usuario','$nova_senha')") or die(mysql_error()); /* AQUI O CODIGO IRÁ INSERIR OS DADOS FORNECIDOS PELA PESSOA NO BANCO DE DADOS, FUNCIONA +/- ASSIM ESSA LINHA: "INSIRA DENTRO DA TABELA LOGIN NAS COLUNAS USUARIO E SENHA OS VALORES $NOVO_USUARIO E $NOVA_SENHA" */ echo "Cadastro Efetuado com Sucesso"; // MENSAGEM QUE IRÁ APARECER CASO O CADASTRO SEJA EFETUADO COM SUCESSO! } else // ESSA EXCEÇÃO SE APLICA QUANDO A SENHA PRINCIPAL FOI DIGITA DIFERENTE DA CONFIRMAÇÃO DA SENHA { echo "As Senhas não Conferem"; // MENSAGEM QUE IRÁ APARECER CASO AS SENHA NÃO FOREM CORRETAS } } ?> Então gostaria de cria um painel para os usuários... mas como fazer o usuário ver apenas os dados dele e nao dos outros, andei vendo vídeos e observei que pode ser resolvido por essa função SESSION.
  7. rafaelzuckerberg

    Níveis de acesso no login

    Galera, preciso muito tirar uma dúvida, ainda estou aprendendo php e estou seguindo um tutor, consegui criar o DB e consegui fazer login tudo normal, mas ... gostaria que me orientassem como eu posso fazer níveis de acesso de usuários, já criei no BD o tipo de usuário, so não estou conseguindo no index, fazer estas condições e utilizar o SESSION, as validações estão todas corretas, quero que if( admin ) admin.php if (user ) user.php e mostrar seus dados como nome por ex segue arquivos: função que chama o arquivo jpLogin e manipula os dados do formulário function fctLogin(){ $.post('require/jp/jpLogin.php',{ email:$('#eLogin').val(), senha:$('#sLogin').val() },function(res){ if(res){ $('form span').html(res).css({color:'#f00'}); }else{ location.href = 'admin/' //$('form span').html('Logado com sucesso').css({color:'#069'}); } }); } class Login onde tem uma $_SESSION['logado'] = $this->dss <?php class Login{ private $vem, $vsh, $cpt, $crud, $email, $senha, $log, $dds; public function setLogin($email, $senha){ $this->vem = new ValidaEmail(); $this->vsh = new ValidaSenha(); $this->cpt = new Cripto(); $this->crud = new CRUD(); $this->email = $this->vem->setValidaEmail($email); $this->senha = $this->vsh->setValidaSenha($senha); $this->log = $this->senha == $senha? $this->crud->select('id','usuarios','WHERE email = ? && senha = ?',array($this->email,$this->cpt->setCripto($this->senha))): FALSE; if($this->email <> $email){ return $this->email; }else{ if($this->senha <> $senha){ return $this->senha; }else{ if($this->log && $this->log->rowcount() > 0){ foreach($this->log as $this->dds){ $_SESSION['logado'] = $this->dds; return $this->dds; } }else{ return 'Acesso negado'; } } } } } ?> e o index onde serão enviados <div id="wrapper"> <div class="navbar navbar-inverse navbar-fixed-top"> <div class="adjust-nav"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".sidebar-collapse"> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="#"> <img src="assets/img/logo.png" /> </a> </div> <span class="logout-spn" > <a href="../logout.php" style="color:#fff;">LOGOUT</a> </span> </div> </div> <!-- /. NAV SIDE --> <!--<div id="page-wrapper" >--> <div id="page-inner"> <div class="row"> <div class="col-lg-12"> <h2>ADMINISTRADOR</h2> </div> </div> <!-- /. ROW --> <hr /> <div class="row"> <div class="col-lg-12 "> <div class="alert alert-info"> <strong>Bem vindo fulano </strong> </div> </div> </div> </div> </div> </div> </div> </div> </div> <!-- /. ROW --> <div class="row"> <div class="col-lg-12 "> <br/> <div class="alert alert-danger"> <strong>Want More Icons Free ? </strong> Checkout fontawesome website and use any icon <a target="_blank" href="http://fortawesome.github.io/Font-Awesome/icons/">Click Here</a>. </div> </div> </div> <!-- /. ROW --> </div> <!-- /. PAGE INNER --> </div> <!-- /. PAGE WRAPPER --> <!--</div>-->
  8. Eliseu Filipi

    PHP não é chamado no script

    Olá Eu tenho um botão em minha página html com o código: <script> //Obter ID do link var url = window.location.href var captured = /%=([^&]+)/.exec(url)[1]; var l = captured ? captured : 'myDefaultValue'; var i = '/download.php?%=' </script> <input type="submit" name="Submit1" id="dow" value="Download" class="styled-button-9" onclick="clearRecord();window.location.href= i+l;edit();" disabled> <script> function edit() { wb_Text5.style.visibility = 'visible'; dow.style.visibility = 'hidden'; timer.style.visibility = 'hidden'; } function clearRecord() { location.href = '/login.php'; } </script> Quando clico no botão, será chamado o "download.php" onde retornara o link do arquivo para baixar. No entanto esse arquivo só será baixado se "$_SESSION['logado'] " for igual a "true". Então, antes de chamar o "download.php", terá que chamar "login.php" contendo: <?php session_start(); $_SESSION['logado'] = 'true'; ?> O código php está correto pois já testei. O caso é que parece que "login.php" não é chamado, que é chamado depois do "download.php", ou sei lá oque esta acontecendo. Alguém me ajuda. Desde já agradeço.
  9. rpmarques

    Dúvida com array e session

    Bom dia sei que é uma dúvida simples, mas não estou conseguindo achar a solução, tenho um array que vem da sessão da seguinte forma: PEDIDOI produto_id | qtde 1 => 1 10 => 2 41 => 3 o que eu gostaria é que ficasse da seguinte forma: PEDIDOI produto_id | qtde | chave 1 => 1 => valor da chave 10 => 2 => valor da chave 41 => 3 => valor da chave não sei se consegui ser claro.
  10. marcaosi

    SESSION Falhando

    Olá, bom dia a todos, Estou tentando desenvolver um sistema de login em PHP no qual preciso utilizar $_SESSION, porém quando me direciono pra uma página com a lógica para verificar os dados entrados pelo usuário, ao voltar a session não se mantém. Exemplo: o usuário entra com os dados no form e o sistema direciona para uma página chamada login que procura no banco o usuário e verifica se pode fazer o login, se sim vem o seguinte código. session_start(); $_SESSION['usuario'] = $linha['nome']; $_SESSION['id_setor'] = $linha['id_setor']; echo "<script>window.location='index.php'</script>"; e quando vai para a index eu tenho o código: session_start(); echo $_SESSION['usuario']; e não printa nada na tela, ou seja, a session não está sendo mantida. se na página de login dar um echo na session assim que foi criada, antes do window.location, ele escreve o valor correto na tela, mas ao ser direcionado para outra página, já não existe mais. Alguém poderia me ajudar?? Agradeço desde já a todos.
  11. Boa tarde pessoal tudo bem? Estou quebrando a cabeça com algo aqui com relação a $_SESSION. Já fiz varios e achei muito conteúdo sobre montar um sistema seguro com $_SESSION, o mais básico, criar um banco de dados e deixar uma página segura que só pode ser vista por usuários cadastrados. O meu problema é outro. Não quero deixar a página restrita e sim apenas "NÃO MOSTRAR" parte do conteúdo, segue o exemplo: Se não estiver logado o internauta vê isso: Nome do Produto Descrição geral do produto Preço R$ (sob consulta) Se estiver logado o internauta vê isso: Nome do Produto Descrição geral do produto Preço R$ 100,00 Como eu faço isso? Como protejo apenas uma parte? Só achei conteúdo explicando como proteger uma página inteira e não sendo logado faz um "header("Location:" Preciso de um pequeno exemplo somente desta parte do conteúdo que será protegido o resto eu sei como fazer. Grato a todos.
×

Important Information

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