Autor Tema: Loguear y quedar en la misma pagina  (Leído 1387 veces)

Desconectado Choochex

  • PHPerit@
  • *
  • Mensajes: 7
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
Loguear y quedar en la misma pagina
« en: 26 de Agosto de 2011, 19:54:28 pm »
Hola, bueno tengo un problemita. Lo que pasa es que quiero loguear y quedar en la misma pagina.
Por ejm: tengo un archivo loguear.php (es el que crea la session) y me logueo en index.php perfecto, pero digamos que me quiero loguear en detalles/index.php, en este caso loguear.php me va a redirigir a index.php. Lo que quiero es loguearme en detalles/index.php y quedar en esa misma pagina sin tener que crear otro loguear.php, alguien sabe como?


Gracias  8) 8) 8)

Comunidad PHPeros

Loguear y quedar en la misma pagina
« en: 26 de Agosto de 2011, 19:54:28 pm »

Desconectado ferdi342

  • PHPero Experto
  • *****
  • Mensajes: 734
  • Karma: 8
  • Sexo: Masculino
  • Gúgol
    • Ver Perfil
    • Google - La solución a todo
Re:Loguear y quedar en la misma pagina
« Respuesta #1 en: 26 de Agosto de 2011, 20:38:17 pm »
o bien utilizas ajax o, coges el PHP que crea la session y lo metes en el mismo index para que cree ahí mismo la session
A veces hay que dejar terminar cosas buenas para que empiecen mejores, How I Met Your Mother

Desconectado westwest

  • PHPero Master
  • ******
  • Mensajes: 2.837
  • Karma: 104
  • Sexo: Masculino
    • Ver Perfil
Re:Loguear y quedar en la misma pagina
« Respuesta #2 en: 26 de Agosto de 2011, 20:44:58 pm »
Puedes usar ajax, o redirigir a la página que indica $_SERVER['HTTP_REFERER'], que contiene la url desde la que se llegó al archivo... es mejor usar ajax, de todas maneras.

Desconectado Warlox

  • Moderadores PHP
  • PHPero Master
  • ****
  • Mensajes: 1.278
  • Karma: 77
  • Sexo: Masculino
  • A veces hay que aprender a correr antes de caminar
    • Ver Perfil
    • Página personal
Re:Loguear y quedar en la misma pagina
« Respuesta #3 en: 26 de Agosto de 2011, 21:57:44 pm »
Hola Choochex, al igual que los demás también te voy a recomendar hacerlo con jQuery, AJAX o JSON. Pero aun así si lo quieres hacer con PHP únicamente, puedes enviar por POST (o el método que envías el formulario) un campo oculto con el valor de la página actual, para que al recibir los datos, te redirija a la página que estabas ¿me explico?
- Moderador de PHP


Desconectado DJ-Creig

  • PHPerit@
  • *
  • Mensajes: 41
  • Karma: 11
  • Nuev@ PHPer@
    • Ver Perfil
Re:Loguear y quedar en la misma pagina
« Respuesta #4 en: 26 de Agosto de 2011, 22:50:31 pm »
Menuda tontería y forma de complicarse la vida usando AJAX, jQuery y demás jajajaja, fácil, en el logear.php seguro que tienes que rediriga a index.php como dices pues en vez que redirija que refresque la página, así de fácil.

aquí tienes como hacerlo con esto:


<META HTTP-EQUIV="REFRESH" CONTENT="0">


cambia 0 por los segundos que tarda en refrescar la página. Un saludo. Y no le busquéis tres pies al gato

Desconectado Siquillote

  • PHPero Master
  • ******
  • Mensajes: 4.229
  • Karma: 179
  • Sexo: Masculino
    • Ver Perfil
Re:Loguear y quedar en la misma pagina
« Respuesta #5 en: 26 de Agosto de 2011, 22:58:31 pm »

Menuda tontería y forma de complicarse la vida usando AJAX, jQuery y demás jajajaja, fácil, en el logear.php seguro que tienes que rediriga a index.php como dices pues en vez que redirija que refresque la página, así de fácil.

aquí tienes como hacerlo con esto:


<META HTTP-EQUIV="REFRESH" CONTENT="0">


cambia 0 por los segundos que tarda en refrescar la página. Un saludo. Y no le busquéis tres pies al gato

Te equivocas amigo, si usamos así acoplandolo a la parte HTML sin intervenir PHP (Verificando que se pulso el botón) tendrías un problema. Seguro que tu escribes rápido, como la mayoría de nosotros pero siempre puede venir una persona nueva que se inicia en un ordenador y para encontrar la J tarda 1 año por lo que si se le va refrescando la página, el usuario no le da tiempo.

Y si le pones mas tiempo, 50 veces mas incluso, tardaría demasiado en cargar el archivo PHP que verifica y guarda los datos en la base de datos. No se si me sigues. Mas vale usar google y encontrar tutoriales respecto a esto o usar el buscador ese que está ahí arriba, en un div de ahí arriba que podría ayudar bastante.

Un saludo,
Siquillote.

#Fdo. Physlet

Desconectado Warlox

  • Moderadores PHP
  • PHPero Master
  • ****
  • Mensajes: 1.278
  • Karma: 77
  • Sexo: Masculino
  • A veces hay que aprender a correr antes de caminar
    • Ver Perfil
    • Página personal
Re:Loguear y quedar en la misma pagina
« Respuesta #6 en: 26 de Agosto de 2011, 23:36:23 pm »
Menuda tontería y forma de complicarse la vida usando AJAX, jQuery y demás jajajaja, fácil, en el logear.php seguro que tienes que rediriga a index.php como dices pues en vez que redirija que refresque la página, así de fácil.

aquí tienes como hacerlo con esto:


<META HTTP-EQUIV="REFRESH" CONTENT="0">


cambia 0 por los segundos que tarda en refrescar la página. Un saludo. Y no le busquéis tres pies al gato

¿Tontería?

Tontería es pensar que AJAX, jQuery o JSON no sirven para nada, hoy día el programador que no conoce esas tecnologías prácticamente está "anticuado" ya que esto y mucho más conforman lo que se denomina la web 2.0. Para la próxima te recomiendo que te informes antes de hablar.


Saludos.
- Moderador de PHP


Desconectado Choochex

  • PHPerit@
  • *
  • Mensajes: 7
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
Re:Loguear y quedar en la misma pagina
« Respuesta #7 en: 27 de Agosto de 2011, 10:17:43 am »
Bueno primero que nada gracias a todos.

Aqui esta el script:
Código: [Seleccionar]
<?php 
session_start();
    include(
"config.php");
    
$login htmlspecialchars(trim($_POST[&#39;login&#39;]));
    
$pass sha1(md5(trim($_POST[&#39;pass&#39;])));
$link=mysql_connect($server,$dbuser,$dbpass);
    
$query sprintf("SELECT usuarios.login,
                         usuarios.nombre,
       usuarios.apaterno, 
 usuarios.amaterno,
 usuarios.email
                   FROM usuarios WHERE usuarios.login=&#39;%s&#39; && usuarios.password = &#39;%s&#39;"
,               mysql_real_escape_string($login),mysql_real_escape_string($pass));    
      
$result=mysql_db_query($database,$query,$link);
      if(
mysql_num_rows($result)){    
$array=mysql_fetch_array($result);
         
$_SESSION["login"]=$array["login"];
         
$_SESSION["nombre"]=$array["nombre"];
         
$_SESSION["apaterno"]=$array["apaterno"];
         
$_SESSION["amaterno"]=$array["amaterno"];
 $_SESSION["email"]=$array["email"];
         
header("Location:index.php");
       }  else {
 echo "Login o Password Incorrectos";
      } 
       
?>
Creo que esta un poco obsoleto xD

Ahora @ferdi342, de ajax no se nada nada y por la parte del php coloque todo el script en el index, todo de maravilla, pero para que me funcionara, tuve que poner lo que mi amigo @DJ-Creig dijo:
Código: [Seleccionar]
<META HTTP-EQUIV="REFRESH" CONTENT="0">Esto lo puse en lugar de:
Código: [Seleccionar]
header("Location:index.php");Bueno por hay bien, el único problema es que a la hora de introducir algún dato incorrecto no me muestra esto:
Código: [Seleccionar]
echo "Login o Password Incorrectos"; queda como si nunca se hubiera enviado datos :S
CORRIJO,si lo muestra nada mas que abajo en la pagina xD



Después @westwest, como ya dije antes no manejo el ajax y creo que el php pues no se como podria usar esa variable... :S



 Y bien, @Warlox, me gustaría hacer con jquery ajax y todo eso, pero de donde voy a sacar el código, porque para hacerlo eso necesitaría como un año de estudiar todos esos lenguajes  :D Y por el lado del php no entiendo lo del campo oculto, se un poco mas especifico, si? :P



@DJ-Creig, oye es una muy buena idea, pero tiene razón @Siquillote, no funciona  :confused:



Felicidades @SIQUILLOTE Tienes toda la razon  ;)

Y por ultimo para terminar, haber que me pueden recomendar....

Un saludo desde Costa Rica  8) 8) 8)
« Última modificación: 27 de Agosto de 2011, 13:59:44 pm por Choochex »

Desconectado westwest

  • PHPero Master
  • ******
  • Mensajes: 2.837
  • Karma: 104
  • Sexo: Masculino
    • Ver Perfil
Re:Loguear y quedar en la misma pagina
« Respuesta #8 en: 27 de Agosto de 2011, 15:03:01 pm »
La variable que yo digo es sencilla de utilizar, contine una url así que bastaría con hacer:
header('Location: '.$_SERVER['HTTP_REFERER']);

O, como dice Warlox añadir un campo oculto (es puro html) con un valor PHP que contenga la url actual, que creo recordar que era $_SERVER['PHP_SELF']:
En el formulario:
<input type="hidden" name="url" value="'.$_SERVER['PHP_SELF'].'" />
y en el PHP hacer un header como el que puse arriba, pero con $_POST['url']

Desconectado Choochex

  • PHPerit@
  • *
  • Mensajes: 7
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
Re:Loguear y quedar en la misma pagina
« Respuesta #9 en: 31 de Agosto de 2011, 09:34:08 am »
Excelente muchísimas gracias ya lo comprendí y me funciono...

Saludos desde costa rica...  ;) ;) ;) :D

Desconectado DJ-Creig

  • PHPerit@
  • *
  • Mensajes: 41
  • Karma: 11
  • Nuev@ PHPer@
    • Ver Perfil
Re:Loguear y quedar en la misma pagina
« Respuesta #10 en: 08 de Septiembre de 2011, 10:37:54 am »
Siquillote no me refería a lo que tú dices jaja me refiero a poner:

- Un formulario donde tu te logeas con el botón enviar y una vez que le des al boton enviar salga logeado con exito osea si ha puesto todo bien y le ha dado al botón enviar le diga que se ha logeado correctamente y se actualice la página con el code <META HTTP-EQUIV="REFRESH" CONTENT="0"> y ya tendrá la session y estará logueado. Así lo tenía yo en mi web fan Habbalways y ningún problema xd.