Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Edycja profilu dla zalogowanego użytkownika, Problem z prawidłowym zapytaniem
tinware
post
Post #1





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 23.08.2009
Skąd: Wołomin

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


Witam.

Mam mały problem z wykonaniem prawidłowego zapytania do bazy mysql. Chodzi o to, że dany użytkownik loguje się swoim loginem i hasłem, i chce dodać możliwość edycji jego danych (login, hasło i kilka dodatkowych, które podawał podczas rejestracji tj. imie, nazwisko, miejscowosc). Problem jest z prawidłowym wykonaniem zapytania, skrypt musi wyciągnąć dany rekord danego użytkownika z bazy przez login z bazy = login w sesji. Moim zdaniem w 4 linijce jest dosyć duży błąd, ale nie wiem jak go poprawić. zależy mi na tym, żeby inny użytkownik nie mógł edytować profilu pozostałych, tak jak bym zrobił: ?go=users_edit&login=$login
Każdy w adresie mógłby zmienić koncówke na login innego użytkownika i go edytować. Dlatego zależy mi na podpięcie tego pod sesje, aby każdy edytował tylko swój profil.


Oto kod:
  1. if ($_GET['go'] == 'users_edit') {
  2. echo "<b>Użytkownik / Edycja profilu:</b><br><br><br><br>";
  3.  
  4. $query = "SELECT * FROM Users WHERE login='$_SESSION['login']'";
  5. $wynik = mysql_query ($query);
  6. $rekord = mysql_fetch_assoc ($wynik);
  7. $nr = $rekord['nr'];
  8.  
  9. $data = $rekord['data'];
  10. $login = stripslashes( ($rekord['login']));
  11. $haslo = stripslashes( ($rekord['haslo']));
  12. $imie = stripslashes( ($rekord['imie']));
  13. $nazwisko = stripslashes( ($rekord['nazwisko']));
  14.  
  15. echo '<center>';
  16. echo '<FORM action=?go=# METHOD="POST">';
  17. echo '<INPUT TYPE="hidden" NAME="action" VALUE="popraw">';
  18. echo '<INPUT TYPE="hidden" NAME="id" VALUE="'.$nr.'"><TABLE width=390 CELLPADDING=0 CELLSPACING=10 BORDER=0>';
  19.  
  20. echo '<TR><TD align="right">Nr:</TD><TD width="300"><INPUT TYPE="text" NAME="nr" style="width: 300px" VALUE="'.$nr.'"></TD></TR>';
  21. echo '<TR><TD align="right">Login:</TD><TD width="300"><INPUT TYPE="text" NAME="login" style="width: 300px" VALUE="'.$login.'"></TD></TR>';
  22. echo '<TR><TD align="right">Hasło:</TD><TD width="300"><INPUT TYPE="text" NAME="haslo" style="width: 300px" VALUE="'.$haslo.'"></TD></TR>';
  23. echo '<TR><TD align="right">Imie:</TD><TD width="300"><INPUT TYPE="text" NAME="imie" style="width: 300px" VALUE="'.$imie.'"></TD></TR>';
  24. echo '<TR><TD align="right">Nazwisko:</TD><TD width="300"><INPUT TYPE="text" NAME="nazwisko" style="width: 300px" VALUE="'.$nazwisko.'"></TD></TR>';
  25.  
  26. echo '</TABLE>';
  27. echo '</FORM>';
  28. echo '</center>';
  29. }


Ten post edytował tinware 2.03.2011, 11:28:33
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
tinware
post
Post #2





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 23.08.2009
Skąd: Wołomin

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


  1. $query = "SELECT * FROM Users WHERE login='string($_SESSION(['login']))'";


Pojawia się
Cytat
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/a8731498/public_html/page2.php on line 361


Niewiem w jaki sposób poprzez string utworzyć to zapytanie. Mógłbym poprosić o jakieś przykłady...



Edit:
Ok działa
  1. $query = "SELECT * FROM Users WHERE login='".$_SESSION['login']."';";

Może być coś takiego?

Ten post edytował tinware 2.03.2011, 11:54:02
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: 13.10.2025 - 11:07