Ir para conteúdo
arielson

Em vez de logar normalmente, faz login na ultima conta...

Recommended Posts

Depois de muita luta, consegui fazer com que o Logout funcione. Só que agora quando ela faz logout, ai eu vou fazer login, fazendo login ele vai pra ultima conta que eu tava logado...

Será que alguém pode me dá uma luz? Estou tentando a muito tempo e até agora nada! :(

Me desculpem se não for esse lugar para colocar esse post.

 

Não sei se dá pra entender, ao deslogar da conta e fazer login, em vez de acessar a nova conta de eu digitei tá acessando a ultima conta logada. :(

 

 

 

**/// header.php

 

<?php
include('verifica_login7.php');
?>

<?php
    if(!isset($_SESSION))
    session_start();
    include("db.php");
    $login_cookie = $_COOKIE['login'];
    if (!isset($login_cookie)) {
        header("Location: login.php");
    }
?>
<!DOCTYPE html>
<html lang="en" class="no-js">


    <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
        <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
        
        <meta name="description" content="A sidebar menu as seen on the Google Nexus 7 website" />
        <meta name="keywords" content="google nexus 7 menu, css transitions, sidebar, side menu, slide out menu" />
        <meta name="author" content="Codrops" />
        <link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
        <link rel="stylesheet" type="text/css" href="header-menu/css/normalize.css" />
        <link rel="stylesheet" type="text/css" href="header-menu/css/demo.css" />
        <link rel="stylesheet" type="text/css" href="header-menu/css/component.css" />
        <script src="header-menu/js/modernizr.custom.js"></script>
        </head>

    <body>

<br /><br />
        <div class="container">
            <ul id="gn-menu" class="gn-menu-main">
                <li class="gn-trigger">
                    <a class="gn-icon gn-icon-menu"><span>Menu</span></a>
                    <nav class="gn-menu-wrapper">
                        <div class="gn-scroller">
                            <ul class="gn-menu">
                                <li class="gn-search-item">
                                <form method="GET" action="pesquisar.php">
                                    <input placeholder="Pesquise pessoas aqui" type="text" class="gn-search" name="query" autocomplete="off"><input type="submit" hidden>
                                    </form>
                                    <a class="gn-icon gn-icon-search"><span>Pesquisar</span></a>
                                </li>
                                <li>
                                    <a class="gn-icon gn-icon-archive">Atendimento</a>
                                    <ul class="gn-submenu">
                                        <li><a class="gn-icon fa-home">&nbsp;&nbsp;&nbsp;Radiologia</a></li>    
                                    </ul>
                                </li>
                                <li>
                                    <a class="gn-icon gn-icon-cog">Minha Conta</a>
                                    <ul class="gn-submenu">                                    
                                        <li><a href="myprofile.php" class="gn-icon fa-home">&nbsp;&nbsp;&nbsp;Meu Perfil</a></li>
                                        <li><a href="notificacoes.php" class="gn-icon fa-home">&nbsp;&nbsp;&nbsp;Notificações</a></li>
                                        <li><a href="inbox.php" class="gn-icon fa-home">&nbsp;&nbsp;&nbsp;Mensagens</a></li>
                                        <li><a href="amigos.php" class="gn-icon fa-home">&nbsp;&nbsp;&nbsp;Amigos</a></li>
                                        <li><a href="settings.php" class="gn-icon fa-home">&nbsp;&nbsp;&nbsp;Minhas Informações</a></li>
                                    </ul>
                                </li>
                            </ul>
                        </div>
                        <!-- /gn-scroller -->
                    </nav>
                </li>
                
                
                <?php

    $saberr = mysqli_query($connect, "SELECT * FROM users WHERE email='$login_cookie'");
    $saber = mysqli_fetch_assoc($saberr);
    $email = $saber["email"];

    $pubs = mysqli_query($connect, "SELECT * FROM pubs WHERE user='$email' ORDER BY id desc");

    if (isset($_POST['settings'])){
        header("Location: settings.php");
    }

    if (isset($_POST['amigos'])){
        header("Location: amigos.php");
    }
?>
                <li><a href="index.php">    
                <?php echo $saber['nome']." ".$saber['apelido']; ?>
                </a></li>


                <li><a href="logout.php"><span>DESCONECTAR</span></a></li>
            </ul>
 
        </div>
        <!-- /container -->
        <script src="js/classie.js"></script>
        <script src="js/gnmenu.js"></script>
        <script>
            new gnMenu( document.getElementById( 'gn-menu' ) );
        </script>

    </body>
</html>


 

 

**/// index.php

        
 

<?php
    session_start();
    include("header-menu/header.php");

    $pubs = mysqli_query($connect, "SELECT
            T.id, 
            T.user, 
            T.texto, 
            T.imagem, 
            T.data,
            U.de,
            U.para, 
            U.aceite
         FROM
            pubs AS T,
            amizades AS U 
         WHERE
            T.user = U.de AND U.para = '$login_cookie' AND U.aceite='sim'
            OR T.user = U.para AND U.de = '$login_cookie' AND U.aceite='sim'
            order by T.id DESC;");

    if (isset($_POST['publish'])) {
        if ($_FILES["file"]["error"] > 0) {
            $texto = $_POST["texto"];
            $hoje = date("Y-m-d");

            if ($texto == "") {
                echo "<h3>Tens de escrever alguma coisa antes de publicar!</h3>";
            }else{
                $query = "INSERT INTO pubs (user,texto,data) VALUES ('$login_cookie','$texto','$hoje')";
                $data = mysqli_query($connect, $query) or die();
                if ($data) {
                    header("Location: ./");
                }else{
                    echo "Alguma coisa não correu lá muito bem... Tenta outra vez mais tarde";
                }
            }
        }else{
            $n = rand(0, 1000000);
            $img = $n.$_FILES["file"]["name"];

            move_uploaded_file($_FILES["file"]["tmp_name"], "upload/".$img);

            $texto = $_POST['texto'];
            $hoje = date("Y-m-d");

            if ($texto == "") {
                echo "<h3>Tens de escrever alguma coisa antes de publicar!</h3>";
            }else{
                $query = "INSERT INTO pubs (user,texto,imagem,data) VALUES ('$login_cookie','$texto','$img','$hoje')";
                $data = mysqli_query($connect, $query) or die();
                if ($data) {
                    header("Location: ./");
                }else{
                    echo "Alguma coisa não correu lá muito bem... Tenta outra vez mais tarde";
                }
            }
        }
    }

    if (isset($_GET["love"])) {
        love();
    }

    function love() {
        $login_cookie = $_COOKIE['login'];
        $publicacaoid = $_GET['love'];
        $data = date("Y/m/d");
        $connect = mysqli_connect("localhost","root","","nova-rede-social");
        $post = mysqli_query($connect, "SELECT * FROM pubs WHERE id='$publicacaoid'");
        $postinfo = mysqli_fetch_assoc($post);
        $userinfo = $postinfo['user'];

        $ins = "INSERT INTO loves (`user`,`pub`,`date`) VALUES ('$login_cookie','$publicacaoid', NOW())";
        $conf = mysqli_query($connect, $ins) or die(mysqli_error());
        if ($conf) {
            $not = mysqli_query($connect, "INSERT INTO notificacoes (`userde`,`userpara`,`tipo`,`post`,`data`) VALUES ('$login_cookie','$userinfo','1','$publicacaoid', NOW())");
            header("Location: index.php#".$publicacaoid);
        }else{
            echo "<h3>Erro</h3> ".mysqli_error();
        }
    }

    if (isset($_GET["unlove"])) {
        unlove();
    }

    function unlove() {
        $login_cookie = $_COOKIE['login'];
        $publicacaoid = $_GET['unlove'];
        $data = date("Y/m/d");
        $connect = mysqli_connect("localhost","root","","nova-rede-social");
        $del = "DELETE FROM loves WHERE `user`='$login_cookie' AND `pub`='$publicacaoid'";
        $conf = mysqli_query($connect, $del) or die(mysqli_error());
        if ($conf) {
            header("Location: index.php#".$publicacaoid);
        }else{
            echo "<h3>Erro</h3> ".mysqli_error();
        }
    }
?>
<html lang="en" class="no-js">
    <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
        <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
        
        <meta name="description" content="A sidebar menu as seen on the Google Nexus 7 website" />
        <meta name="keywords" content="google nexus 7 menu, css transitions, sidebar, side menu, slide out menu" />
        <meta name="author" content="Codrops" />
        <link rel="shortcut icon" href="../favicon.ico">
        <link rel="stylesheet" type="text/css" href="header-menu/css/normalize.css" />
        <link rel="stylesheet" type="text/css" href="header-menu/css/demo.css" />
        <link rel="stylesheet" type="text/css" href="header-menu/css/component.css" />
        <script src="header-menu/js/modernizr.custom.js"></script>
        </head>

<header>
    <style type="text/css">
    div#publish{width: 400px; height: 210px; display: block; margin: auto; border: none; border-radius: 5px; background: #FFF; box-shadow: 0 0 6px #A1A1A1; margin-top: 30px;}
    div#publish textarea{width: 365px; height: 150px; display: block; margin: auto; border-radius: 5px; padding-left: 5px; padding-top: 5px; border-width: 1px; border-color: #A1A1A1;}
    div#publish img{margin-top: 0px; margin-left: 10px; width: 40px; cursor: pointer;}
    div#publish input[type="submit"]{width: 70px; height: 25px; border-radius: 3px; float: right; margin-right: 15px; border: none; margin-top: 5px; background: #4169E1; color: #FFF; cursor: pointer;}
    div#publish input[type="submit"]:hover{background: #001F3F;}

    div.pub{width: 400px; min-height: 70px; max-height: 1000px; display: block; margin: auto; border: none; border-radius: 5px; background-color: #FFF; box-shadow: 0 0 6px #A1A1A1; margin-top: 30px;}
    div.pub a{color: #666; text-decoration: none;}
    div.pub a:hover{color: #111; text-decoration: none;}
    div.pub p{margin-left: 10px; content: #666; padding-top: 10px;}
    div.pub span{display: block; margin: auto; width: 380px; margin-top: 10px;}
    div.pub img{display: block; margin: auto; width: 100%; margin-top: 10px; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px;}

    div#love{width: 400px; height: 30px; display: block; margin: auto; border: none; border-radius: 5px; background: #007fff; margin-top: 5px;}
    div#love p{color: #FFF; font-size: 12px; padding-top: 5px; padding-left: 5px;}
    div#love a{color: #FFF; font-size: 16px; text-decoration: none;}
    #comentar{
        float: right;
        margin-top: 15px;
        margin-right: 15px;
        cursor: pointer;
        width: 13px;
    }
    </style>
</header>
<body>

    <div id="publish">
        <form method="POST" enctype="multipart/form-data">
            <br />
            <textarea placeholder="Escreve uma publicacão nova" name="texto"></textarea>
            <label for="file-input">
                <img src="img/imagegrey.png" title="Inserir uma fotografia" />
            </label>
            <input type="submit" value="Publicar" name="publish" />

            <input type="file" id="file-input" name="file" hidden />
        </form>
    </div>
    <?php
        while ($pub=mysqli_fetch_assoc($pubs)) {
            $email = $pub['user'];
            $saberr = mysqli_query($connect, "SELECT * FROM users WHERE email='$email'");
            $saber = mysqli_fetch_assoc($saberr);
            $nome = $saber['nome']." ".$saber['apelido'];
            $id = $pub['id'];
            $saberloves = mysqli_query($connect, "SELECT * FROM loves WHERE pub='$id'");
            $loves = mysqli_num_rows($saberloves);

            if ($pub['imagem']=="") {
                echo '<div class="pub" id="'.$id.'">
                    <a href="comentarios.php?id='.$id.'"><img id="comentar" src="img/chat.png" width="13" ></a>
                    <p><a href="profile.php?id='.$saber['id'].'">'.$nome.'</a> - '.$pub["data"].'</p>
                    <span>'.$pub['texto'].'</span><br />
                </div>
                <div id="love">';
                $email_check = mysqli_query($connect, "SELECT user FROM loves WHERE pub='$id' AND user='$login_cookie'");
                $do_email_check = mysqli_num_rows($email_check);
                if ($do_email_check >= 1) {
                    $loves = $loves - 1;
                    echo '<p><a href="index.php?unlove='.$id.'">Gostei</a> | Tu e mais '.$loves.' gostaram disto</p>';
                }else{
                    echo '<p><a href="index.php?love='.$id.'">Gostar</a> | '.$loves.' gostaram disto</p>';
                }
                echo '</div>';
            }else{
                echo '<div class="pub" id="'.$id.'">
                    <a href="comentarios.php?id='.$id.'"><img id="comentar" src="img/chat.png" width="13" ></a>
                    <p><a href="profile.php?id='.$saber['id'].'">'.$nome.'</a> - '.$pub["data"].'</p>
                    <span>'.$pub['texto'].'</span>
                    <img src="upload/'.$pub["imagem"].'" />
                </div>
                <div id="love">';
                $email_check = mysqli_query($connect, "SELECT user FROM loves WHERE pub='$id' AND user='$login_cookie'");
                $do_email_check = mysqli_num_rows($email_check);
                if ($do_email_check >= 1) {
                    $loves = $loves - 1;
                    echo '<p><a href="index.php?unlove='.$id.'">Gostei</a> | Tu e mais '.$loves.' gostaram disto</p>';
                }else{
                    echo '<p><a href="index.php?love='.$id.'">Gostar</a> | '.$loves.' gostaram disto</p>';
                }
                echo '</div>';
            }
        }
    ?>
    <br />
    <br />

    
    
        <script src="header-menu/js/classie.js"></script>
        <script src="header-menu/js/gnmenu.js"></script>
        <script>
            new gnMenu( document.getElementById( 'gn-menu' ) );
        </script>
    
</body>
</html>


 

**/// conexao.php

<?php
session_start();
define('HOST', 'localhost');
define('USUARIO', 'root');
define('SENHA', '');
define('DB', 'nova-rede-social');

$conexao = mysqli_connect(HOST, USUARIO, SENHA, DB) or die ('Não foi possível conectar');

    
    

 

**/// login.php

<?php
session_start();
include('conexao.php');

if(empty($_POST['email']) || empty($_POST['senha'])) {
    header('Location: acessar.php');
    exit();
}

$email = mysqli_real_escape_string($conexao, $_POST['email']);
$senha = mysqli_real_escape_string($conexao, $_POST['senha']);

$query = "select * from users where email = '{$email}' and password = md5('{$senha}')";

$result = mysqli_query($conexao, $query);

$row = mysqli_num_rows($result);

if($row == 1) {
    $email_bd = mysqli_fetch_assoc($result);
    $_SESSION['nome'] = $email_bd['nome'];
    header('Location: index.php');
    exit();
} else {
    $_SESSION['nao_autenticado'] = true;
    header('Location: acessar.php');
    exit();
}

 

**/// logout.php

<?php
session_start();
session_destroy();
header('Location: index.php');
exit();

 

 

**/// acessar.php

 

<?php
session_start();
?>

<!DOCTYPE html>
<html>
    
<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>Minha Conta - Entrar</title>
    <link href="https://fonts.googleapis.com/css?family=Open+Sans:300,400,700" rel="stylesheet">


    
<!--===============================================================================================-->
    <link rel="stylesheet" type="text/css" href="minha-conta\login-cadastro/vendor/bootstrap/css/bootstrap.min.css">
<!--===============================================================================================-->
    <link rel="stylesheet" type="text/css" href="minha-conta\login-cadastro/fonts/font-awesome-4.7.0/css/font-awesome.min.css">
<!--===============================================================================================-->
    <link rel="stylesheet" type="text/css" href="minha-conta\login-cadastro/vendor/animate/animate.css">
<!--===============================================================================================-->    
    <link rel="stylesheet" type="text/css" href="minha-conta\login-cadastro/vendor/css-hamburgers/hamburgers.min.css">
<!--===============================================================================================-->
    <link rel="stylesheet" type="text/css" href="minha-conta\login-cadastro/vendor/animsition/css/animsition.min.css">
<!--===============================================================================================-->
    <link rel="stylesheet" type="text/css" href="minha-conta\login-cadastro/vendor/select2/select2.min.css">
<!--===============================================================================================-->    
    <link rel="stylesheet" type="text/css" href="minha-conta\login-cadastro/vendor/daterangepicker/daterangepicker.css">
<!--===============================================================================================-->
    <link rel="stylesheet" type="text/css" href="minha-conta\login-cadastro/css/util.css">
    <link rel="stylesheet" type="text/css" href="minha-conta\login-cadastro/css/main.css">
<!--===============================================================================================-->
    
</head>
<body>

    
<div class="limiter">
        <div class="container-login100">
            <div class="wrap-login100">
                <form action="login.php" method="POST" class="login100-form validate-form p-l-55 p-r-55 p-t-178">
                    <span class="login100-form-title">
                        Minha Conta
                    </span>

                    <div class="wrap-input100 validate-input m-b-16" data-validate="Please enter username">
                        <input class="input100" type="email" name="email" placeholder="Por favor, digite seu email" required>
                        <span class="focus-input100"></span>
                    </div>

                    <div class="wrap-input100 validate-input" data-validate = "Please enter password">
                        <input class="input100" type="password" name="senha" placeholder="Agora, digite sua senha" required>
                        <span class="focus-input100"></span>
                    </div>

                    <div class="text-right p-t-13 p-b-23">
                        <span class="txt1">
                            Não lembra? 
                        </span>

                        <a href="#" class="txt2">
                            Clique aqui
                        </a>
                    </div>

                    <div class="container-login100-form-btn">
                        <button type="submit" class="login100-form-btn">
                            ENTRAR
                        </button>
                    </div>
                    <br />
                    <?php
                    if(isset($_SESSION['nao_autenticado'])):
                    ?>
                    <div>
                      <p style="color:red; font-family:Arial Black;">Atenção: Algo está errado!</p>
                     <p class="txt1">- Por favor, digite novamente</p>
                      <p class="txt1" >- Se persistir, converse com sua supervisão</p>
                    </div>
                    <?php
                    endif;
                    unset($_SESSION['nao_autenticado']);
                    ?>
                    <div class="flex-col-c p-t-170 p-b-40">
                        <span class="txt1 p-b-9">
                            Você não tem conta?
                        </span>

                        <a href="criar-conta.php" class="txt3">
                            Criar uma conta agora
                        </a>
                    </div>
                </form>
            </div>
        </div>
    </div>
    
    
<!--===============================================================================================-->
    <script src="minha-conta\login-cadastro/vendor/jquery/jquery-3.2.1.min.js"></script>
<!--===============================================================================================-->
    <script src="minha-conta\login-cadastro/vendor/animsition/js/animsition.min.js"></script>
<!--===============================================================================================-->
    <script src="minha-conta\login-cadastro/vendor/bootstrap/js/popper.js"></script>
    <script src="minha-conta\login-cadastro/vendor/bootstrap/js/bootstrap.min.js"></script>
<!--===============================================================================================-->
    <script src="minha-conta\login-cadastro/vendor/select2/select2.min.js"></script>
<!--===============================================================================================-->
    <script src="minha-conta\login-cadastro/vendor/daterangepicker/moment.min.js"></script>
    <script src="minha-conta\login-cadastro/vendor/daterangepicker/daterangepicker.js"></script>
<!--===============================================================================================-->
    <script src="vendor/countdowntime/countdowntime.js"></script>
<!--===============================================================================================-->
    <script src="js/main.js"></script>    
</body>

</html>

 

 

 

**/// verifica_login7.php

 

<?php

if(!$_SESSION['nome']) {
    header('Location: acessar.php');
    exit(include "index.php");
}

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi isso:

4 horas atrás, arielson disse:

$login_cookie = $_COOKIE['login'];

 

Em nenhum código apresentado por você vi que criou algum cookie.

 

A única cessão que consegui identificar que é criada seria essa:

4 horas atrás, arielson disse:

$_SESSION['nome'] = $email_bd['nome'];

 

É só em logout.php destruir o índice dela:

unset($_SESSION['none']);

Ou se não saber exatamente qual sessão é você pode destruir toda super-global $_SESSION

unset($_SESSION);

 

 

Caso esteja criando cookies e não saiba qual preparei uma função aqui que pode matar todos os cookies mesmo sem saber quais são:

function matar_cookies() {
    if (isset($_SERVER['HTTP_COOKIE'])) {
        $cookies = explode(';', $_SERVER['HTTP_COOKIE']);
        foreach ($cookies as $cookie) {
            $parts = explode('=', $cookie);
            $name = trim($parts[0]);
            setcookie($name, '', time() - 1000);
            setcookie($name, '', time() - 1000, '/');
        }
    }
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em nenhum momento você setou os cookies e tão pouco destruiu eles...

tente usar ao iniciar uma sessão com sucesso
setcookie($nome, "valor", tempo);

ao finalizar a sessão tente utilizar

setcookie($nome, ""); ou unset($_COOKIE["nome"]);

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 25/09/2019 at 21:11, Dj Del Palmis disse:

Em nenhum momento você setou os cookies e tão pouco destruiu eles...

tente usar ao iniciar uma sessão com sucesso
setcookie($nome, "valor", tempo);

ao finalizar a sessão tente utilizar

setcookie($nome, ""); ou unset($_COOKIE["nome"]);

 

 

 Amigo, eu usaria em todos os arquivos que tem sessões? Ou só no logout?

Fiquei com algumas dúvidas. Mas mesmo assim te agradeço

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 25/09/2019 at 20:55, Omar~ disse:

Não entendi isso:

 

Em nenhum código apresentado por você vi que criou algum cookie.

 

A única cessão que consegui identificar que é criada seria essa:

 

É só em logout.php destruir o índice dela:

unset($_SESSION['none']);

Ou se não saber exatamente qual sessão é você pode destruir toda super-global $_SESSION

unset($_SESSION);

 

 

Caso esteja criando cookies e não saiba qual preparei uma função aqui que pode matar todos os cookies mesmo sem saber quais são:


function matar_cookies() {
    if (isset($_SERVER['HTTP_COOKIE'])) {
        $cookies = explode(';', $_SERVER['HTTP_COOKIE']);
        foreach ($cookies as $cookie) {
            $parts = explode('=', $cookie);
            $name = trim($parts[0]);
            setcookie($name, '', time() - 1000);
            setcookie($name, '', time() - 1000, '/');
        }
    }
}

 

 

Tou começando a achar que são os cookies que está fazendo que eu não consiga logar na conta certa, em vez da ultima.

 

Obrigado pela resposta.

Eu coloco a sua função no logout? Desculpa te atrapalhar

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
7 horas atrás, arielson disse:

Eu coloco a sua função no logout?

Sim, você chama essa função quando for deslogar.... Lembre-se de encerrar/destruir as cessões também.

 

Só que se você chegou a esse ponto de não saber se está criando cookies ou sessions, acho melhor rever todos seus arquivos e estudar a respeito desses recursos de armazenamento.

https://www.php.net/manual/en/book.session.php

https://www.php.net/manual/en/features.cookies.php

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 27/09/2019 at 16:49, Omar~ disse:

Sim, você chama essa função quando for deslogar.... Lembre-se de encerrar/destruir as cessões também.

 

Só que se você chegou a esse ponto de não saber se está criando cookies ou sessions, acho melhor rever todos seus arquivos e estudar a respeito desses recursos de armazenamento.

https://www.php.net/manual/en/book.session.php

https://www.php.net/manual/en/features.cookies.php

 

 

Muito obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por eduardodsilvaq
      Erro retornado no console do navegador: 400 bad request
      Rastreei o erro ate essa parte no arquivo admin-ajax.php mudando o valor de resposta de 0 para 1:
      if ( is_user_logged_in() ) { // If no action is registered, return a Bad Request response. if ( ! has_action( "wp_ajax_{$action}" ) ) { wp_die( '0', 400 ); } Tentei de tudo, mas infelizmente nao entendi oq realmente significa esse login e como ele funciona.
      Vi algumas pessoas tendo problema com o host, no meu caso estou usando hostinger. (Nao creio que isso e relevante mas ta ai.)
       
      Código utilizado:
       
      Javascript
      function formValidation() { event.preventDefault(); var name = document.forms["contactForm"]["name"].value; var email = document.forms["contactForm"]["email"].value; var subject = document.forms["contactForm"]["subject"].value; var message = document.forms["contactForm"]["message"].value; document.getElementById('status').innerHTML = ''; var errorMessage="<span class='error'>All fields are required.</span>"; var regEx = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/; if (name.trim() == "" ||email.trim() == "" || subject.trim() == "" || message.trim() == "") { document.getElementById('status').innerHTML = errorMessage; return false; } if (!regEx.test(email)) { var errorMessage="<span class='error'>Invalid email.</span>"; document.getElementById('status').innerHTML = errorMessage; return false; } processContactSubmit(); return true; } function processContactSubmit() { var request = new XMLHttpRequest(); request.open("POST", "/wp-admin/admin-ajax.php?action=process_contact_form"); request.onreadystatechange = function() { if(this.readyState === 4 && this.status === 200) { document.getElementById("status").innerHTML = this.responseText; } }; var myForm = document.getElementById("contactForm"); var formData = new FormData(contactForm); request.send(formData); } functions.php
      add_action('wp_ajax_nopriv_process_contact_form', 'process_contact_form'); add_action('wp_ajax_process_contact_form', 'process_contact_form'); //Retirar essa parte para error no console, no contrario ira aparecer no navegador o numero 0. function process_contact_form() { $to = "Recipient Email Address"; $subject = $_POST["subject"]; $headers = "Testing"; $message = $_POST["message"]; $attachments = ""; $sent = wp_mail($to, $subject, $message, $headers, $attachments); if (! $sent) { echo "<span class='error'>Problem in sending mail.</span>"; } else { echo "<span class='success'>Hi, thank you for the message.</span>"; } wp_die(); } Html
      <form name="contactForm" id="contactForm" method="post" onsubmit="return formValidation()" action=""> <p class="comment-form-comment"><textarea id="message" name="message" required="" placeholder="" aria-required="true"></textarea></p> <p class="comment-form-author"><label for="author">Nome: </label> <input id="name" name="name" required="" size="30" type="text" value=" " /></p> <p class="comment-form-author about"><label for="author">Assunto: </label> <input id="subject" name="subject" required="" size="40" type="text" value=" " /></p> <p class="comment-form-email"><label for="email">Email: </label> <input id="email" name="email" required="" size="30" type="text" value="" /></p> <p class="form-submit"><input id="submit" class="submit" name="email_contato" type="submit" value="Enviar" /></p> </form>&nbsp; <h3><div id="status"></div></h3>  
    • Por belann
      Olá!
       
      Eu tentar logar no wordpress que instalei em minha máquina usando localhost e logando com wp-login.php, está dando uma mensagem que o banco de dados não pode ser acessado.
      Estou usando o xampp. O que pode estar errado.
    • Por acdestefani
      Olá pessoal!
      Peguei alguns códigos na internet para para estudar um pouco e aproveitei para desenvolver um sisteminha simples aqui onde eu trabalho. Consegui desenvolvê-lo usando esse arquivo de conexão:
      <?php /************************************************************************************************************* * @author William F. Leite * * Data: 20/06/2014 * * Descrição: Classe elaborada com o objetivo de auxlilar nas operações CRUDs em diversos SGBDS, possui * * funcionalidades para construir instruções de INSERT, UPDATE E DELETE onde as mesmas podem ser executadas * * nos principais SGBDs, exemplo SQL Server, MySQL e Firebird. Instruções SELECT são recebidas integralmente * * via parâmetro. * *************************************************************************************************************/ /* * Constantes de parâmetros para configuração da conexão */ define('SGBD', 'mysql'); define('HOST', 'localhost'); define('DBNAME', 'contratos_rh'); define('CHARSET', 'utf8'); define('USER', 'tonhao'); define('PASSWORD', '100375'); define('SERVER', 'linux'); class conexao { /* * Atributo estático de conexão */ private static $pdo; /* * Escondendo o construtor da classe */ private function __construct() { // } /* * Método privado para verificar se a extensão PDO do banco de dados escolhido * está habilitada */ private static function verificaExtensao() { switch(SGBD): case 'mysql': $extensao = 'pdo_mysql'; break; case 'mssql':{ if(SERVER == 'linux'): $extensao = 'pdo_dblib'; else: $extensao = 'pdo_sqlsrv'; endif; break; } case 'postgre': $extensao = 'pdo_pgsql'; break; endswitch; if(!extension_loaded($extensao)): echo "<h1>Extensão {$extensao} não habilitada!</h1>"; exit(); endif; } /* * Método estático para retornar uma conexão válida * Verifica se já existe uma instância da conexão, caso não, configura uma nova conexão */ public static function getInstance() { self::verificaExtensao(); if (!isset(self::$pdo)) { try { $opcoes = array(\PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8'); switch (SGBD) : case 'mysql': self::$pdo = new \PDO("mysql:host=" . HOST . "; dbname=" . DBNAME . ";", USER, PASSWORD, $opcoes); break; case 'mssql':{ if(SERVER == 'linux'): self::$pdo = new \PDO("dblib:host=" . HOST . "; database=" . DBNAME . ";", USER, PASSWORD, $opcoes); else: self::$pdo = new \PDO("sqlsrv:server=" . HOST . "; database=" . DBNAME . ";", USER, PASSWORD, $opcoes); endif; break; } case 'postgre': self::$pdo = new \PDO("pgsql:host=" . HOST . "; dbname=" . DBNAME . ";", USER, PASSWORD, $opcoes); break; endswitch; self::$pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { print "Erro: " . $e->getMessage(); } } return self::$pdo; } public static function isConectado(){ if(self::$pdo): return true; else: return false; endif; } } O sistema está funcionando perfeitamente, porém gostaria de incluir a necessidade de fazer login para acessá-lo. Usei o código abaixo, que também consegui na internet:
      <?php session_start(); include('conexao.php'); if(empty($_POST['usuario']) || empty($_POST['senha'])) { header('Location: index.php'); exit(); } $usuario = mysqli_real_escape_string($conexao, $_POST['usuario']); $senha = mysqli_real_escape_string($conexao, $_POST['senha']); $query = "SELECT usuario FROM tab_usuarios WHERE usuario = '{$usuario}' AND senha = md5('{$senha}')"; $result = mysqli_query($conexao, $query); $row = mysqli_num_rows($result); if($row == 1) { $_SESSION['usuario'] = $usuario; header('Location: painel_professor.php'); exit(); } else { $_SESSION['nao_autenticado'] = true; header('Location: index.php'); exit(); } Porém esse login só funciona usando esse arquivo de conexão:
      <?php define('HOST', '127.0.0.1'); define('USUARIO', 'tonhao'); define('SENHA', '100375'); define('DB', 'contratos_rh'); $conexao = mysqli_connect(HOST, USUARIO, SENHA, DB) or die ('Não foi possível conectar'); Como poderia adaptá-lo para que funcione com o primeiro arquivo de conexão? Tentei por vários dias, mas como tenho pouca experiência com programação, não consegui.
      Desde já agradeço a ajuda de todos
       
    • Por feasso
      É possível criar um sistema de cadastre-se ou logue-se usando LinkedIn ? Não achei nada na web que seja novo... apenas postagem de 2013!
    • Por asacap1000
      Galera já não sei mais onde procurar, estou configurando o processo de login com certificação digital porém não consigo ler o retorno. No site da Certisign explica em java e .Net mas utilizo em minha aplicação da intranet tudo em PHP como eu teria que fazer. Segue exemplo que eles fornecem em .Net
       
      <form action="https://autenticador.certisign.com.br/CertisignLogin/certificado/login" method="get"> <input type="hidden" value="209" id="id" name="id"> <input type="hidden" value="CHAVE CRIPTOGRAFICA INICIAL" id="nome" name="nome"> <input type="hidden" value="http://www.seusite.com.br/suaAplicacao/retorno" id="retorno" name="retorno"> <div> <input type="image" src="images/ico-certisign_30x30.png" alt="Submit" id="btnLoginCertisign"> </div> </form> O de cima envia até aí tudo bem
       
      Abaixo o retorno que é o que não consigo fazer em PHP
       
      string retorno = Request["cb"]; string encryptionKey = "<conteúdo da chave criptográfica descarregada na etapa 2>"; retorno = CryptoLogin.Instance.DecryptText(retorno,encryptionKey);</conteúdo> A variável retorno deverá mostrar as informações como o exemplo aaixo.
       
      CertificadoBean: { emissor: Certisign Autoridade Certificadora TESTE, nome: "PROPRIETARIO DO CERTIFICADO DE TESTE", cpf: "001.002.003-44", cnpj: "", OAB: "", validade: "2015-05-27 20:59:59", emissao: "2014-05-27 21:00:00", email: "proprietario.teste@certisign.com.br", certificadoBase64: "MIIFmDCCBICgAwI...... BAQUFADCCARAx" }  
×

Informação importante

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