2012-08-23 2 views
1

나는 python 스크립트 (mail.py)를 작성하여 이메일을 파이썬으로 보내고, 다른 파일을 작성하여 작업을 제출했다. 파일 mail.py이 백그라운드에서 실행되어야합니다. 나는 follwing을 코드PHP 스크립트에서 파이썬 스크립트 호출하기

$result=shell_exec('python mail.py&'); 
       echo $result; 

을 쓰고 있어요 때 다음 응답이없는하지만 난 다음 파일 python mail.py &를 실행하고 있습니다 때 당신은 같은 파이썬 인터프리터의 전체 경로를 설정해야 성공적으로

답변

1

을 실행 :

shell_exec('/usr/bin/python mail.py &'); 
+0

이 명령이 백그라운드에서 실행 중인지 확인하려면 어떻게해야합니까? 여전히 메일을 보내지 않고 명령 줄을 사용하여 보내기 때문에 @lord_linus –

+0

shell_exec를 사용할 수 없습니다. 다른 방법으로는 mail.py와의 프로세스 간 통신, mail.py의 pid 확인, 또는 mail.py로 로그 작성 및 PHP로 그 로그 읽기가 있습니다. –

+0

이제 메일이 전송되지만 현재 두 가지 문제가 있습니다. 작업 : 하나는 양식을 제출하고 일부 데이터를 표시하고 다른 하나는 백그라운드에서 메일을 보내는 것입니다. 그러나 양식을 제출하기 위해 클릭 할 때 메일을 보내기를 기다리고 있습니다. 하지만 데이터가 먼저 표시되어야하고 메일을 보낼 때까지 기다려서는 안됩니다. –

관련 문제