• 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 :)

VPS Starter Arubacloud
0 głosów
193 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 (599,730 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ź 291 wizyt
pytanie zadane 7 czerwca 2017 w PHP przez Michał Wołoszyn Początkujący (380 p.)
0 głosów
0 odpowiedzi 102 wizyt
pytanie zadane 1 września 2017 w HTML i CSS przez dasli Nowicjusz (190 p.)
0 głosów
2 odpowiedzi 550 wizyt
pytanie zadane 15 kwietnia 2017 w PHP przez sapero Gaduła (4,100 p.)

92,451 zapytań

141,261 odpowiedzi

319,073 komentarzy

61,853 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

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 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!

...