Sziasztok!
A következő problémára keresek megoldást, ha valaki tud segíteni, köszönöm:
PHP-ből indítok proc_open()-nel egy LYNX-et, és a -cmd_script= paraméterben megadom a lynx-nek, hogy mit csináljon (mint egy makró). A gond azonban az, hogy nem hajtja végre a makróban lévő utasításokat.
Ha simán parancssorból futtatom, tökéletesen megy. Elképzelhető, hogy a terminál típusa miatt nem működik? Hogyan oldható meg a dolog?
- 1105 megtekintés
Hozzászólások
A proc_open nem csak elindít egy programot? Úgy értem, hogy ha nem egy shellt indítasz vele, akkor a parancssort nem fogja értelmezni.
Tehát egy
proc_open('/bin/bash -c "lynx cmd_script=..."')
-ot próbálnék először.
- A hozzászóláshoz be kell jelentkezni
A passthru vagy a system miert nem jo?
- A hozzászóláshoz be kell jelentkezni
A probléma ugyanúgy fennáll, ha ahogy írtad, bash-ben indítom el. Hülye kérdés, de nem lehet, hogy egyszerűen csak "nem lát képernyőt" a Lynx?
System()-mel az a gond, hogy kb. 10 másodperc után leáll a processz, számomra ismeretlen okból. Ergo fut 10 másodpercig kb, majd eltűnik.
Kum Gábor
http://www.kumgabor.hu
- A hozzászóláshoz be kell jelentkezni
system kuldene kimenetre a parancs altal generalt kimenetet (ergo interaktiv), es mikor a script befejezodik(mondjuk mert tullepte a futasi idot), akkor megszakitja a program futasat.
inditsd hatterben a parancsot, pl egy detacholt screenbe, es oda tudsz neki szepen parancsokat kuldozgetni, bar mivel ez nem shell, ezert nem hiszem, hogy lynx-et lehet igy vezerelni.
99,9%-ig biztos vagyok benne, hogy lynx nem tud olyat, amit curl ne tudna (hisz nem tud se js-t, se flasht futtatni).
Tyrael
- A hozzászóláshoz be kell jelentkezni
Köszönöm.
Kum Gábor
http://www.kumgabor.hu
- A hozzászóláshoz be kell jelentkezni
Senkinek nincs ötlete?
Kum Gábor
http://www.kumgabor.hu
- A hozzászóláshoz be kell jelentkezni
Mire jo ez??
PHP-bol tudod hasznalni a curl hivasokat (ha telepitve van), illetve a tidy-val meg elemezni is konnyu.. Szoval ha robot kell, akkor inkabb ezt javaslom.
Mar tobb projecthez hasznaltam, peldakodot be tudok masolni (bar php.net-en valoszinu jobbat talalsz, en is onnan szedtem joreszt).
---------------------
AFPer: We've missed you, did you miss us?
Pratchett: Yes, but I think I have time to reload.
- A hozzászóláshoz be kell jelentkezni
Sajnos ide mindenképp Lynx kell. :(
Kum Gábor
http://www.kumgabor.hu
- A hozzászóláshoz be kell jelentkezni
Nézd meg a drupal forrását, azok valahogy a cronhoz használják a lynx-et.
A script könyvtárában van egy cron.lynx.sh script.
- A hozzászóláshoz be kell jelentkezni
/o\
- A hozzászóláshoz be kell jelentkezni
Az csak arra jó, hogy meghívja a cron.php-t, ami a drupal karbantartási feladatokat végzi. Alternatívaként ugyan erre a feladatra jó a wget is pl.
- A hozzászóláshoz be kell jelentkezni