ďťż

[PHP] Stworzyć stronę błędu (404) tj. adres.pl/index.php?id=strona

       

Podstrony


telcocafe

Witam.

Mam kod:
<?php $dozwolone=array('strona', '2strona', '3strona'); if (isset($_GET['id'])) $id=$_GET['id']; else $id=$dozwolone[0]; if (in_array($id,$dozwolone)) include($id.'.php');                             else include($dozwolone[0].'.php'); ?>

i np. jak wywołuję adres.pl/index.php?id=strona to pokazuje mi się strona strona.php, ale jak np. wywołam adres.pl/index.php?id=strona23 (a na serwerze nie ma pliku strona23.php) to wychodzi mi taki błąd:

Warning: include(strona23.php) [function.include]: failed to open stream: No such file or directory in /home/s/c/r/stronka/www/plik.php on line 6

Warning: include() [function.include]: Failed opening 'strona23.php' for inclusion (include_path='.:/usr/local/php5/lib/php') in /home/s/c/r/strona/www/plik.php on line 6

A ja chciałbym "zrobić taki else", żeby otwierała się strona brak.php ( a tam np. napis "brak wywoływanej strony" ).

Tam są dwa else wiec nawet nie wiem gdzie dać swoje :P proszę o pomoc i kodzik.

// Pamiętaj o przedrostkach!
// Nazwę tematu trochę jaśniej proszę.
Użytkownik _Herkules_ edytował ten post 12 maj 2006, 21:55


Jesli nie ma strony podanej w linku to ladowana jest pierwsza pozycja z $dozwolone chyba......

Raz tak, a raz wychodzi ten błąd co podałem powyżej, a ja chcę wczytać stronę brak.php wtedy...

<?php $dozwolone=array('strona', '2strona', '3strona'); if (isset($_GET['id'])) $id=$_GET['id']; else $id=$dozwolone[0]; if (in_array($id,$dozwolone)) include($id.'.php');                            else include($dozwolone[0].'.php'); ?>
chyba tak:
<?php $dozwolone=array('strona', '2strona', '3strona'); if (isset($_GET['id'])) $id=$_GET['id']; else $id=$dozwolone[0]; if (in_array($id,$dozwolone)) include($id.'.php');                            else include('brak.php'); ?>



Już to próbowałem wcześniej :) - to by było najsensowniejsze... Ale nie działa

zawsze mozna ustawic w .htaccess

Ale ja chcę to ustawić w tym skrypcie ;)

A jeżeli już to jak w tym pliku .htaccess bo go jakos nigdy nie mogłem znaleźć na ovh...

moze tak:
<?php if (isset($_GET['id'])) {  if (fileexists($_GET['id'].'.php'))   include($_GET['id'].'.php');  else   echo('strona nie istnieje!'); } else $id=$dozwolone[0]; ?>

może wartoby poczytać manuala na php.net ?

A gdzie dodać strony dozwolone w tym skrypcie co podałeś Dj_Prog ?


A gdzie dodać strony dozwolone w tym skrypcie co podałeś Dj_Prog ?


Ale ja chcę to ustawić w tym skrypcie ;)

A jeżeli już to jak w tym pliku .htaccess bo go jakos nigdy nie mogłem znaleźć na ovh...

nie mam serwera na dysku :\


nie mam serwera na dysku :\

<? if (isset($_GET['id'])) {  if (file_exists($_GET['id'].'.php')) {       include ($_GET['id'].'.php'); }    else {        include('strona_bledu.php'); } } ?>
Użytkownik Pre'side edytował ten post 12 maj 2006, 06:07

<? if (isset($_GET['id'])) {  if (file_exists($_GET['id'].'.php')) {       include ($_GET['id'].'.php'); }    else {        include('strona_bledu.php'); } } ?>


zawsze mozna ustawic w .htaccess

Sam zobacz :) :tutaj

tej a taki moze byc ? http://www.mariusz.ehost.pl/adam/ (ten co w logo)


tej a taki moze byc ? http://www.mariusz.ehost.pl/adam/ (ten co w logo)

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.