Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Adam Ježek
Tvůrce
Avatar
Adam Ježek:14.1.2015 20:54

Zdarte,
na stránkách mám vkládání stránek do šablony s menu, patičkou a dalšíma blbninkama a když stránka kterou chci vložit neexistuje, tak jsem to zkoušel přes

$vlozeno = include('podstranky/' . $stranka . '.php');
if(!$vlozeno)
{
    include('podstranky/err404.php');
}

podle vzoru zde na síti v tutoriálech. Pokud stránka neexistuje, tak se vloží err404.php, ale vypíšou se i chyby.
Jak to udělat, aby k přesměrování na 404 došlo, ale php nevypsalo ty chyby?
Díky

Odpovědět
14.1.2015 20:54
Počkej chvíli, poradím se s křišťálovou koulí.
Avatar
Odpovídá na Adam Ježek
Matúš Petrofčík:14.1.2015 21:00

napríklad priamo v PHP vypneš vypisovanie chýb

// nastavenie chýb
error_reporting(E_ALL);
ini_set("display_errors", 1); // 1 = zapnuté, 0 = vypnuté

ale dá sa to aj v .htaccess

http://php.net/…eporting.php
http://php.net/….ini-set.php

edit: alebo najprv skontroluješ či existuje súbor ktorý chceš includovať, a ak neexistuje tak presmeruješ/in­cludneš chybovú stránku

Editováno 14.1.2015 21:02
Nahoru Odpovědět
14.1.2015 21:00
obsah kocky = r^2 ... a preto vlak drnká
Avatar
Odpovídá na Adam Ježek
Martin Konečný (pavelco1998):14.1.2015 21:00
$soubor = "podstranky/{$stranka}.php";
if (!file_exists($soubor)) {
  header("location: pryč");
  exit;
}

include $soubor;
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
14.1.2015 21:00
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Avatar
Adam Ježek
Tvůrce
Avatar
Odpovídá na Matúš Petrofčík
Adam Ježek:14.1.2015 21:03

vypnutí chyb se chci vyhnout, to mi nepříde jako ideální

Nahoru Odpovědět
14.1.2015 21:03
Počkej chvíli, poradím se s křišťálovou koulí.
Avatar
Adam Ježek
Tvůrce
Avatar
Odpovídá na Martin Konečný (pavelco1998)
Adam Ježek:14.1.2015 21:04

Díky. Něco jako toto jsem potřeboval.¨

if(file_exists($stranka))
{
   $vlozeno = include($stranka);
   if(!$vlozeno)
   {
       include('podstranky/err404.php');
   }
}
else
  include('podstranky/err404.php');
Nahoru Odpovědět
14.1.2015 21:04
Počkej chvíli, poradím se s křišťálovou koulí.
Avatar
Odpovídá na Adam Ježek
Matúš Petrofčík:14.1.2015 21:05

Aj tak na produkcii by si mal mať vypisovanie chýb vypnuté. Nikdy nevieš kedy nastane dáka chyba, ktorá odhalí nejaké citlivé údaje: štruktúra zložiek, heslo do databázy, ...

Nahoru Odpovědět
14.1.2015 21:05
obsah kocky = r^2 ... a preto vlak drnká
Avatar
Adam Ježek
Tvůrce
Avatar
Odpovídá na Matúš Petrofčík
Adam Ježek:14.1.2015 21:05

Tak na serveru sou chyby vypnuté, ale na localhostu jsou zaplý a příde mi lepší to dotáhnout do podoby, kdy chyby nejsou

Editováno 14.1.2015 21:07
Nahoru Odpovědět
14.1.2015 21:05
Počkej chvíli, poradím se s křišťálovou koulí.
Avatar
Odpovídá na Adam Ježek
Matúš Petrofčík:14.1.2015 21:07

Ešte si to môžeš zjednodušiť, či chceš mať 1000% istotu? :D

if(file_exists($stranka))
   include($stranka);
else
   include('podstranky/err404.php');
Nahoru Odpovědět
14.1.2015 21:07
obsah kocky = r^2 ... a preto vlak drnká
Avatar
Adam Ježek
Tvůrce
Avatar
Odpovídá na Matúš Petrofčík
Adam Ježek:14.1.2015 21:07

radší ta jistota, náhoda je blbec :D

Nahoru Odpovědět
14.1.2015 21:07
Počkej chvíli, poradím se s křišťálovou koulí.
Avatar
alfonz
Člen
Avatar
alfonz:14.1.2015 22:33

Ještě bych ti tam doporučil přidat toto pokud ta podstránka neexistuje. http_response_co­de(404);

Nahoru Odpovědět
14.1.2015 22:33
lmao
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 10.