![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 217 Pomógł: 8 Dołączył: 8.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam skrypt, który po wpisaniu w przeglądarce index.php?s=1 wyświetla rekord o id 1, ale jeśli wpiszę np. index.php?s=costam, to powinien wyskoczyć komunikat o tym, że taka strona nie istnieje, ale niestety ten komunikat wyświetla się tylko jak wpisujemy liczby, a nie litery:
A więc jak zrobić, aby wyświetlał się komunikat gdy zamian liczb, wpiszemy jakieś litery? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 10 Dołączył: 30.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Po prostu sprawdź co masz w zmiennej $id przed wykonaniem zapytania (a najlepiej przed połączeniem się z bazą danych). Jeśli $id nie przechowuje dodatniej liczby całkowitej większej od 0 to wyświetlasz komunikat o błędzie 404.
Np:
I tak zawsze powinieneś sprawdzać wartość zmiennych przed użyciem ich w zapytaniu. To bardzo ważne - poczytaj o SQL Injection. Zawsze zakładaj że użytkownik ma złe zamiary (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#3
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
W przypadku wkładania liczb do zapytań wystarczy rzutować je na liczbę i już. Nie widzę sensu jakiegoś większego kombinowania a już na pewno nie w tym omawianym tu przypadku
$id = (int)$id; |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 217 Pomógł: 8 Dołączył: 8.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ok dzięki za pomoc (IMG:style_emoticons/default/smile.gif)
A o SQL Injection to już wiem (IMG:style_emoticons/default/smile.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.09.2025 - 22:41 |