Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z funkcja GET
lexis72
post
Post #1





Grupa: Zarejestrowani
Postów: 124
Pomógł: 0
Dołączył: 25.02.2013

Ostrzeżenie: (0%)
-----


Witam,
Czy funkcja GET ktora pobiera z adresu konkretna tresc dziala tylko dla liczb? Mam zrobiona strone ktora na tej zasadzie wyswietla mi wlasnie rozne podstrony korzystajac z strona_id=NUMER i teraz chcialem utworzyc podobna ale zeby wyswietlalo dla nazw. Zrobilem wszystko na tej samej zasadzie w pasku mam teraz strona_nazwa=NAZWA i pobiera mi z mysql tresc dla wybranej nazwy a nie id strony z tym ze dziala mi to tylko gdy w nazwie dam jakas liczbe np wyswietli poprawie jak zrobie podstrone o nazwe 1 i wtedy w pasku bedzie strona_nazwa=1 ale jesli nazwe dam np warszawa to juz nie pokaze mi tej tresci dla strona_nazwa=warszawa.
Czy to ja cos zle robie czy po prostu ta funkcja dziala tylko dla liczb?
Go to the top of the page
+Quote Post
Turson
post
Post #2





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Coś źle robisz, bo to działa zarówno dla liczb całkowitych jak i łancuchów znaków.
Poczytaj o SQL Injection, bo Twój kod jest podatny.

Poza tym zły dział

Ten post edytował Turson 27.11.2013, 12:50:31
Go to the top of the page
+Quote Post
nospor
post
Post #3





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Na 99,99% masz blad zapytania wynikajacy z tego, ze wartosci tekstowej w zapytaniu nie wstawiles w apostrof.

Jak wyswietlac bledy zapytan masz napisane tu:
Temat: Jak poprawnie zada pytanie

ps: przenosze na przedszkole
Go to the top of the page
+Quote Post
lexis72
post
Post #4





Grupa: Zarejestrowani
Postów: 124
Pomógł: 0
Dołączył: 25.02.2013

Ostrzeżenie: (0%)
-----


Nie wiem czemu nie dziala, kod jest bardzo prosty:

  1. if (isset($_GET['strona_nazwa']) && isnum($_GET['strona_nazwa']))


I nizej wstawiam zwykle zapytanie do bazy mysql ktore wyswietla tresc dla warunku WHERE strona_nazwa='".$_GET['strona_nazwa']."'

I jesli w bazie nazwa strony to liczba np 1 to po wpisaniu adresu strona.php?strona_nazwa=1 wszystko wyswietla sie poprawnie.
A jesli w bazie nazwa strony bedzie zawierac litere np 1abc to po wpisaniu adresu strona.php?strona_nazwa=1abc juz sie tresc nie pojawi, zaden blad sie nie wyswietla jest po prostu pusta strona.
Go to the top of the page
+Quote Post
Turson
post
Post #5





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Przecież 1abc nie jest liczbą
Go to the top of the page
+Quote Post
lexis72
post
Post #6





Grupa: Zarejestrowani
Postów: 124
Pomógł: 0
Dołączył: 25.02.2013

Ostrzeżenie: (0%)
-----


No nie jest ale napisales ze
Cytat
to działa zarówno dla liczb całkowitych jak i łancuchów znaków.
Go to the top of the page
+Quote Post
Turson
post
Post #7





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


"Sprawdzasz" (function.isnum doesn't exist) czy 1abc jest liczbą numeryczną to jak ma spełnić warunek.
Zainteresuj się PDO
Go to the top of the page
+Quote Post
lexis72
post
Post #8





Grupa: Zarejestrowani
Postów: 124
Pomógł: 0
Dołączył: 25.02.2013

Ostrzeżenie: (0%)
-----


Faktycznie usunelem to i teraz dziala (IMG:style_emoticons/default/smile.gif)
Sorry tak to jest jak uczy sie na gotowcach potem nie wiesz co dany element tak naprawde oznacza (IMG:style_emoticons/default/wink.gif)
Przepraszam za zajecie czasu.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 07:13