Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera,
Estou tendo um pequeno problema que esta me atrapalhando muito.
-Tenho uma pagina de login.
-Ao preencher usuario e senha, envio para login.php através de jquey/ajax.
-Na função jquery/ajax ele pede um retorno de login.php, sendo o retorno (1 para logar) e (0 erro de usuario ou senha).
Ate ai esta tudo funcionado, mas quando eu coloco os comando para session_start, minha pagina de login fica esperando um retorno e nao da em nada,
Inicialmente eu estou testando somente o if do Tipo E
Resumindo, eu preciso criar uma session se o usuario for valido e mandar um echo com 1 de volta para a pagina principal para o ajax trabalhar esse retorno.
<?php
if($_SERVER['REQUEST_METHOD'] == "POST"){
if(isset($_POST['username']) && isset($_POST['password']) && isset($_POST['tipo'])){
include("conect.php");
$email = $_POST['username'];
$password_md5 = $_POST['password'];
$password = md5($password_md5);
$tipo = $_POST['tipo'];
if($tipo == "E"){
$query = mysql_query("SELECT * FROM empresas WHERE email = '".$email."' AND password = '".$password."'") or die(mysql_error());
$rTestar = mysql_num_rows($query);
$row = mysql_fetch_assoc($query);
if($rTestar > 0){
$check_session = 1;
session_start();
//gravo as informações das variáveis dentro das sessões
$_SESSION['id'] = $id_empresa;
$_SESSION['check_session'] = $check_session;
echo "1";
}
else if($rTestar < 1){
echo "0";
}
}
if($tipo == "C"){
$query = mysql_query("SELECT * FROM candidatos WHERE email = '".$email."' AND password = '".$password."'") or die(mysql_error());
$rTestar = mysql_num_rows($query);
$row = mysql_fetch_assoc($query);
if($rTestar > 0){
echo "1";
}
else if($rTestar < 1){
echo "0";
}
}
}
}
?>Poste seu código do Java Script (AJAX).
Amigo, segue o codigo js
lembrando que login_empresa.php (Pagina que faz login) e login.php(Pagina que faz validação do dados)
<script type="text/javascript"> $(document).ready(function(){ $('#username').focus(); // Focus to the username field on body loads $('#btnEntrar').click(function(){ // Create `click` event function for login var username = $('#username'); // Get the username field var password = $('#password'); // Get the password field var tipo = $('#tipo'); // Get the password field var login_result = $('.login_result'); // Get the login result div login_result.html('<span class="error alert alert-warning">Carregando...</span>'); // Set the pre-loader can be an animation if(username.val() == ''){ // Check the username values is empty or not username.focus(); // focus to the filed login_result.html('<span class="error alert alert-danger">Digite seu e-mail</span>'); return false; } if(password.val() == ''){ // Check the password values is empty or not password.focus(); login_result.html('<span class="error alert alert-danger">Digite sua senha</span>'); return false; } if(username.val() != '' && password.val() != ''){ // Check the username and password values is not empty and make the ajax request var filtro = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i; if(filtro.test(username.val())) { var UrlToPass = 'action=login&tipo='+tipo.val()+'&username='+username.val()+'&password='+password.val(); $.ajax({ // Send the credential values to another checker.php using Ajax in POST menthod type : 'POST', data : UrlToPass, url : 'class/login.php', success: function(responseText){ // Get the result and asign to each cases if(responseText == 0){ login_result.html('<span class="error alert alert-danger">Usuário ou senha invalido. Tente novamente!</span>'); } else if(responseText == 1){ window.location = 'http://www.google.com'; } else if(responseText == 99){ alert('Problem with sql query'); } } })}else { username.focus(); login_result.html('<span class="error alert alert-danger">Digite um e-mail válido para acessar sua conta.</span>'); return false; } } return false; }); }); </script>
Poste seu código do Java Script (AJAX).