![]() |
![]() |
![]()
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 ![]() |
|
|
![]()
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; -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 217 Pomógł: 8 Dołączył: 8.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ok dzięki za pomoc
![]() A o SQL Injection to już wiem ![]() -------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 07:55 |