PDA

Zobacz pełną wersję : Jak sprawdzić id i name usera?



keran
11-12-2006, 10:53
Witam,
Probowałem już szukać informacji na forum ale jakimś nieszczęściem nie znalazłem jeszcze :(
Problem jest taki: chce napisać własne skrypty, podpinane poprzez rd add php i w nich sprawdzać id zalogowanego użytkownika.
Czy to jest wykonalne? Jak korzystać ze zmiennych i sesji joomli we własnych skryptach?

Rybik
11-12-2006, 12:47
na poczatku pliku index.php twojej szaty graficznej, tuz przed "if $my->id" wstaw kodzik:


foreach ($my as $key=>$value) echo (!is_object($my->$key) ? "\$my->$key=$value<br/>" : "other object");

on ci wypisze skladowe obiektu mosuser oczywiscie to tylko raz obejrzec, spisac i kod usunac :)

keran
11-12-2006, 13:35
Dziękuje za odpowiedź, dzięki której poznałem zawartość obiektu mosuser.
Tylko jak tego użyć we własnym skrypcie.. (dołączanym rdaddphp)



<?
echo $my->id; //nic nie pokazuje
?>


Trzeba coś dodać, jakieś wywołanie obiektu?
Proszę o prosty przykład, o jakakolwiek pomoc.

Rybik
11-12-2006, 14:13
/components/com_content/content.php

na poczatku przerzuc obiekt do zmiennej sesyjnej
$_SESSION['my']=$my;

od tej chwili w skryptach rdaddphp uzywasz:
$_SESSION['my']->id;

jest to rozwiazanie niezbyt eleganckie ale innego nie widze, bo kod php z tego bota ma inny zasieg zmiennych i trzeba to do sesji wrzucic juz podczas generowania artykulu, stad wybor miejsca akurat w content.php

dla bezpieczenstwa doradzalbym nie wywalac calego obiektu ale tylko te dane ktore potrzebujemy i zastosowac unikatowe nazwy komorek tabeli (prefiks rd_):
$_SESSION['rd_userid']=$my->id;
$_SESSION['rd_username']=$my->name;

keran
11-12-2006, 14:48
Działa jak należy :) dzięki Rybik,

dla potomnych dodam, ze w swoim kodzie trzeba dodać session_start(); na początku.