![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 1 Dołączył: 23.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam problem i dość długo się z nim męczę. Mam adres strony adres.pl/1,1-Wydarzenia sa tam 2 zmienne, pierwsza z cyfr to numer kategorii a druga to cyfra do stronicowania, obie pobierane za pomocą GET Jeśli zmienię adres na adres.pl/'1,1-Wydarzenia nic szczególnego sie nie dzieje, po prost nie wyświetlają się artykuły z tej kategorii jeśli zaś do adresu dodam apostrof w innym miejscu, i tylko w tym adres.pl/1,'1-Wydarzenia wyświetla mi się błąd: Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in D:\WebServ\httpd\adres.pl\kategoria_91.php on line 32 Nie chciałbym aby taki błąd się wyświetlał, co moge na to poradzić? Z góry dzięki za pomoc Dodam jeszcze że tej zmiennej przy której wywala się błąd ($str) używam do takiego zapytania: $limit = 18; $limit2 = ($str*$limit-$limit); $lista = mysql_query("SELECT * FROM artykul WHERE kategoria = '$kat' ORDER BY data_66 DESC LIMIT $limit2, $limit"); Ten post edytował banki 21.12.2013, 19:20:10 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 1 Dołączył: 23.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Próbowałem już użyć addslashes() ale nie działa to jeśli ktoś dopisze do paska adresu ten apostrof, no chyba że źle tej funkcji używałem. Gdzie jej użyć? Przy pobieranej zmiennej GET?
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
Sprawdzaj czy zmienna z $_GET jest liczbą całkowitą, rzutuj a najlepiej zainteresuj się PDO
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 350 Pomógł: 31 Dołączył: 23.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli wiesz, że dane MUSZĄ być wartościami liczbowymi to zrób tzn. rzutowanie - ktoś kto wpiszę inną wartość niż cyfra to wówczas $kat/$strona zwróci Ci zero. Poza tym już na etapie budowania regułek w .htaccess możesz zdefiniować jakie znaki mogą wejść na wejście - http://sf.jogger.pl/2007/05/02/mod-rewrite-w-przykladach/ |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 352 Pomógł: 59 Dołączył: 16.01.2013 Ostrzeżenie: (0%) ![]() ![]() |
a nie przypadkiem (int) ?
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 1 Dołączył: 23.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
dzięki wujek, troche mi to pomogło, zrobiłem coś takiego i apostrofy w pasku adresu nie sa raczej straszne
$kat = mysql_escape_string($_GET["kat"]); $str = (integer)($_GET["str"]); if($str<="0") { $str="1"; } gdy integer dawało wynik 0 to tez byl blad, ale if pomogło ![]() myślicie ze to dobre rozwiązanie? adresy plików php dalej są ukryte Ten post edytował banki 22.12.2013, 01:49:22 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 2 355 Pomógł: 533 Dołączył: 15.01.2010 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Nie.
Używaj PDO lub MySQLi |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.06.2025 - 06:37 |