Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][PHP]przechowywanie danych o użytkowniku js?
omxd
post
Post #1





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 18.05.2010

Ostrzeżenie: (0%)
-----


Witam,
po zalogowaniu użytkownika chciałbym mieć w js pod ręką jakieś informacje o nim.Do tej pory php pobierał te informacje następnie tworzyłem <input type="hidden"/> i tam sobie je magazynowałem (id,ulubione,odwiedzane itd. - bez haseł rzecz jasna).W trakcie pracy użytkownika był one tam na bieżąco aktualizowane.
Jest to bezpieczne czy lepiej za każdym razem wywoływać $.ajax i pobierać te informacje jeszcze raz?

Wpadłem na jeszcze jeden pomysł ,żeby utworzyć globalna tablice:
  1. var $userArray[]= 'pobieram informacje poprzez $.ajax';
  2. $(function() {
  3. ...

Jednak tutaj niestety nie umiem przesłać id użytkownika do argumentu $.ajax( kod wykonywany jest nim strona się wczyta).
Gdy robię to "$(function() {" funkcje nie widzą tej tablicy.

Proszę o jakaś radę.

Ten post edytował omxd 17.09.2014, 09:47:45
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
by_ikar
post
Post #2





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

Ostrzeżenie: (0%)
-----


No spoko, a teraz przeczytaj chociażby tytuł tego tematu i domyśl się jak bardzo to pomaga autorowi tematu.

Co do tematu, najłatwiej ci będzie, jak dane sobie gdzieś w kodzie strony umieścisz jako json. Jeżeli chcesz to zrobić za pomocą ajaxa, to będziesz tworzyć dodatkowy request, który jest ci zbędny, bo i tak, jeżeli ktoś kto te dane będzie chciał podejrzeć, to i tak je podejrzy. Więc po zalogowaniu gdzieś w body mógłbyś wykonać to tak:

  1. <script type="text/javascript">
  2. var userData = <?php echo json_encode($user) ?>;
  3. </script>


Zakładając że twoja tablica wyglądała by mniej więcej tak:

  1. <?php
  2.  
  3. $user = array(
  4. 'id' => 123,
  5. 'name' => 'admin',
  6. 'email' => 'admin@example.com',
  7. 'avatar' => 'someimage.jpg'
  8. );


to twój kod javascript wyglądał by tak:

  1. <script type="text/javascript">
  2. var userData = {id: 123, name: "admin", email: "admin@example.com", avatar: "someimage.jpg"};


Użyć mógłbyś gdzieś w kodzie tego tak:

  1. <script type="text/javascript">
  2. console.log(userData.id, userData.name, userData.email, userData.avatar);


Ten post edytował by_ikar 17.09.2014, 20:48:49
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 7.10.2025 - 09:03