• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

funkcja includowania bo nie potrafię symfony :)

Object Storage Arubacloud
0 głosów
203 wizyt
pytanie zadane 9 lipca 2015 w PHP przez makoso Mądrala (7,380 p.)

co sądzicie o takim zastosowaniu przełączania stron? taki mój 'kontroler' :) 

class funkcje {

    function strona($strona){
        $x=htmlspecialchars($strona);
        $x=htmlentities($x);
        $x=str_replace(' ', "", $x);
        $l=strlen($strona);
        if($l>15)
        {$x='strona';}
        return $x;
    }

}

 

 

$funkcja    =NEW funkcje();

@include('/strona/' . $funkcja->strona($_GET['strona']) . '.php');

 

i mam też pytanie czy mogę złapac jakoś error od include bo walnałbym ifa jeżeli nie znaleziono pliku przekierować na stronę główną

 

2 odpowiedzi

+2 głosów
odpowiedź 9 lipca 2015 przez Comandeer Guru (601,590 p.)
wybrane 9 lipca 2015 przez efiku
 
Najlepsza

To nie jest klasa, więc nie rób z tego klasy. To jest po prostu funkcja.

Nazwy plików zabezpieczaj basename, bo tutaj jest więcej miejsca do popisu niż przy "XSS".

Co do błędu z nieistniejącym plikiem: sprawdzaj czy istnieje przy pomocy file_exists i dopiero wówczas includuj; w innym wypadku rzucaj błąd.

Ogólnie polecam zajrzeć tutaj: http://www.forumweb.pl/poczatkujacy-webmaster/jak-ulatwic-sobie-zycie-menu-raz-zeby-bylo-caly-czas,271

komentarz 9 lipca 2015 przez makoso Mądrala (7,380 p.)

tak jak Efik i Ty napisaliście file_exists spełniło to co chiałem co do basename nie bardzo rozumiem tutaj jego zastosowanie z tego co patrzyłem w manualu 

Dzięki Twoja odpowiedź też rozwiązałaby problem :)

komentarz 9 lipca 2015 przez efiku Szeryf (75,160 p.)

Sorry, ale to Comandeerowi się należy!

 image

+1 głos
odpowiedź 9 lipca 2015 przez efiku Szeryf (75,160 p.)

i mam też pytanie czy mogę złapac jakoś error od include bo walnałbym ifa jeżeli nie znaleziono pliku przekierować na stronę główną

$funkcja    =new funkcje();
 $strona = '/strona/' . $funkcja->strona($_GET['strona']) . '.php');
if(file_exists($strona)){
 include($strona);
} else {
  throw  itd///
}

 

komentarz 9 lipca 2015 przez makoso Mądrala (7,380 p.)
dzięki działa tak jak chciałem :) szkoda tylko że jak pracuję na localhost to muszę podać twardo scieżkę folderu -.-
ale wszystko miód malina :)

PS. zostawiłeś zamknięcie nawiasu zbędne w $strona :P

Podobne pytania

0 głosów
1 odpowiedź 300 wizyt
pytanie zadane 7 czerwca 2017 w PHP przez Michał Wołoszyn Początkujący (380 p.)
0 głosów
0 odpowiedzi 105 wizyt
pytanie zadane 1 września 2017 w HTML i CSS przez dasli Nowicjusz (190 p.)
0 głosów
2 odpowiedzi 571 wizyt
pytanie zadane 15 kwietnia 2017 w PHP przez sapero Gaduła (4,100 p.)

92,577 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...