elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Generar Sesiones SMF ?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Generar Sesiones SMF ?  (Leído 3,121 veces)
Diabliyo


Desconectado Desconectado

Mensajes: 1.441


shell# _


Ver Perfil WWW
Generar Sesiones SMF ?
« en: 31 Octubre 2012, 16:28 pm »

Buenas...

Tengo un foro SMF, he visto que las Sesiones las crea con el mismo nombre sin importar el username, ademas también URLENCODEADO el "hash" (contenido de la sesión).

Mi duda, es como generar esa sesion a mano ?... vaya, el contenido de la sesión....

El punto es generar la sesión en mi dominio principal (miweb.com) y de esta forma cuando acceda al foro (foro.miweb.com) poder hacer presente la sesión sin que vuelva a tipear su username y password.

Saludos !


En línea

Diabliyo


Desconectado Desconectado

Mensajes: 1.441


shell# _


Ver Perfil WWW
Re: Generar Sesiones SMF ?
« Respuesta #1 en: 31 Octubre 2012, 18:02 pm »

Estuve contemplando usar SSI.php, pero este script retorna al usuario hacia la URL del foro y no me conviene eso :S, ya que el usuario puede logearse desde la web principal y en ese momento no me interesa ni combiene mandarlo al foro :S.

Nose ustedes, pero mi idea es:

Usar sockets para llamar SSI de forma transparente, logearme, obtener la SESION (SMFCookie956), despues pegarsela al usuario en "midominio.com". Y cuando entre al foro (foro.midominio.com), jalo la session con otra funcion (session_get_cookie_params()), ya hice pruebas con sessiones que creo manualmente, y si esta presente dicha variable en el foro.

Pero bueno... El unico detalle que le veo, es que como uso el socket, a fin de cuentas el SMF detectara que todos los usuarios entran del mismo IP :S... IP del socket (mi servidor).

Saludos !


En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.855



Ver Perfil WWW
Re: Generar Sesiones SMF ?
« Respuesta #2 en: 31 Octubre 2012, 22:30 pm »

Hola,
SSI también permite no retornar al foro sino a otra url que tu le indiques.
Código
  1. <?php
  2. require_once("smf/SSI.php");
  3.  
  4. ssi_login();
  5.  
  6. // A donde redirigir despues de login
  7. $_SESSION['login_url'] = 'http://localhost/otra_cosa.php';
  8.  
  9. // A donde redirigir despues de logout
  10. $_SESSION['logout_url'] = 'http://www.google.com';
  11. ?>


Saludos
En línea

Diabliyo


Desconectado Desconectado

Mensajes: 1.441


shell# _


Ver Perfil WWW
Re: Generar Sesiones SMF ?
« Respuesta #3 en: 1 Noviembre 2012, 15:25 pm »

Hola,
SSI también permite no retornar al foro sino a otra url que tu le indiques.
Código
  1. <?php
  2. require_once("smf/SSI.php");
  3.  
  4. ssi_login();
  5.  
  6. // A donde redirigir despues de login
  7. $_SESSION['login_url'] = 'http://localhost/otra_cosa.php';
  8.  
  9. // A donde redirigir despues de logout
  10. $_SESSION['logout_url'] = 'http://www.google.com';
  11. ?>


Saludos

Creo que no has entendido del todo lo que menciono sobre SOCKETS...
No puedo hacer "requiere_once" porque esto haria se imprima el formulario de login y eso es lo que no quiero quiero que desde mi propio formulario se haga el login tanto a mi web como al foro, asi el usuario tiene un mismo registro.

En fin.... En mi web de echo no voy a poner login por formulario, solo por perfil social, es por eso que no pudo incrustar e SSI.php de login.

Necesito hacer todo a el proceso en una sola conexion.....

Saludos !
En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.855



Ver Perfil WWW
Re: Generar Sesiones SMF ?
« Respuesta #4 en: 5 Noviembre 2012, 11:30 am »

Citar
Estuve contemplando usar SSI.php, pero este script retorna al usuario hacia la URL del foro y no me conviene eso :S, ya que el usuario puede logearse desde la web principal y en ese momento no me interesa ni combiene mandarlo al foro :S.

Lo dije por eso mas que nada.


SMF tiene una API. La de la version 1.x es oficial y se la da soporte por parte del staff pero hay una NO oficial para la 2.x.

Te permite autentificar un usuario mediante una simple función. Bueno te lo explican dentro del propio archivo. Prácticamente te deja manejar el foro entero desde ese script sin necesidad de SSI.

Código
  1. http://www.simplemachines.org/community/index.php?topic=453008.0

Ten en cuenta que para ver los archivos tienes que estar registrado y autentificado.


Espero que te sirva. Así te ahorras tiempo y no tendras que usar SOCKET's xD

PD: También puedes mirarte el archivo LogInOut.php (en /Sources) y intentar trabajar directamente con el. Pero ten en cuenta que no vas a recibir mucho soporte (ayuda) de los miembros del STAFF... son "muy orgullosos" de su sistema de seguridad y cualquier intento de hacerlo menos seguro termina por rechazar y no ayudar (aunque lo vallas a usar solo tu.)..

Saludos
« Última modificación: 5 Noviembre 2012, 11:39 am por drvy | BSM » En línea

Diabliyo


Desconectado Desconectado

Mensajes: 1.441


shell# _


Ver Perfil WWW
Re: Generar Sesiones SMF ?
« Respuesta #5 en: 5 Noviembre 2012, 15:51 pm »

Ya vi el post y me interesa el SMF API 2.0, pero no la encuentro descargable :S... Solo la 1.0 y 1.1.

Saludos !
En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.855



Ver Perfil WWW
Re: Generar Sesiones SMF ?
« Respuesta #6 en: 5 Noviembre 2012, 16:03 pm »

Tienes que estar registrado y logueado dentro del post para ver los archivos que hay añadidos al primer post xD.

De todos modos te dejo una copia que acabo de subir a DropBox.
Código
  1. http://dl.dropbox.com/u/93362349/smf_api2.php


Saludos
En línea

aicrag

Desconectado Desconectado

Mensajes: 5


Siempre fue algo personal.


Ver Perfil
Re: Generar Sesiones SMF ?
« Respuesta #7 en: 15 Noviembre 2012, 12:27 pm »

No hace mucho realice una implementacion de login con otro site para smf2. Se puede resumir en estas tres funciones:

Código:
function smfintegration_init() {
  global $smf_boarddir, $smf_user_info, $enable;
  $smf_boarddir = get_var('pathforum','');
  if (file_exists($smf_boarddir.'/Settings.php')) {
    $enable = TRUE;
    load_include('php', 'smfintegration', 'smf_api_2/smf_api_2');   
  }
}


function _smfintegration_sync_user_login() {
  global $smf_boarddir, $smf_user_info;
  smf_api_get_user($_REQUEST['name'],$_REQUEST['pass']);
  smf_api_login((60*60*24*23),$smf_user_info['id_member'],$_REQUEST['pass']);
}

function _smfintegration_sync_user_logout() {
  global $smf_boarddir, $smf_user_info;
  smf_api_get_user($_REQUEST['name'],$_REQUEST['pass']);
  smf_api_logout();
}

Genera una cookie de session válida para smf2.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Sesiones continuas
Software
kåhjî£ 1 1,688 Último mensaje 31 Marzo 2003, 16:11 pm
por diavoLino
Sesiones PHP
PHP
.txt 0 3,576 Último mensaje 21 Agosto 2004, 08:19 am
por .txt
sesiones php
PHP
angelmadrid 3 3,121 Último mensaje 2 Noviembre 2009, 23:48 pm
por WHK
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines