Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Funkcja error
bne
post
Post #1





Grupa: Zarejestrowani
Postów: 83
Pomógł: 1
Dołączył: 18.10.2006

Ostrzeżenie: (0%)
-----


Witam, chciałbym stworzyć funkcje error, która wywalać będzie błąd na całej stronie i nie będzie przetwarzać jej dalej ale też nie będzie zwracać wcześniejszej zawartości...

prosty przykład :
plik index.php...
  1. <?php
  2. echo 'jakas tam zawartosc strony';
  3.  
  4. if($a=1) {
  5. error("error");
  6. }
  7. ?>

jeśli $a=1 wyskoczy error, aby dalej nie przetwarzało strony wystarczy exit; ale jak pozbyć się wcześniejszej zawartości strony?

Wcześniej korzystałem z funkcji powiązanej z smarty, niestety przy kodzie bez smarty jest bezużyteczne...
Lecz jeśli komuś to może podsunąć rozwiązanie to podaje niżej:
  1. <?php
  2. function error($text) {
  3.  
  4. global $smarty;
  5. global $db;
  6. global $start_time;
  7. global $player;
  8.  
  9. if (!ereg("<a href",$text)) {
  10. $text = $text." (<a href="".$_SERVER['PHP_SELF']."">Wróć</a>)";
  11. }
  12. $smarty->assign("Message", $text);
  13. $smarty->display('error.tpl');
  14. require_once("includes/foot.php");
  15. }
  16. ?>

Pozdrawiam
bne
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Cysiaczek
post
Post #2





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Cytat
ale jak pozbyć się wcześniejszej zawartości strony?


Właśne tak. Strone zaczynasz od ob_start(); i jeśli jest error, to przed wywołaniem exit() wywołujesz ob_end_clean(). Czyli wszystko, co zostało do tej pory zbuforowane zostanie usunięte i się nie wyświetli.

Przykład:
  1. <?php
  2. $test=1;
  3.  
  4. print "cos";
  5. if ($test==1){
  6. print 'error';
  7. exit();
  8. }
  9. print "cos jeszcze";
  10. }
  11. ?>


Pozdrawiam.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.12.2025 - 15:03