![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 4.01.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
produkuję serwis, w którym będą między innymi prezentowane artykuły użytkowników. Jedną z podstawowych funkcjonalności będzie możliwość edycji artykułu. Tyle wprowadzenia - teraz do celu. Po zalogowaniu na swój profil i wyborze edycji artykułu mam adres np.: http://www.jakasnazwa.pl/edycja_artykulu.php?idart=45678. Użytkownik może w pasku adresu przeglądarki zmienić idart i z dużym prawdopodobieństwem wpisać wartość odpowiadającą już zapisanemu w bazie artykułowi innego użytkownika i wtedy może go pozmieniać. Czy moglibyście podpowiedzieć jak to zabezpieczyć? Za pomoc przedszkolakowi z góry wielkie dzięki (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Po pobraniu artykułu z bazy sprawdź czy jego autor to aktualnie zalogowana osoba. Jeśli nie to zrób co uważasz (np. die('giń!')). Tyle.
Innym rozwiązaniem jest dodanie drugiego warunku do samego zapytania czyli WHERE id_artykulu = 45678 AND id_autora = X gdzie X to identyfikator aktualnie zalogowanego użytkownika. |
|
|
![]()
Post
#3
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Ja najczęściej robię tak:
1) User ma prawa admina/moda -> zapytanie jest z WHERE id = id_artykulu 2) user to szarak: -> zapytanie jest z WHERE id = id_artykulu AND owner_id = id_usera (najczęściej z sesji) Zawsze to ciutkę mniej rzeczy do przesłania między bazą i skryptem. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 123 Pomógł: 32 Dołączył: 9.09.2010 Skąd: Brzeg Ostrzeżenie: (0%) ![]() ![]() |
Dodam, żeby dodać w PHP sprawdzanie czy idart jest liczbą (IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#5
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 4.01.2011 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki wielkie za pomoc. Działa (IMG:style_emoticons/default/biggrin.gif)
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 690 Pomógł: 92 Dołączył: 6.02.2011 Ostrzeżenie: (0%) ![]() ![]() |
A nie łatwiej przeprowadzić rzutowanie?
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 27.09.2025 - 16:55 |