2009-11-11 2 views
0

저는 codeigniter를 처음 사용하고 있으며, 회원들에게 보내는 주간 다이제스트를 구현하는 방법을 알아 내려고하고 있습니다.코드 네이 터를 사용하여 일주일에 한 번 회원에게

현재 전자 메일이 올바르게 설정되어 있으며 이제는 '매주'부분을 다운하려고합니다. 날짜/시간 함수를 사용하여 일주일이 경과했는지 확인하는 방법을 알고 있지만 내 사이트를 클릭하지 않고도 '매주 월요일 오후 8시에'라고 말하면 어떻게 실행합니까? CodeIgniter에서이 작업을 수행 할 수 있습니까?

감사합니다,
마이클

답변

6

당신은 이메일 도우미 오히려 email class를 원하지 않는다. 설명서를 확인하십시오. 지시 사항은 스스로 설명합니다. 경험에서 얻을 수있는 유일한 조언은 다음과 같습니다.

  • SMTP를 사용하십시오. 성능이 뛰어나고 스팸 필터에 덜 취약하며 내 경험에 따라 여러 서버에서 원활하게 작동합니다. 5 개의 구성 인수 인 과 4 개의 smtp_ 인수를 전달해야합니다.
  • 설정을 구성 파일로 저장하십시오 (문서를 확인하십시오). 그것은 당신에게 두통을 덜어 줄 것입니다.

수동으로 만들거나 데이터베이스에서 자동으로 만들 수 있습니다. 수동으로 수행하는 경우 이메일 스크립트를 출력 스크립트로 설정하면 완료됩니다.

뉴스 레터가 자동으로 만들어지고 많은 사용자가없는 경우 이메일 스크립트를 실행하는 cron 작업을 설정하면 문제가 없습니다. 많은 사용자가 있다면 일괄 적으로 보내십시오.

  • 는 사람 또는 BCC 필드에 여러 개의 주소를 하나의 이메일을 보내하지 마십시오

    다른 것들에 대해 생각합니다. 한 번에 하나씩 이메일을 반복하여 보내십시오. 스팸으로부터 보호하는 것이 더 좋을 것입니다. 사람들은 자신에게 전달되지 않았거나 수백 명의 다른 사람들에게 전달 된 이메일을받는 것을 좋아하지 않습니다.

  • 전자 메일이 너무 자주 전송되는 것을 방지하는 범용 오류 방지 스크립트를 사용하십시오. 가장 최근의 메일 링 날짜를 가진 로그 파일에 간단한 fwrite가 트릭을 수행합니다. 또는 전송 된 모든 전자 메일과 보낸 시간을 DB로 유지할 수 있습니다.
+1

다른 사람이 관심이 있다면 - cron은 'wget'을 사용하여 PHP 파일을 호출 할 수 있습니다. :) – Dirk

관련 문제