Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

if(!isset($_SESSION['username'])) fazendo com que os usuários sejam redirecionados de Verify_login_form.php de volta para index.php


Tudo o que você precisa fazer é criar uma sessão para o login. Então aqui está o truque. Cada vez que você passar de index para home, você deve verificar se a sessão de login existe. Caso contrário, peça ao usuário para fazer o login.

Verificar se um usuário está logado
<?PHP
    session_start();

    if (!(isset($_SESSION['login']) && $_SESSION['login'] != '')) {

        header ("Location: login.php");
    }
?>

Novamente, primeiro iniciamos uma sessão PHP. A instrução IF que vem a seguir é bastante complexa. Mas estamos testando duas coisas:uma sessão de usuário chamada login foi definida? E esta sessão é uma string em branco?
!(isset($_SESSION['login']) && $_SESSION['login'] != '')

A primeira parte é esta:
!(isset($_SESSION['login'])

Para verificar se uma sessão está definida, você pode usar a função embutida isset. Estamos usando o operador NOT antes dele. (O operador NOT é um ponto de exclamação.) Portanto, estamos dizendo:"SE a sessão NÃO estiver definida". A sessão pode ser definida, mas pode ter um "1" nela. Também precisamos verificar se a sessão chamada login é uma string NÃO em branco. Se ambas as coisas falharem, podemos redirecionar para a página login.php, pois significa que o usuário não está logado.

Para cada página em seu site, se você tiver o script acima no topo de sua página, ele redirecionará um usuário se ele não estiver logado. Dessa forma, você pode proteger suas páginas de não membros. Se eles estiverem logados, eles poderão visualizar a página.

SaindoSe você der uma olhada no código para logout.php, verá o seguinte:
<?PHP
    session_start();
    session_destroy();
?>

Isso é tudo que você precisa para desconectar um usuário:você inicia uma sessão e, em seguida, emite o comando session_destroy. Tudo que você precisa é um link para esta página de qualquer lugar em seu site. O link seria algo assim como seu HTML:
<A HREF = logout.php>Log Out</A>

Ao clicar neste link, o usuário será direcionado para a página com o código que destrói a sessão.