PDA

View Full Version : PHP, problemi funzioni exec.


VICIUS
01-10-2003, 20:17
Ultimamente mi sono messo a scrivere un piccolo programmino in php per gestire il mio archivio di cd. sono a buon punto ma sto litigando con la funzione exec di php. Quando uso la funzione per montare e smontare il dispositivo del cdrom tutto funziona correttamente ma quando uso la funzione con il comando eject per espellere il cd in automatico il comado non va abuon termine. Ora il codice dalla funzione eject è questo :


/* espelle il dispositivo */
function eject()
{
$eject_res = exec("eject $this->device_name");

/* anche eject ritorna una stringa solo in caso di errore */
if ($eject_res != '') return false;

return true;
}


Facendo un po di debugging qua e la ho scoperto che l'output del comando aggiungendo l'opzione -v (verbose) non arriva mai alla fine. questo è l'output che riceve php
eject: device name is `/dev/scd0'
eject: expanded name is `/dev/scd0'
eject: `/dev/scd0' is not mounted
eject: `/dev/scd0' is not a mount point
eject: `/dev/scd0' is not a multipartition device

mentre dovrebbe essere :
eject: device name is `/dev/scd0'
eject: expanded name is `/dev/scd0'
eject: `/dev/scd0' is not mounted
eject: `/dev/scd0' is not a mount point
eject: `/dev/scd0' is not a multipartition device
eject: trying to eject `/dev/scd0' using CD-ROM eject command
eject: CD-ROM eject command succeeded

cosa ho dimenticato ? dov'è il mio errore ? nella guida c'è scritto che php resta ad acoltare l'output del programma finche non termina mentre qui sembra che lo uccida dopo un po. :confused:

ciao ;)

VICIUS
02-10-2003, 07:38
La notte porta consiglio :) il server esegue tutti gli eseguibili con permessi ridotti.

ciao ;)

cionci
02-10-2003, 09:02
Eh sì ;)