Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Zatrzymanie dalszego wykonywania skryptu
Forum PHP.pl > Forum > Przedszkole
RooFi07
Witajcie, jak przerwać dalsze wykonywanie skryptu?
kamil4u
exit
RooFi07
to wyłącza mi cały skrypt, a ja chce żeby był widoczny, ale nie wykonywał się dalej.

Może dodam trochę kodu. Programuje na framework'u.

  1. class Settings extends CI_Controller {
  2.  
  3. function __construct()
  4. {
  5. parent::__construct();
  6. $this->is_logged_in();
  7. }
  8.  
  9. function index()
  10. {
  11. tutaj treść nieważne.. }
  12.  
  13. function is_logged_in()
  14. {
  15. if($level == 0)
  16. {
  17. $info = false;
  18. $error = 'Nie masz dostępu do tej części strony! Skontaktuj się z właścicielem serwisu!';
  19.  
  20. $data = array(
  21. 'info' => $info,
  22. 'error' => $error
  23. );
  24.  
  25. $this->load->view('info_view', $data);
  26.  
  27. }
  28. }
  29. }
toaspzoo
Jak może być 'widoczny' ?

Czy my w ogóle mówimy o php ?
RooFi07
Wyżej dodałem kod, tak widoczna część w przeglądarce się nie ukazuje.
markonix
Jeżeli ktoś nie ma dostępu do danej akcji przekieruj go do odpowiedniej podstrony ze stałym błędem, a np. jeżeli nie jest zalogowany do strony z logowaniem.
RooFi07
Tak chcę zrobić w ostateczności, ale nieraz już chciałem zrobić coś takiego, żeby zatrzymać skrypt. Więc nie bardzo się da, tak?
markonix
Ostatecznością nazwałabym owe zatrzymywanie skryptu cokolwiek przez to rozumiesz bo jakbyś nie zauważył nikt nie rozumie o czym Ty mówisz.
irmidjusz
Cytat(RooFi07 @ 6.08.2012, 20:24:56 ) *
to wyłącza mi cały skrypt, a ja chce żeby był widoczny, ale nie wykonywał się dalej.


Tobie chodzi o to, żeby po stwierdzeniu, że użytkownik nie jest zalogowany (czy cokolwiek), przestała się wykonywać pozostała część kodu, która wykonałaby się, gdyby mogła. To można osiągnąć odpowiednio zaprojektowaną architekturą aplikacji. Ale w tym przypadku jaki przedstawiasz, prawdop. pozostaje Ci tylko rzucić specjalny wyjątek zamiast tego exit i złapać go gdzieś daleko, bez wyświetlania komunikatu, żeby np. wysłać do przeglądarki dotychczas zbuforowany HTML, domknąć tagi html czy cokolwiek tam trzeba zrobić, żeby się strona pokazała z dotychczas wygenerowaną treścią (nie znam tego fw, to code igniter?).
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.