Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]Jak wyświetlić dane użytkownika z bazy danych when user is logged in
Forum PHP.pl > Forum > Przedszkole
marsoonn
Witam,

Jestem zalogowany na swojej stronie internetowej, chciałbym stworzyć zakładke "profil.php",
w którym mogę edytować swoje dane,

https://imgur.com/a/LkxgsHD
https://imgur.com/Omou04i
https://imgur.com/UzHyoag
https://imgur.com/DEJEr7l
https://imgur.com/undefined


Nie działa usersEmail oraz usersName,
proszę o pomoc, w tym przypadku userName to imie i nazwisko, wszystko widać na powyższych obrazkach

viking
Na pierwszym screenie widać że w sesji trzymasz username.
marsoonn
Nadal nie potrafię rozwiązać tego problemu i wyświetlić zawartości usersName i usersEmail z bazy danych

W poniższym kodzie jest błąd chyba w linijce z
$_SESSION["useremail"] = $uidExists["usersEmail"];
$_SESSION["username"] = $uidExists["usersName"];
nie mogę tak zrobić prawda? jak to rozwiązac?

  1. function loginUser($conn, $username, $pwd)
  2. {
  3. $uidExists = uidExists($conn, $username, $username);
  4.  
  5. if($uidExists === false)
  6. {
  7. header("location: ../login.php?error=wronglogin");
  8. exit();
  9. }
  10.  
  11. $pwdHashed = $uidExists["usersPwd"];
  12. $checkPwd = password_verify($pwd, $pwdHashed);
  13.  
  14. if($checkPwd === false)
  15. {
  16.  
  17. header("location: ../login.php?error=wronglogin1");
  18. exit();
  19. }
  20. else if($checkPwd === true)
  21. {
  22. $_SESSION["userid"] = $uidExists["usersId"];
  23. $_SESSION["useruid"] = $uidExists["usersUid"];
  24. $_SESSION["useremail"] = $uidExists["usersEmail"];
  25. $_SESSION["username"] = $uidExists["usersName"];
  26. header("location: ../index.php");
  27. exit();
  28. }
  29. }
viking
Zapisujesz $_SESSION["username"] więc dlaczego odwołujesz się poprzez $_SESSION["usersName"]?
marsoonn
Masz rację, ale i tak to nie działa, nadal ten sam błąd
a zmieniłem na

  1. <div class="mainprofilepage">
  2. Imie i Nazwisko: <?php echo $_SESSION["useruid"] ; ?> <br>
  3. UserID: <?php echo $_SESSION["userid"] ; ?> <br>
  4. Nazwa użytkownika: <?php echo $_SESSION["username"] ; ?> <br>
  5. Email: <?php echo $_SESSION["useremail"] ; ?> <br>
  6. </div>


Błąd jest chyba w tej funnkcji loginUser();
Jak uważasz?
Nie da się po prostu jakoś prościej tego wyświetlić? sad.gif

TO DZIAŁA :
  1. Imie i Nazwisko: <?php echo $_SESSION["useruid"] ; ?> <br>
  2. UserID: <?php echo $_SESSION["userid"] ; ?> <br>




viking
włącz pełne raportowanie błędów bo może masz wysłane nagłówki. var_dump($_SESSION) gdzieś przed echo.
marsoonn
Oj niestety nie wiem jak włączyć pełne raportowanie błędów, mógłbyś wyjaśnić?
marsoonn
Napisałem:
  1. <?php var_dump($username) ?>

Ma wartość NULL
viking
A co miałeś napisać?
marsoonn
  1. ini_set('display_errors','1');


Dodałem również to, lecz VSC nie widzi błedu,
A na stronie jest tylko wartość NULL
viking
Powtórzę się jeszcze raz var_dump($_SESSION)
dublinka
Sprawdz sobie wartosci powyciagane z bazy od razu czy istnieja a nie szukaj po calym kodzie
marsoonn
Cytat(viking @ 18.12.2020, 14:26:34 ) *
Powtórzę się jeszcze raz var_dump($_SESSION)

Takie coś się ukazało:
array(2) { ["userid"]=> int(10) ["useruid"]=> string(8) "marsoonn" }

Brak w ogóle w tej tablice username i useremail

Już sobie poradziłem, wykonuję zapytanie do db i potem przez
mysqli_query -> mysqli_num_rows -> mysqli_fetch_assoc
zwracam wartość,

Ale dzięki za pomoc wszystkim i tak !

Już sobie poradziłem, wykonuję zapytanie do db i potem przez
mysqli_query -> mysqli_num_rows -> mysqli_fetch_assoc
zwracam wartość,

Ale dzięki za pomoc wszystkim i tak !
casperii
a session_start() ? masz na początku ?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.