Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] funckaj exit
Forum PHP.pl > Forum > Przedszkole
mateuszpi
Witam
fragment kodu:
  1. <?php
  2. function myError($errno, $errstr, $errfile, $errline)
  3. {
  4. switch ($errno) {
  5. case E_USER_ERROR:
  6. echo "<b>My ERROR111</b> [$errno] $errstr<br />\n";
  7. echo " Fatal error on line $errline in file $errfile";
  8. echo ", PHP " . PHP_VERSION . " (" . PHP_OS . ")<br />\n";
  9. echo "Aborting...<br />\n";
  10. exit(1);
  11. break;
  12.  
  13. case E_USER_WARNING:
  14. echo "<b>My WARNING</b> [$errno] $errstr<br />\n";
  15. break;
  16.  
  17. case E_USER_NOTICE:
  18. //echo "<b>My NOTICE</b> [$errno] $errstr<br />\n";
  19. echo "<b>$errstr</b><br />\n";
  20. break;
  21.  
  22. case E_USER_INFO_OK:
  23. echo "<b>operacje wykonano poprawnie</b> $errstr<br />\n";
  24.  
  25. include('footer.php');
  26.  
  27. break;
  28. /*
  29. default:
  30. echo "Unknown error type: [$errno] $errstr<br />\n";
  31. break;
  32. */
  33. }
  34.  
  35. /* Don't execute PHP internal error handler */
  36. return true;
  37. }
  38.  
  39. $old_error_handler = set_error_handler("myError");
  40. ?>

głónie chodzi o fragment z E_USER_INFO_OK
jest tam funkcja exit. jak wiadomo również dla mnie kończy ona wykonywanie skryptu. jednak ja chciałbym aby kończyło tylko wykonywanie pliku w którym jest umieszczony. czyli jak strona skłąda się z 3 plików (nagłówek, strona właściwa, stopka) czyli ma to działna głwek wyświetla. potek funckaj błedu w cześci ogólnej i stopka. użycie funckji exit blokuje wyświetlanie stopki. wpadłem na pomysłaby jak widać w kodzie powyżej tam dodać include pliku stopki. jednak wtedy mam błąd:

Fatal error: Call to a member function display() on a non-object in c:\usr\krasnal\www\praca\footer.php on line 8

błędny jest fragment:
  1. <?php
  2.  
  3.  
  4.  
  5.  
  6. $smarty->display('footer.tpl'); //linijka 8 wymieniona w błędzie
  7. ?>


czy możecie poradzić jak wymusić aby jednak ta stopka się pojawiała a blokowana byłą tylko cześć "środkowa strony" (plik w którym jest faktycznie użyta funkcja błędu)

pozdrawiam
mateusz
Crozin
A nie można by zrobić najzwyklejszego if'a w stylu
  1. <?php
  2. if($zablokuj <> true){
  3. //wyswietlasz
  4. }
  5. ?>
A w przypadku błędu zmieniasz wartość $zablokuj na true
isso
a spróbuj wciagnąć klasę smarty do footer.php smile.gif, chociaż samo zbalokowanie jak kolega wyżej napisał wydaje mi się lepsze smile.gif
mateuszpi
Crozin nie rozumiem. gdzie wsadzić tego if do funkcji z błędami czy do stopki questionmark.gif i jaka jego treść questionmark.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.