0
자동으로 yii2에서 내 동작 방법을 실행하고 싶습니다. 콘솔/컨트롤러에 코드를 삽입했습니다.작업 스케줄러를 사용하여 yii2 스크립트 실행
MailController.php
<?php
namespace console\controllers;
use Yii;
use yii\console\Controller;
use Swift_TransportException;
class MailController extends Controller
{
public function actionSend()
{
$mail = Yii::$app->mailer->compose()
->setFrom('[email protected]')
->setTo('[email protected]')
->setSubject('Testing');
try
{
$mail->send();
}
catch (Swift_TransportException $ste)
{
echo 'error';
}
}
}
?>
그럼 내가 작업 스케줄러에서 작업 메뉴에서이 구성합니다 :
프로그램/스크립트 : C : \ XAMPP의 \ PHP는 \의 php.exe가
를이 코드입니다추가 인수 (선택 사항) : -f C : \ XAMPP \ htdocs를 \ 바루 \ 고급 \ 콘솔 \ 컨트롤러 \ MailController.php
I 조치를 보내 실행할. 하지만 작업 스케줄러의 결과는 0xFF이며 이메일을받지 못합니다. 뭐가 문제 야? 직접
C:\xampp\php\php.exe c:\path\to\your\application\yii mail/send
또는 당신은 YII 호출
c:\path\to\your\application\yii.bat mail/send
, 그리고 컨트롤러 스크립트를
이 명령을 작업 스케줄러에 넣을 위치를 알려주십시오. 대신 메일을 보내려고하지 않고 테이블에 행을 삽입해야합니다. 콘솔에서 컨트롤러/액션을 실행하면 레코드를 삽입 할 수 있습니다. 그러나 작업 스케줄러를 통해 실행할 때 레코드가 데이터베이스에 저장되지 않습니다. 작업 스케줄러에는 두 개의 필드가 있습니다. 프로그램 및 인수. 당신의 대답을 어디에 넣어야합니까? 나는 스케줄러에 어떤 종류의 오류도 직면하고 있지 않다. 완료된 작업이 표시됩니다. – Pravin