• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Romanovs

Sessões no SMF

7 mensagens neste tópico

Boas

Ando a fazer um site e resolvi usar o SMF como fórum para o site. Bem, passa-se que eu não quero que os users tenham duas contas uma para acessar o fórum uma para o resto do site como é óbvio so que eu ando com problemas a descobrir quais são as variáveis de sessão do SMF (aliás nem creio que haja muitas de jeito para o que quero) até agora do que li da função login2() no LogInOut.php parece-me que vai tudo ser armazenado em cookie:

setLoginCookie(60 * $modSettings['cookieTime'], $user_settings['ID_MEMBER'], sha1($user_settings['passwd'] . $user_settings['passwordSalt']));

O que eu queria era exactamente definir pelo menos uma variável de sessao para o ID do utilizador, já tentei usar o código em baixo logo a seguir ao cookie e as outras lá definia no site

$_SESSION['idu'] = $ID_MEMBER;

mas nada... ;)

Será que a única maneira é ir ao cookie? :/

Obrigado desde já ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tens que fazer session_start() no inicio de cada ficheiro onde necessites de aceder à sessão.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

uhm not likelly, umas linhas antes do cookie ser plantado eles dao inicio a uma variavel de sessao no caso do login ter falhado por falta de passe

so uma extra-info, isto as pastas tao mais ou menos assim

forum/

testes.php

testes.php

<?
echo $_SESSION['idu'];
?>

e isto nao mostra o que quer que seja...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

yas ja tinha visto isso mas nao tem nada referente a sessões aí só coisas para desenhar menus e listas, acho que a coisa que tinha mais a ver era o $user_info[''] mas não me deu nada pelo menos tentando lá meter $user_info['ID_MEMBER'] e fazendo echo dessa variável

bah ;) já ando a reduzir as expectativas a determinar no mínimo o id do membro ou o nome :/

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

faz var_dump( $context['user'] ). Deves lá ter tudo isso.

Eu usava um sistema parecido com phpbb2

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

array(1) { ["is_mod"]=> bool(false) }

damn -.- nao da jeito para nada :/

mas foi uma grande ideia essa e lembrei-me de  fazer o dump do $_SESSION e...

array(14) { ["rand_code"]=> &string(32) "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

            ["ID_MSG_LAST_VISIT"]=> &string(1) "1"

            ["log_time"]=> ∫(1214576729)

            ["timeOnlineUpdated"]=> ∫(1214576729)

            ["unread_messages"]=> ∫(0)

            ["old_url"]=> &string(61) "http://romanovs.awardspace.com/forum/index.php"

            ["USER_AGENT"]=> &string(34) "Opera/9.50 (Windows NT 5.1; U; pt)"

            ["login_SMFCookie559"]=> &string(95) "a:4:{i:0;s:1:"1";i:1;s:40:"de7ca2712a7d8fefcd8d18daca57b4240f72a967";i:2;i:1403786007;i:3;i:0;}"

            ["ban"]=> &array(5) { ["last_checked"]=> int(1214570007)

            ["ID_MEMBER"]=> int(0)

            ["ip"]=> string(14) "xx.xxx.xxx.xxx"

            ["ip2"]=> string(14) "xx.xxx.xxx.xxx"

            ["email"]=> string(0) "" }

            ["mid"]=> &string(1) "1"

            ["mnome"]=> &string(5) "Admin"

            ["mpasse"]=> &string(40) "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

            ["lingua"]=> &NULL

            ["admin_time"]=> ∫(1214570007)

          }

lol xD

tao ai as minhas variaveis todas O.o (nunca me tinha lembrado de fazer echo delas xP so acho estranho nao aparecer nada no ID_MEMBER)

Foi só juntar as tuas duas ideias e fazer o include do ssi.php no ficheiro e já funciona

Bem obrigado Battousai ;)

podem fechar ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora