![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 345 Pomógł: 3 Dołączył: 20.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
mam tu stronkę http://dobrepomysly.za.pl
I działy, dajmy na to dział 2. No i tematy są inludowane w sposób :
Jak to zrobic zeby nierobić tych bardzo żmudnych case x: include("blabla.html") niebardzo wiem jak to zrobic przy użyciu np. pętli while czy cos takiego. Pomóżcie |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 214 Pomógł: 0 Dołączył: 3.04.2004 Skąd: Legionowo Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 607 Pomógł: 23 Dołączył: 8.09.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
może lepiej tak ![]() Ten post edytował Spirit86 24.09.2005, 19:31:44 -------------------- Audio: Metallica, Soil, RHCP, OffSpring, Green Day, "Retro", Gorillaz, Disturbed, Coma
DB: MySQL 4.1 | php: 4.4.3 Pomogłem Ci? Wciśnij przycisk POMÓGŁ. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 135 Pomógł: 0 Dołączył: 28.09.2003 Skąd: Rzeszów Ostrzeżenie: (0%) ![]() ![]() |
Jeśli to nie tylko liczby, to możesz na przykład zrobic tablicę elementów odpowiadająch możliwością, i sprawdzać za pomocją in_array(). Jednak wygląda, że to raczej będą numerki, więc rozwiązanie zbig13'a będzie lepsze, jednak z jednym dodatkiem - filtrowaniem tego $_GET['dzial'].
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 607 Pomógł: 23 Dołączył: 8.09.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Cytat(M4chu @ 2005-09-24 19:17:20) Jeśli to nie tylko liczby, to możesz na przykład zrobic tablicę elementów odpowiadająch możliwością, i sprawdzać za pomocją in_array(). Jednak wygląda, że to raczej będą numerki, więc rozwiązanie zbig13'a będzie lepsze, jednak z jednym dodatkiem - filtrowaniem tego $_GET['dzial']. rozwiązanie zbig13 wcale nie jest lepsze. Zastanów się lepiej :] -------------------- Audio: Metallica, Soil, RHCP, OffSpring, Green Day, "Retro", Gorillaz, Disturbed, Coma
DB: MySQL 4.1 | php: 4.4.3 Pomogłem Ci? Wciśnij przycisk POMÓGŁ. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 214 Pomógł: 0 Dołączył: 3.04.2004 Skąd: Legionowo Ostrzeżenie: (0%) ![]() ![]() |
ja podsunąłem tylko propozycję jak można to zrobić krócej (zamiast switch) a z zabezpieczeniem tego kodu autor tematu powinien sobie poradzić
![]() @Spirit86 - do tego twojego kodu można zamiast (int) przed zmienną sprawdzić w warunku czy zmienna $dzial jest liczbą (funkcja is_numeric" title="Zobacz w manualu php" target="_manual). Jest to o tyle lepsze, że można kontrolować komunikat wyświetlany, gdy zmienna nie będzie miała wartości liczbowej. |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 345 Pomógł: 3 Dołączył: 20.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
razej zmienna zawsze będzie miała wartość liczbową, chodzi o te pliki html.
Jest tego dużo i dużo latwiej mi się połąpać. A nieznam sie superowo na php Cytat ja podsunąłem tylko propozycję jak można to zrobić krócej (zamiast switch) a z zabezpieczeniem tego kodu autor tematu powinien sobie poradzić biggrin.gif Niewiem co mam przez to rozumiec ![]() ![]() Ten post edytował Kreton 25.09.2005, 08:26:26 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 214 Pomógł: 0 Dołączył: 3.04.2004 Skąd: Legionowo Ostrzeżenie: (0%) ![]() ![]() |
Kod niezabezpieczony wygląda tak:
Potencjalny włamywacz może napisać cos takiego: http://twoja.strona.pl?dzial=http://strona.hakera.pl/1 i otworzył by się plik, który haknie ci stronę. Aby zabezpieczyć stronę, trzeba zrobić cos takiego:
czyli połączenie mojego kodu i kodu Spirit86 ![]() Edit: @mike_mech Racja, to z pośpiechu ![]() Ten post edytował zbig13 25.09.2005, 16:31:47 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 1 566 Pomógł: 37 Dołączył: 14.05.2003 Skąd: Kraków ![]() |
ja bym tak dał die" title="Zobacz w manualu php" target="_manual zamiast echo
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 345 Pomógł: 3 Dołączył: 20.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
Mam gorącą prośbe, mogłbyś mi bardziej dogłębnie wytłumaczyc, jak mogłby hacknnąć tą stronkę
![]() Nie chcę robić poźniej takiego błędu ![]() z góry THX ![]() |
|
|
![]()
Post
#11
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(Kreton @ 2005-09-25 12:24:39) Mam gorącą prośbe, mogłbyś mi bardziej dogłębnie wytłumaczyc, jak mogłby hacknnąć tą stronkę ![]() Chodzi o to że bez kontroli dołanczasz jakiś plik, to wcale nie musi byc plik u Ciebie na serwerze tylko u kogoś. Kotś może Ci tak dołączyć plik, w którym kasuje wszystkie foldery w bierzącej lokalizacji a to już problem, nie :?: Sprawdzenie polego na tym czy zmienna przychodząca z $_POST'a jest liczbą i czy u Ciebie na serwerze istnieje plik, który masz zamiar dołączyć (masz pewność że dołanczasz seoje pliki). Mam tylko dwa ale: 1. Do sprawdzania czy dana jest liczbe użyłbym fukncji z rozszerzenia ctype. 2. @zbig13 ma błąd w kodzie: Sprawdza istnienie pliku na poziomie (folderów) gdzie jest index.php a dołancza plik z folderu niżej. Oczywiste jest że nigy takiego pliku nie będzie. Trzeba sprawdzać czy plik istnieje w folderze niżej. |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 607 Pomógł: 23 Dołączył: 8.09.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Cytat(Ociu @ 2005-09-25 09:26:47) ja bym tak dał die" title="Zobacz w manualu php" target="_manual zamiast echo a cóż to za różnica, jeżeli i tak udaremniliśmy próbę Code Injection. Teraz to i tak nie ma znaczenia, więc można wykonywac stronę dalej. -------------------- Audio: Metallica, Soil, RHCP, OffSpring, Green Day, "Retro", Gorillaz, Disturbed, Coma
DB: MySQL 4.1 | php: 4.4.3 Pomogłem Ci? Wciśnij przycisk POMÓGŁ. |
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 345 Pomógł: 3 Dołączył: 20.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
i wyrzuca błąd Kod Parse error: syntax error, unexpected '{' in C:\Program Files\WebServ\httpd\Działy\I.Efekty\działy.php on line 31 A niemoge się tam doszukac jakiegoś błędnego nawiasu, co jest nie tak ![]() |
|
|
![]()
Post
#14
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Na samyum koncu brakuje }. Czy to tak ciezko policzyc lkiczbe otwrtych, liczbe zmaknietych i sprobowac samemu znalexc?
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 345 Pomógł: 3 Dołączył: 20.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
dla ciebie wnikliwego programisty to moze i proste, ale dla mnie.
Moze jak jakbym ci zaczoł nawalać taktyki w Warcrafcie to dla ciebie niebyło by tak oczywiste jak dla mnie. I tak nic to niedaje ... Ten post edytował Kreton 26.09.2005, 16:34:56 |
|
|
![]()
Post
#16
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Cytat(Kreton @ 2005-09-26 16:33:03) dla ciebie wnikliwego programisty to moze i proste, ale dla mnie. Moze jak jakbym ci zaczoł nawalać taktyki w Warcrafcie to dla ciebie niebyło by tak oczywiste jak dla mnie. I tak nic to niedaje ... Kolego, troszkę szacunku dla kogoś, kto próbuje Ci pomóc. I zamiast tekstów "i tak nic to nie daje" lepiej powiedz, co jest jeszcze nie tak jak powinno być, czy wywala jakiś błąd? -------------------- "Coś się kończy, coś się zaczyna." Andrzej Sapkowski
|
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 607 Pomógł: 23 Dołączył: 8.09.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Ten post edytował Spirit86 26.09.2005, 17:12:56 -------------------- Audio: Metallica, Soil, RHCP, OffSpring, Green Day, "Retro", Gorillaz, Disturbed, Coma
DB: MySQL 4.1 | php: 4.4.3 Pomogłem Ci? Wciśnij przycisk POMÓGŁ. |
|
|
![]()
Post
#18
|
|
![]() Grupa: Zarejestrowani Postów: 345 Pomógł: 3 Dołączył: 20.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
Mam bardzo duży szacunek do was, ale wy niemacie szacunku do mnie.
Bo niejestem dobrym programistą w php. Ok działa. Bardzo wam dziękuję za pomoc. Aha, i mam pytanie, jeżeli mam tn działy.php i w tym samym katalogu te pliki 1.html itd. To jak zamienić tą komendę include ![]() Ten post edytował Kreton 26.09.2005, 17:52:41 |
|
|
![]()
Post
#19
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Usuń /katalog/ z file_exists() i .....
ZACZNIJ MYŚLEĆ!!! -------------------- "Coś się kończy, coś się zaczyna." Andrzej Sapkowski
|
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 8.10.2002 Ostrzeżenie: (0%) ![]() ![]() |
wrzuc sobie do tablicy nazwy dostepnych blokow z odpowiadajaca im nazwa plikow, potem wyciganij za pomoca foreach i porownaj z getem jesli blok bedzie dostepny to incuduj plik .... mniejwiecej tak:
Ten post edytował Berni 28.09.2005, 00:17:38 -------------------- Masz zlecenie? Zapraszam programista php.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 03:17 |