Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problemas con sessiones php

Estas en el tema de Problemas con sessiones php en el foro de PHP en Foros del Web. Buenas tengo un login con sessiones pero cuando las quiero recoger en otra pagina de php no me muestra nada es como si no entrara ...
  #1 (permalink)  
Antiguo 25/03/2013, 06:54
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Problemas con sessiones php

Buenas tengo un login con sessiones pero cuando las quiero recoger en otra pagina de php no me muestra nada es como si no entrara tal session este es el codigo:
Código PHP:
<?php
session_start
();
echo 
$_SESSION['email'];
include(
'conf/config.php');
if(isset(
$_SESSION['email']))
{
    echo 
"Ya estas logueado";
}
else
{
    if(
$_POST['entrar'])
    {
        
$email=$_POST['email'];
        
$contra=md5($_POST['contra']);
        
$consulta=mysql_query("SELECT COUNT(*) FROM usuarios WHERE email='$email' AND password='$contra'",$conexion);
        
$arr=mysql_fetch_array($consulta);
        
$_SESSION['id_logueado']=$arr['id'];
        
$_SESSION['email']=$email;
        
$_SESSION['nombre']=$arr['nombre'];
        
        if(
$_GET['return'])
        {
            echo 
'<script languaje="Javascript">location.href="'.$_GET["return"].'"</script>';
        }
        else
        {
             echo 
'<script languaje="Javascript">location.href="index.php"</script>';
        }
        
    }
}
if (!
$_GET["acc"]) {
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Facenty</title>
<link href="css/estilo.css" rel="stylesheet" />
<link rel="shortcut icon" type="image/x-icon" href="/images/favicon.ico" />

</head>

<body bgcolor="#DDE1E1"><div id="login">
<form action="login.php" style="margin-right:100px;" method="post">
<br />
  <p align="right" ><span id="logo">Facenty</span><span class="login">Email:</span>
    <input type="text" name="email" />
    <span class="login">Contraseña:</span>
    <input type="password" name="contra" />
    <input type="submit" name="entrar" value="Entrar" />
<?php }?>
y donde los quiero recoger esta en una carpeta y este es el codigo:
Código PHP:
<?php
session_start
();
$date_default_timezone_set date_default_timezone_set('Europe/Madrid');
$fechadate('H:i:s d-n-o',strtotime('+0hours'));
if(
$_SESSION['email']=="")
{
    
header ("Location: ../index.php");
    exit;
}
    
$id=$_SESSION['id_logueado'];
    
$nombre=$_SESSION['nombre'];
    
$invito=mysql_query("SELECT * FROM invitacion WHERE  de='$id'",$conexion);
    
$total_invi=mysql_num_rows($invito);
    if(
$total_invi == $cantidad)
    {
        echo 
'No tienes invitaciones';
    }
    
    
$email=htmlentities($_SESSION['email']);
    
$invito=mysql_query("SELECT * FROM usuarios WHERE email='$email'",$conexion);
    
$total_invi=mysql_num_rows($invito);
    if(
$total_invi 0)
    {
        echo 
"El email ya esta registrado";
    }
    
$ale=rand(1,1000000);
    
$clave=md5($ale);
    
    
$nombre=htmlentities('yo');
    
$web=$_SESSION['web'];
    
$headers .= "From:Invitación Facenty <[email protected]>\r\n"
    
    
$messaje="".$nombre." te ha invitado a formar parte de ".$web.
    .
    
    
    
    Pulsa en este enlace para poder formar parte de la web.
    http://"
.$web."/validar.php?clave=".$clave."&email=".$email;
    
    
$insertar=mysql_query("INSERT INTO invitacion (id, de,para,clave,fecha) VALUES ('null','$id','$email','true','$fecha')",$conexion);
    }
?>
Tengo algun error en las sessiones porque no me muestra el id logueado que saco en la pagina de login?? gracias un saludo.
  #2 (permalink)  
Antiguo 25/03/2013, 06:58
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Problemas con sessiones php

Y si en el LOGUEO en vez de


$_SESSION['email']=$email;

Usas



$_SESSION['email']=$arr['email'];
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #3 (permalink)  
Antiguo 25/03/2013, 07:11
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Respuesta: Problemas con sessiones php

Nada amigo no me registra el id, nose aque sera debido no me yega el id del usuario regustrado... e usado lo que me digiste y sigue igual aparte que el id esta asi ya con $_SESSION['id_logueado']=$arr['id']; gracias un saludo.
  #4 (permalink)  
Antiguo 25/03/2013, 07:15
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Problemas con sessiones php

Vamos por lo básico. Que tal si imprimes las sessiones en el LOGIN antes de redireccionar y verificas si te las estan creando..
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #5 (permalink)  
Antiguo 25/03/2013, 07:58
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Respuesta: Problemas con sessiones php

no se me crean las sessiones que saco de la base de datos pero si la de email que no sacaba de la base de datos lo que saca las variables es este codigo:
$email=$_POST['email'];
$contra=md5($_POST['contra']);
$consulta=mysql_query("SELECT COUNT(*) FROM usuarios WHERE email='$email' AND password='$contra'",$conexion);
$arr=mysql_fetch_array($consulta);
echo $_SESSION['id_logueado']=$arr['id'];
echo $_SESSION['email']=$email;
echo $_SESSION['nombre']=$arr['nombre'];
Pero no me dewelve nada solo la del email que puede ser ya que tengo su select.
  #6 (permalink)  
Antiguo 25/03/2013, 08:12
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Problemas con sessiones php

El password esta encriptado.. mmm, creo que por ahi viene la mano... a ver.. por eso te dije, vamos de lo más básico y obvio a ver si en el camino lo solucionas...

verifica que el password md5 coincida con el guardado en la BD.. ya sabes.. simples IF y luego un mysql_num_rows a ver si te trae o no resultados.. si lo trae, imprimirlos y así verificar... no estaría mal que coloques al final del query or die mysql_error() solo a modo de prueba, asi descartamos posibilidades...
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #7 (permalink)  
Antiguo 25/03/2013, 09:56
Avatar de quinqui  
Fecha de Ingreso: agosto-2004
Ubicación: Chile!
Mensajes: 776
Antigüedad: 20 años, 3 meses
Puntos: 56
Respuesta: Problemas con sessiones php

Holas, eddie8.

Además de lo sugerido por loncho_rojas, verifica si lo que te devuelve mysql_fetch_array() es lo que necesitas, ya que esta función generalmente te devuelve un array con índice numérico, y tú estás tratando de obtener los datos como un array asociativo, para lo cual debieras usar mysql_fetch_assoc(). No estoy segura de si será eso, pero prueba, prueba, como dice loncho...

Saludos!
__________________
pipus.... vieeeeeji plomius!!!
*quinqui site*
  #8 (permalink)  
Antiguo 25/03/2013, 10:21
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años, 7 meses
Puntos: 47
Respuesta: Problemas con sessiones php

Mira hace algo imprimi las sesiones en el archivo donde las recoges no en el login
  #9 (permalink)  
Antiguo 25/03/2013, 11:21
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Problemas con sessiones php

Si lees los post de arriba te daras cuenta que ya imprimió las sessiones.. lo que no hace es el QUERY
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #10 (permalink)  
Antiguo 25/03/2013, 11:36
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años, 7 meses
Puntos: 47
Respuesta: Problemas con sessiones php

Cita:
Iniciado por loncho_rojas Ver Mensaje
Si lees los post de arriba te daras cuenta que ya imprimió las sessiones.. lo que no hace es el QUERY
Mira lo que pasa que las está imprimiendo en el login y al momento que las está registrando y a menos que refreque la pagina las sesiones no estaran registradas...
  #11 (permalink)  
Antiguo 25/03/2013, 11:44
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Problemas con sessiones php

Me parece genial tu acotación, pero para generar las sessiones necesita ademas que se genere la consulta correctamente, y hasta el momento que escribió el ultimo post, el dato de USER no estaba validando o no lo encontraba, no lo está extrayendo...

Cita:
Iniciado por edie8 Ver Mensaje
no se me crean las sessiones que saco de la base de datos pero si la de email que no sacaba de la base de datos lo que saca las variables es este codigo: [...]
Pero no me dewelve nada solo la del email que puede ser ya que tengo su select.
La del email la saca del formulario directamente según puedo ver, asi que esa si la crea... Se supone que despues del query podes visualizar el array $arr.. y según leo, no lo está sacando, asi que problema de sessiones realmente no es, sino de extraccion de datos...
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #12 (permalink)  
Antiguo 25/03/2013, 14:50
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Respuesta: Problemas con sessiones php

efectivamente el problema no son las sessiones puesto que con un while no me devuelve nada, la contraseña sale igual que la de la base de datos, y sige sin devolver nada que puede ser??? es la consulta pero creo que esta bien nose que puede estar pasando... gracias.
  #13 (permalink)  
Antiguo 25/03/2013, 14:55
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Problemas con sessiones php

ya probaste

SELECT * FROM usuarios WHERE email='$email' AND password='$contra'

sin el COUNT?
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #14 (permalink)  
Antiguo 25/03/2013, 14:56
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Respuesta: Problemas con sessiones php

si lo probe lo ice tambien directamente en la base en el sql pero tampoco me dewelve resultados puse un while tampoco se soluciono no se que le puede estar pasando ala consulta, cuando la ice directamente si me devolvio los resultados pero en el php no me devuelve nada.
  #15 (permalink)  
Antiguo 25/03/2013, 15:00
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Problemas con sessiones php

No queda mas que echarle la culpa a que los campos no tienen el nombre indicado, tu conexion con la BD no funciona bien... y ese count creo que está demás, ya que te está devolviendo el numero de filas que hay... y no precisamente es usado para combatir los campos NULL en este caso...
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #16 (permalink)  
Antiguo 25/03/2013, 15:04
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Problemas con sessiones php

Código PHP:


if($_POST['entrar']) 
    { 
        
$email=$_POST['email']; 
        
$contra=md5($_POST['contra']); 
        
$consulta=mysql_query("SELECT * FROM usuarios WHERE email='$email' AND password='$contra'",$conexion); 
        
        
$count=mysql_num_rows($consulta);
        
        if(
$count>0){
                
$arr=mysql_fetch_array($consulta); 
                
$_SESSION['id_logueado']=$arr['id']; 
                
$_SESSION['email']=$email
                
$_SESSION['nombre']=$arr['nombre']; 
                 
                if(
$_GET['return']) 
                { 
                    echo 
'<script languaje="Javascript">location.href="'.$_GET["return"].'"</script>'
                } 
                else 
                { 
                     echo 
'<script languaje="Javascript">location.href="index.php"</script>'
                } 
        }else{
            
            echo 
"NO EXISTEN REGISTROS CON ESE USUARIO..";
            
        }
         
    } 
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #17 (permalink)  
Antiguo 25/03/2013, 15:57
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Respuesta: Problemas con sessiones php

Queda solucionado. cierro el tema gracias amigos.

Última edición por edie8; 26/03/2013 a las 05:38
  #18 (permalink)  
Antiguo 26/03/2013, 05:43
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Problemas con logueo

Buenas tengo un problema con un logueo tengo la contraseña y todo bien pero no el count no me devuelve nada e probao y en la base de datos directamente ese midmo codigo devuelve 1, dejo el codigo haber si me podeis ayudar a encontrar mi error, ya que ando buscandolo y nada...
Código PHP:
<?php
session_start
();
echo 
$_SESSION['email'];
include(
'conf/config.php');
if(isset(
$_SESSION['email']))
{
    echo 
"Ya estas logueado";
}
else
{
    if(
$_POST['entrar'])
    {
        
$email=$_POST['email'];
        
$contra=md5($_POST['contra']);
        
$consulta=mysql_query("SELECT count(*) FROM usuarios WHERE email = '$email' AND password = '$contra'",$conexion);
        
$arr=mysql_fetch_assoc($consulta);
        echo 
$arr[0];
        if(
$arr[0]==0)
        {
            echo 
"Email o contraseña incorrecta";
        }
        
$_SESSION['id_logueado']=$arr['id'];
        
$_SESSION['email']=$email;
        
$_SESSION['nombre']=$arr['usuarios'];
        
/*if($_GET["return"]) 
        { 
                echo '<script languaje="Javascript">location.href="'.$_GET["return"].'"</script>';} 
         else 
         { 
                echo '<script languaje="Javascript">location.href="index.php"</script>'; 
         } */
        
    
}
}
if (!
$_GET["acc"]) {
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Facenty</title>
<link href="css/estilo.css" rel="stylesheet" />
<link rel="shortcut icon" type="image/x-icon" href="/images/favicon.ico" />

</head>

<body bgcolor="#DDE1E1"><div id="login">
<form action="login.php" style="margin-right:100px;" method="post">
<br />
  <p align="right" ><span id="logo">Facenty</span><span class="login">Email:</span>
    <input type="text" name="email" />
    <span class="login">Contraseña:</span>
    <input type="password" name="contra" />
    <input type="submit" name="entrar" value="Entrar" />
  </p>
  <a href="" id="olvido">¿Has olvidado la contraseña?</a></div>
</form>
la consulta donde hago el if($arr[0]==0) no me sale nada e probado imprimiendolo fuera de ese if pero nada de nada. gracias un saludo.
  #19 (permalink)  
Antiguo 26/03/2013, 05:46
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 13 años, 3 meses
Puntos: 31
Respuesta: Problemas con logueo

Antes que nada, te recomiendo no utilizar la extension mysql,..


http://www.forosdelweb.com/f18/anunc...ecada-1008145/
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #20 (permalink)  
Antiguo 26/03/2013, 05:54
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Problemas con logueo

Te recomiendo no duplicar los temas para resolver los mismos problemas...
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #21 (permalink)  
Antiguo 26/03/2013, 05:56
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Respuesta: Problemas con logueo

y como se haria la consulta con este nuevo metodo yo esque siempre use lo de mysql y ahora nose como hacerlo, me pdrias poner un ejemplo con un archivo config por separado como tengo?? gracias.
  #22 (permalink)  
Antiguo 26/03/2013, 05:58
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Respuesta: Problemas con logueo

Cita:
Iniciado por loncho_rojas Ver Mensaje
Te recomiendo no duplicar los temas para resolver los mismos problemas...
Pense que estaba resuelto pero cualdo probe con este nuevo codigo y despues de cerrar el otro tema vuelta de nuevo y nose si se podria segui una vez cerrado lo siento.
  #23 (permalink)  
Antiguo 26/03/2013, 06:04
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Respuesta: Problemas con logueo

Si no entendi mal esto es lo que estoy cambiando
config.php
Código PHP:
Ver original
  1. $conexion=mysql_connect("server","root","contra") or die ("No se puedo conectar");
  2. mysql_select_db("bd",$conexion) or die ("imposible base");
por esto
Código PHP:
Ver original
  1. $conexion=new mysqli("server","root","contra","bd");
y lg en la consulta estaba:
Código PHP:
Ver original
  1. $consulta=mysql_query("SELECT count(*) FROM usuarios WHERE email = '$email' AND password = '$contra'",$conexion);
  2.         $arr=mysql_fetch_assoc($consulta);
y aora queda asi:
Código PHP:
Ver original
  1. $consulta=$concexion->mysqli("SELECT count(*) FROM usuarios WHERE email = '$email' AND password = '$contra'");
  2.         $arr=$consulta->fetch_array();
asi seria con el mysqli??? gracias.
  #24 (permalink)  
Antiguo 26/03/2013, 06:14
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 13 años, 3 meses
Puntos: 31
Respuesta: Problemas con logueo

Asi es, estas en lo cierto edie8
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #25 (permalink)  
Antiguo 26/03/2013, 06:17
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Respuesta: Problemas con logueo

Pues decir que haciendo esto me sale un error que antes no me pasaba nose si en la nueva conexion he hecho algo mal el archivo config lo tengo tal cual lo deje y el que hae la consulta es este mira:
Código PHP:
Ver original
  1. $consulta="SELECT count(*) FROM usuarios WHERE email = '$email' AND password = '$contra'";
  2.         $r=mysqli_query($consulta,$conexion);
  3.         $arr=mysqli_fetch_array($r);
y este el error:
Código error:
Ver original
  1. Warning: mysqli_query() expects parameter 1 to be mysqli, string given in /home/u692606171/public_html/login.php on line 16 Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, null given in /home/u692606171/public_html/login.php on line 17
y si lo dejo como antes me daba este error:
Warning: mysqli::mysqli(): (HY000/2005): Unknown MySQL server host 'SELECT count(*) FROM usuarios WHERE email = '[email protected]' AND password = '1587e59184919c61c0aa9' (1) in /home/u692606171/public_html/login.php on line 15 Fatal error: Call to a member function fetch_array() on a non-object in /home/u692606171/public_html/login.php on line 16
gracias.

Última edición por edie8; 26/03/2013 a las 06:28
  #26 (permalink)  
Antiguo 26/03/2013, 06:28
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Problemas con logueo

Para hacer uso de la interface del MYSQLi debes tener descomentada la extension=php_mysqli.dll dentro del php.ini... Si bien PHP anuncia que irá paulatinamente deprecando las funciones MYSQL no tiene nada que ver tu problema con las interfaces, a menos que tu server local y/o remoto tengan la ultima versión del PHP y esté generando un conflicto.. cosa que es muy rara, pero puede pasar... yo tengo la versión más actualizada de php y no tengo problemas con la interfax Mysql de PHP...
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #27 (permalink)  
Antiguo 26/03/2013, 06:35
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Respuesta: Problemas con logueo

yo uso l version 5.3 de php en mi server y no tengo accesso a el php.ini por lo cual no se si esta activado el mysqli, entonces lo dejo como estaba cn el mysql_query, pero volviendo al problema que es lo que hago mal porque no me da nada ese count?? no me da ningun dato ni ceros ni unos ni nada... un saludo gracias por la ayuda.
esque siempre me entra al if que puse con el email o password incorrectos...
  #28 (permalink)  
Antiguo 26/03/2013, 07:05
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Respuesta: Problemas con logueo

al final lo e echo de esta manera nose si es la mas correcta si no podeis ayudarme a pensar otra?? necesito alguna idea si esta no es valida de momento funciona:
Código PHP:
Ver original
  1. echo $_SESSION['email'];
  2. include('conf/config.php');
  3. if(isset($_SESSION['email']))
  4. {
  5.     echo "Ya estas logueado";
  6. }
  7. else
  8. {
  9.     if($_POST['entrar'])
  10.     {
  11.         $email=$_POST['email'];
  12.         $contra=md5($_POST['contra']);
  13.         $consulta=mysql_query("SELECT * FROM usuarios",$conexion)or die ("No se puedo               conectar");
  14.         $arr=mysql_fetch_assoc($consulta);
  15.         if($email!=$arr['email'] && $contra!=$arr['password'] or $email==$arr['email'] && $contra!=$arr['password'] or $email!=$arr['email'] &&        $contra==$arr['password'])
  16.         {
  17.             echo "Email o contraseña incorrecta";
  18.         }
  19.         else
  20.         {
  21.         $_SESSION['id_logueado']=$arr['id'];
  22.         $_SESSION['email']=$email;
  23.         $_SESSION['nombre']=$arr['usuarios'];
  24.         if($_GET["return"])
  25.         {
  26.                 echo '<script languaje="Javascript">location.href="'.$_GET["return"].'"</script>';}
  27.          else
  28.          {
  29.                 echo '<script languaje="Javascript">location.href="index.php"</script>';
  30.          }
  31.         }
  32.     }
  33. }
gracias por la ayuda un saludo.
  #29 (permalink)  
Antiguo 26/03/2013, 07:11
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Problemas con logueo

No es correcto...

para que sea correcto deberías tener como minimo esta consulta

SELECT * FROM usuarios WHERE email = '$email'

que es lo lógico... despues comparas si los passwords coinciden, tendiendo en cuenta que lo estas HASHEANDO con MD5.. aunque te recomendaría base_64 que es mas fácil...


if($contra!=$arr['password']){

NO ENTRA

}else{

SI ENTRA
}


todas esas comparaciones son descabelladas, le estas pidiendo que traiga TOOOODA la tabla y dejas hoyos enormes..
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #30 (permalink)  
Antiguo 26/03/2013, 08:04
 
Fecha de Ingreso: noviembre-2011
Mensajes: 516
Antigüedad: 13 años
Puntos: 10
Respuesta: Problemas con logueo

Lo ice como me dijiste me quedo asi:
Código PHP:
Ver original
  1. <?php
  2. echo $_SESSION['email'];
  3. include('conf/config.php');
  4. if(isset($_SESSION['email']))
  5. {
  6.     echo "Ya estas logueado";
  7. }
  8. else
  9. {
  10.     if($_POST['entrar'])
  11.     {
  12.         $email=$_POST['email'];
  13.         $contra=md5($_POST['contra']);
  14.         $consulta=mysql_query("SELECT * FROM usuarios WHERE email='$email'",$conexion)or die ("No se puedo conectar");
  15.         $arr=mysql_fetch_assoc($consulta);
  16.         if($contra!=$arr['password'])
  17.         {
  18.             echo "Email o contraseña incorrecta";
  19.         }
  20.         else
  21.         {
  22.         $_SESSION['id_logueado']=$arr['id'];
  23.         $_SESSION['email']=$email;
  24.         $_SESSION['nombre']=$arr['usuarios'];
  25.         if($_GET["return"])
  26.         {
  27.                 echo '<script languaje="Javascript">location.href="'.$_GET["return"].'"</script>';}
  28.          else
  29.          {
  30.                 echo '<script languaje="Javascript">location.href="index.php"</script>';
  31.          }
  32.         }
  33.     }
  34. }
  35. if (!$_GET["acc"]) {
  36. ?>
Y parece que funciona gracias amigo me enrede mucho para hacer algo tan simple pero como no funcionaba y estaba toda la mañana con ello me enrede mucho. gracias un saludo creo q paso a cerrar el tema...

Etiquetas: html, logueo, select, sql, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:43.