![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 24.05.2004 Skąd: krakow Ostrzeżenie: (10%) ![]() ![]() |
mam taki kod:
ale niestety jesli polecenie systemowe nie wykona sie poprawnie, na ekran nie zostaje wypisany error. Jak to zmodyfikowac aby zobaczyc komunikat o bledzie? -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 31.07.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Powinieneś użyć funkcji passthru która zwraca cały output z wykonanego polecenia systemowego a nie tylko ostatnią linie.
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 24.05.2004 Skąd: krakow Ostrzeżenie: (10%) ![]() ![]() |
zrobilem tak:
i jest blad w lini z foreach ze zly argument. Natomiast w $output1 zwraca "0" gdy polecenie sie wykona poprawnie a gdy nie to np zwraca "4". Nie zwraca mi calego komunikatu bledu ![]() -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Manual
Cytat If the return_var argument is present, the return status of the Unix command will be placed here Czyli dziala tak jak ma dzialac: zwraca ci 0, 4 itd., co nie jest tablica (foreach()) Passthru nie zwraca zadnego komunikatu od polecenia -- on go wypisuje, jak chcesz go wrzucic do zmiennej to uzyj tego skryptu (z manuala):
-------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 31.07.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Ach...
Jeżeli podasz nazwę zmiennej w passthru to output zapisany w tejże zmiennej nie będzie tablicą tylko po prostu outputem z polecenia. Nie będziesz mógł zatem użyć foreach, tylko jakoś przeparsować wynik polecenia. Zaraz postaram się to sprawdzić o ile uda mi się włączyć 2 komp. Passthru zwraca bezpośrednio output - zapomniało mi się - ale w ten sposób jaki przedstawił dr bonzo masz sobie cały output w jednej zmiennej i możesz z tym zrobić niemalże prawie wszystko ![]() Ten post edytował hombrerro 4.06.2005, 14:24:02 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 24.05.2004 Skąd: krakow Ostrzeżenie: (10%) ![]() ![]() |
dzieki za podpowiedzi, ale jak na razie nie udalo mi sie uzyskac wyswietlenia bledu na ekranie przegladarki. Podpowiedzcie jesli wiecie, skoro passthru zwraca int, czyli 0, 4 itd to rozumiem ze zwrocone 0 oznacza wykonanie sie komendy unixowej ,natomiast kazda inna cyfra oznacza nie wykonanie sie jej? Czy tez nie do konca tak jest?
-------------------- |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 31.07.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Sprawdz manual php online w komentarzach masz cos takiego np:
The documention does not mention that passthru() will only display standard output and not standard error. If you are running a script you can pipe the STDERR to STDOUT by doing exec 2>&1 Eg. the script below will actually print something with the passthru() function... #!/bin/sh exec 2>&1 ulimit -t 60 cat nosuchfile.txt |
|
|
![]()
Post
#8
|
|
![]() Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz ![]() |
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 24.05.2004 Skąd: krakow Ostrzeżenie: (10%) ![]() ![]() |
Cytat(hwao @ 2005-06-04 18:35:05) nie, tak nie działa. Wydawać by się mogło, że to proste, wyświetlić komunikat błędu w przeglądarce. ![]() dotychczas mam taki kod:
Czy potrafi ktoś go zmodyfikować tak bym otrzymał treść błędu?? -------------------- |
|
|
![]()
Post
#10
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 224 Pomógł: 40 Dołączył: 6.07.2004 Skąd: Wuppertal Ostrzeżenie: (0%) ![]() ![]() |
moze tak ? no bo w sumie: Execute an external program and display raw output. |
|
|
![]()
Post
#11
|
|
![]() Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
zrobię tzw. UP postu
Lepiej tak jak pisał ~hombrerro
Wszytskie linie w tablicy, co jest przydatne -------------------- To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness; chaotic, confused, vulnerability, to inform yourself. Think for yourself. Question authority. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 7.07.2025 - 15:38 |