Ir para conteúdo

Arquivado

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

Matheus Peluchi

Erro ao inserri dados na sessão.

Recommended Posts

Bom dia pessoal,

Sou iniciante em php e pesquisei em vários locais e não achei uma explicação clara sobre o erro abaixo.

é um sistema de login simples. e estou iniciando a sessão para depois proteger as paginas seguintes.

Mas algo sai errado quando tento atribuir valores a sessão.

 

 

 

Fatal error: Can't use function return value in write context in C:\xampp\htdocs\chklogin.php on line 17

 

Segue os Scrips para análise.

 

index.php

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Formulário Centralizado</title>
    <style type="text/css">
        * { margin: 5; padding: 0; font-family:Tahoma; font-size:9pt;}
        #divCenter {
                background-color: White /*#e1e1e1;*/
                width: 210px;
                height: 100px;
                left: 50%;
                margin: -10px 0 0 -130px;
                padding:10px;
                position: absolute;
                top: 60%; }
        #botao{ text-align: center }
            .botaoEnviar{
            width: 350px;
            text-align: center;
            padding: 15px 20px;
            border: 1px solid #eee;
            border-radius: 6px;
            background-color: #FCC302;
            font-size: 18px;
            }
        #logo{
                width: 400px;
                height: 300px;
                left: 35%;
                margin: 0px 0 0 0px;
                padding:10px;
                position: absolute;
                top: 0%; }

    </style>
    
</head>
<body>
	<img id="logo" src= "/logo/LogoPrincipal.png">
    <div id="divCenter">
        <form method="post" action="chklogin.php">
            Login:  <input type="text" name="edtlogin" /><br/> <br />
            Senha: <input type="password" name="edtsenha" /><br/> <br/>
    <div id="botao">
            <input type="submit" name="btentrar" value ="Entrar"/>
    </div>
        </form>
    </div>
</body>
</html>

conectabd.php

<?php

$srv = 'localhost';
$usuariobd = 'root';
$senhabd = '';
$bd = 'SysObras';
$connectbd = mysql_connect ($srv, $usuariobd, $senhabd) or die ("Não foi possivel conectar a base.");
$selectbd =  mysql_select_db ($bd, $connectbd) or die ("Erro ao selecionar a base.");


?>

chklogin.php

<?php
    include ("conectabd.php");
    
    Session_start();
    
    $login = $_POST['edtlogin'];
    $senha = $_POST['edtsenha'];

    
    $verifica = mysql_query("SELECT * FROM usuarios WHERE login = '$login' AND senha = '$senha'") or die("erro ao selecionar");
    
            if (mysql_num_rows($verifica)<=0){
                echo"<script language='javascript' type='text/javascript'>alert('Login e/ou senha incorretos');window.location.href='index.php';</script>";
                    
            }else{
                            
                $_SESSION('login') = $login;
                $_SESSION('senha') = $senha;
                header("Location:home.php");
                }
?>


Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Negrito
      Olá,
       
      Estou quebrando a cabeça com o recurso Session_OnStart , pois eu gostaria que algumas paginas/arquivos .asp tivessem exceções.
       
      Criei o Global.ASA com o seguinte contexto:
       
      <SCRIPT RUNAT=Server Language="VBScript">
      Sub Session_OnStart
        startPage = "/default.asp"
        currentPage = Request.ServerVariables("SCRIPT_NAME")
        If strcomp(currentPage,startPage,1) then
          Response.Redirect("/default.asp")
        End If
      End Sub
      </SCRIPT>
       
      Ele funciona perfeitamente, quando tento acessar qualquer pagina ou subdiretorio diretamente pela URL, ele me joga para a pagina inicial.
       
      Porem, eu gostaria de ter exceções em alguns diretorios e paginas .ASP , onde eu gostaria de liberar o acesso direto ao digitar a URL.
       
      Alguem sabe me informar se é possivel ? 
       
      Obrigado.
       
       
    • Por k9studio
      Olá meus Amigos,
       
      Estou tendo dificuldades em eliminar dados repetidos de uma session
      é um sisteminha de pesquisa de domínios com array
      quero eliminar quando já tiver um nome na session, não deixar gravar outro
      aguem pode ajudar
      veja como está  
      Array ( [0] => Array ( [type] => register [domain] => testeteste.com.br [regperiod] => 1 ) [1] => Array ( [type] => register [domain] => testeteste.com [regperiod] => 1 ) [2] => Array ( [type] => register [domain] => testeteste.net.br [regperiod] => 1 ) [3] => Array ( [type] => register [domain] => testeteste.com.br [regperiod] => 1 ) [4] => Array ( [type] => register [domain] => testeteste.com [regperiod] => 1 ) [5] => Array ( [type] => register [domain] => testeteste.net.br [regperiod] => 1 ) ) Desde já muito obrigado a todos
    • Por MarcosxEduardo
      Olá.
      Eu instalei um site na minha hospedagem.
      Criei a DB e o usuário, dando todas as permissões e conectei essa DB ao site.
       
      Mas quando vou entrar aparece a seguinte mensagem:
      Fatal error: Call to undefined function mysqli_connect() in /home2/public_html/database/DB.php on line 34
       
      alguém sabe que possa ser ?
       
    • Por Alberto Nascimento
      Estou tendo problemas de acesso ao Session, onde quando realizo login via computador, consigo "pegar" os dados que foram armazenados na sesion, mas quando utilizo o sistema de login no telefone ( android, por exemplo ) a session não esta conseguindo carregar os dados do usuário logado e exibir na página seguinte.
       
      Outra coisa que observei é que não consigo trabalhar com session em pastas diferentes, isso é normal? Veja só:
       
       
      Utilizando esta estrutura, não consigo ter acesso ao session no sistema ANDROID
       
      Agora se ao invés de ser como esta acima, faço uma pasta com todos os arquivos juntos, já consigo "pegar" os dados da session. Isso é normal?
    • Por tony_lu
      Ola pessoal, tenho uma hospedagem de php na hostgator e estou tentando rodar uma rotina com session e esta dando erro, na pagina só tem este código:
       
      <?php  session_start();  ?> E esta dando este erro:
      Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home2/sitewww/public_html/carrinho.php:1) in /home2/sitewww/public_html/carrinho.php on line 2
       
      Alguem pode me ajudar?
×

Informação importante

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