Autor Zpráva
Koumal
Profil *
Zdravím
poprvé zkouším exec()
Mám jeden takový program pro prostředí Windows a při spuštění z php to má vygenerovat výpis s čísly. Samostatně z příkazového řádku to funguje ale když to spouštím z php tak to nejde.

$path="localhost/SERVER_TOOLS/sweph";
$command = "$path/swetest";
exec($command, $outf, $return);


A spouštím to odtud:
http://localhost/astro/swiss.php

Nevíte čím to může být? Nemám třeba něco nastavit v php.ini?
DoubleThink
Profil *
Cituji z php.net:

Return Values
The last line from the result of the command. If you need to execute a command and have all the data from the command passed directly back without any interference, use the passthru() function.
Koumal
Profil *
Nerozumím ti. Když použiju
passthru($command, $result);
die($result);

Tak se nic neděje.

Nesouvisí s tím toto?
If you have chrooted apache and php, you will also want to put /bin/sh into the chrooted environment. Otherwise, the exec() or passthru() will not function properly, and will produce error code 127, file not found.

Nemá se to spouštět jako
swetest

místo
$path/swetest

?
Koumal
Profil *
Už to mám:
$path="P:\\server\\SERVER_TOOLS\\sweph";

Systém pracuje s obrácenými lomítky. To jsem si neuvědomil. Takže přes localhost to ani nemohu spouštět!

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: