![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 20.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Mam sobie skrypcik na dodawanie newsów do bazy (tylko dla zalogowanego na admina - sesja PHP). Składa się on z trzech plików:
- admin.php - plik w którym jest formularz na dodawanie newsa i inne bajery - functions.js - funkcje JS, jQuery - sendmessage.php - skrypt PHP na wysyłanie zapyań do bazy odpalany przez AJAXA Czyli no wypełniam sobie formularz, klikam dodaj, odpala sie funkcja JS, mała walidacja i jeśli wszystko ok to ajaxem wysyła zapytania do pliku sendmessage.php Ale jak to zabezpieczyć. Użytkownik może przecież podpatrzeć mój kod JS w podglądzie strony i wywołać ręcznie funkcje tak żeby przeszła pierwsze dwa ify. Kod wygląda tak: Kod function sendNews() { var titleV = document.newspanel.title.value; var contentV = document.newspanel.content.value; if(titleV.length < 3) { $("div#result").css({"color":"#D50000", "font-weight":"bold"}); document.getElementById("result").innerHTML = "Tytuł newsa musi zawierać od 3 do 58 znaków."; } else if(contentV.length < 1) { $("div#result").css({"color":"#D50000", "font-weight":"bold"}); document.getElementById("result").innerHTML = "Próbujesz wysłać pustą wiadomość."; } //..... Może przecież w Google Chrome otworzyć stronę, edytować treść jako HTML, dodać formularz, wpisać odpowiednie dane i wpisać adres Kod java script:sendNews(); // to forum oddziela 'java' od 'script' - w tym wypadku te dwa wyrazy mają być połączone;d No nie? Chyba że się myle i się tak nie da.To jest jedno. Ale jak zabezpieczyć sam plik sendmessage.php? Zawartość pliku to łączenie z bazą, wysłanie zapytania i zamknięcie bazy. Równie dobrze ktoś sobie może zrobić własny skrypt i wysłać postem informacje do mojego skryptu (ofc nie zna nazwy pól, no ale....). No więc jak to skutecznie zabezpieczyć? Ten post edytował Kuba707 4.02.2011, 11:40:26 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 41 Dołączył: 6.04.2009 Skąd: Gdańsk/okolice Ostrzeżenie: (0%) ![]() ![]() |
zawsze musisz mieć walidacje danych wejściowych po stronie serwera.
w JS możesz zrobić coś co ładnie wygląda, jest funkcjonalne itp, ale nie możesz na tym tylko polegać. skoro masz admina, to przy dodawaniu newsa po prostu sprawdzaj, czy użytkownik jest zalogowany jako admin. jak nie, podziękuj grzecznie i nie dodawaj nic. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 11:13 |