2016-06-16 3 views
-1

나는 crontab을 통해 1 분마다 실행되는 PHP 파일을 가지고 있습니다. 이 파일에는 변수가 포함되어 있습니다. 변수 값을 확인할 때 브라우저에서 사용자에게 경고 메시지를 보내려합니다.php cron 파일을 사용하여 브라우저에서 경고하는 방법

자바 스크립트 경고 기능을 사용해 보았지만 작동하지 않았습니다. Google에서 검색 할 때 js가 서버 측에서 클라이언트 및 cron에서 실행될 때 cron 파일이 javascript를 지원하지 않는다는 것을 알았습니다.

그들은 또한 우리에게 node.js를 제안했지만 node.js에는 경고 기능이없는 것 같습니다. 나는 node.js를 처음 사용하고 node.js를 사용하여 PHP cron 파일에서 브라우저의 메시지를 경고하는 방법을 알지 못합니다.

도움이 필요하십니까?

미리 감사드립니다.

+0

PHP 스크립트가 cron별로 시작된 경우 메시지를받을 수있는 브라우저가 없습니다. 브라우저 요청이 스크립트를 시작한 경우에만 응답에 메시지를 넣을 수 있습니다. – Holger

+0

예, 브라우저 요청으로 스크립트가 시작되었습니다. –

+0

그리고 cron이 시작한 것은 무엇입니까? cronjob이 시작되면 서버의 페이지를 표시 할 가능성이있는 기존 브라우저를 알려줄 수있는 방법이 없습니다. 수천 일 수도 있습니다. 그리고 연결이 없습니다. 브라우저가 응답을 받으면 연결이 끊어지고 브라우저가 그의 주소를 알고 있더라도 연결할 수 없습니다. 유일한 방법은 @Muhammed의 대답 일 것입니다. cron 작업은 어디서든 상태를 저장하고 * next * 브라우저 요청이 표시합니다. 단, 브라우저가 요청할 경우에만 가능합니다. – Holger

답변

0

notification 필드와 같은 테이블을 만들 것을 제안합니다 : id,type,message, date_created.

그런 다음 cron 작업 파일에서이 테이블에 레코드를 삽입하십시오.

PHP 또는 Nodejs에서 1 분 또는 2 분 후에이 테이블을 확인하십시오. 새 레코드가 있으면 가져 와서 경고 메시지를 표시하십시오.

헤더에 알림을 표시하려고합니다.

<script> 

//make ajax request here to php file.and then append notification div 

</script> 

<div id="notification"></div> 

참고!

그것은 당신이

0

두 가지 방법의 당신이 당신이 얻을 수있는 솔루션이 있습니다)) :이 로직을 구현할 수있는 방법을 생각입니다.

1) 클라이언트 브라우저에 알리는 알림 기능을 만들어야합니다.

2) socket을 사용하여 소켓 프로그래밍을 구현해야 모든 활성 브라우저에 메시지를 보낼 수있을뿐 아니라 필터링 할 수도 있습니다.

관련 문제