Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> problem z zatrzymywaniem skryptu
Ive
post 17.04.2004, 21:17:19
Post #1





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

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


mam problem z zatrzymywaniem skryptu w razie błędu poprzez wywołanie die() no wiec srawa wygląda tak. w config.inc.php zapiosałem sobie funkcje down() która jest odpowiedzialna za wyświetlenie menu i reszty strony po wczytaniu textu. no to w razie błędu wywołuje to za pomocą:[php:1:4411a7b292]<?php
if($jakis_tam_blad) die("tresc komunikatu".down());
?>[/php:1:4411a7b292]
no i teraz zachodzi mi pewna dziwna sprawa
ponieważ najpierw jest wywoływana funkcja down() a dopiero potem idzie komunikat. co może być tego przyczyną? bardzo proszę o szybką odpowiedź!
pozdrawiam, Ive
Go to the top of the page
+Quote Post
Bags_Bunny
post 17.04.2004, 21:31:40
Post #2





Grupa: Zarejestrowani
Postów: 262
Pomógł: 39
Dołączył: 12.04.2004

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


funkcja down() musialaby zwracac (return) a nie wypisywac (echo/print) mozesz zrobic:
[php:1:536da4e265]<?php
if($jakis_tam_blad) {
echo 'tresc komunikatu';
down();
exit;
}
?>[/php:1:536da4e265]


--------------------
rm -rf /*
Go to the top of the page
+Quote Post
Ive
post 17.04.2004, 23:14:21
Post #3





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

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


heh ale korzystając z twojego sposobu to musiałbym przerabiać każdy die w kodzi a jest tego na prawde dużo :/ a funkcja down() nie zwrqaca mi echo ani print tylko:
[php:1:bec89eed20]<?php
function down() {
global $smarty;

$smarty->display("lay/po_tresc.inc.htm");
$smarty->display("lay/navigation.inc.htm");
$smarty->display("lay/rightmenu.inc.htm");
$smarty->display("lay/down.inc.htm");

ob_end_flush();

}
?>[/php:1:bec89eed20]
[tak duzo plików wczytuje bo musze jeszcze dorobić dynamiczne menu - to tak jakby się ktoś dziwił ;] ]
Go to the top of the page
+Quote Post
FiDO
post 17.04.2004, 23:36:43
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Wiec zdefiniuj swoja funkcje die():
[php:1:47ab4c876f]<?php

function koniec($str)
{
echo $str;
down();
}

?>[/php:1:47ab4c876f]
i zamien wszystkie wywolania die() na koniec() - w wieksosci edytorow bedzie to trywialne i szybkie.


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
Bags_Bunny
post 17.04.2004, 23:49:41
Post #5





Grupa: Zarejestrowani
Postów: 262
Pomógł: 39
Dołączył: 12.04.2004

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


sprobuj tak:
[php:1:24f640e370]<?php
function down() {
global $smarty;
ob_start();
$smarty->display("lay/po_tresc.inc.htm");
$smarty->display("lay/navigation.inc.htm");
$smarty->display("lay/rightmenu.inc.htm");
$smarty->display("lay/down.inc.htm");
$content = ob_get_contens();
ob_end_clean();
ob_end_flush();
return $content;
}
?>[/php:1:24f640e370]
tylko nie wiem czy sie moj bufor z twoim nie pogryzie winksmiley.jpg


--------------------
rm -rf /*
Go to the top of the page
+Quote Post
scanner
post 18.04.2004, 08:26:29
Post #6





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Używając Smarty, można skorzystać z innej metody:[php:1:d6aa17cb43]<?php
function down()
{
global $smarty;

$content = $smarty->fetch("lay/po_tresc.inc.htm");
$content = $smarty->fetch("lay/navigation.inc.htm");
$content = $smarty->fetch("lay/rightmenu.inc.htm");
$content = $smarty->fetch("lay/down.inc.htm");

return $content;
}
?>[/php:1:d6aa17cb43]


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
FiDO
post 18.04.2004, 18:01:30
Post #7





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Jak juz to:
[php:1:f3621265fb]<?php
function down()
{
global $smarty;

$content = $smarty->fetch("lay/po_tresc.inc.htm");
$content .= $smarty->fetch("lay/navigation.inc.htm");
$content .= $smarty->fetch("lay/rightmenu.inc.htm");
$content .= $smarty->fetch("lay/down.inc.htm");

return $content;
}
?>[/php:1:f3621265fb]
winksmiley.jpg


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
Ive
post 18.04.2004, 18:09:08
Post #8





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

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


dzięki! działa tylko nie wiem czemu na tym $smarty->fetch nie działa ale zmieniłem na display i jest ok ;]

[EDIT]
heh... zapędziłem się :/ nadal na pierwszym miejscu jest wywoływane $smarty a dopiero potem komunikat :/
Go to the top of the page
+Quote Post
FiDO
post 18.04.2004, 18:18:04
Post #9





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Jak chcesz zeby smmarty bylo pozniej to musi byc fetch, co Ci z nim nie dziala ?


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
Ive
post 18.04.2004, 18:34:47
Post #10





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

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


Dobra jest! ;] już zrobiłem to wykorzystując metodę FiDO z funkcją koniec ;] już jest poprawnie zwrazany błąd biggrin.gif a $smarty->fetch nic mi nie zwracał wogóle :/ po prostu kończyła się strona i tyle :/ ale problem rozwiązany jest i tak ;] Dziękuje wszystkim ;]
Go to the top of the page
+Quote Post
FiDO
post 18.04.2004, 18:59:58
Post #11





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Dosc dziwne, ze fetch Ci nic nie zwracal, skoro metoda display wewnatrz Smarty odwoluje sie wlasnie do fetch...


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
Ive
post 18.04.2004, 19:02:05
Post #12





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

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


hm... w smartach jest na poziomie very basic więc raczej o tym z tobą nie pogadam ale tak właśnie było biggrin.gif

[EDIT]
kod brałem z waszych postów [nic w nim nie zmieniałem]
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 08:53