2012-01-06 1 views
7

고객이 로그인하여 질문 할 수있는 기본 지원 요청 시스템을 구축 중이며 관리자가 들어 와서 답장을 보내면 상태가 "응답 됨"으로 설정되고 고객에게 전자 메일이 전송되어 다른 사람이 가지고 있음을 알립니다 대답했다.PHP/MySQL 티켓 응답 - 데이터베이스에 전자 메일을 저장 하시겠습니까?

내 질문은 .. 관리자와 고객 간의 상호 작용에 대한 로그 인 "의견"섹션이 있습니다. 고객에게 전자 메일로 전자 메일을 보내면 관리자가 전자 메일에서 "답장"을 보내고 거기에서 통신을 시작한다는 느낌이 들며 로그는 저장되지 않습니다.

고객에게 전자 메일을 보내고 "응답을 보려면 로그인하십시오"라고 말하면됩니다. 고객이 답장을 보내면 어쨌든 그것을 추적하여 웹 사이트에서했던 것처럼 주석 표에 삽입 할 수 있습니다. . 그게 가능하다면?

이 작업을 수행 할 수있는 표준 방법이 있는지 궁금해하실 수 있습니다.

감사합니다.

+1

사용하지 마십시오 '진짜'이메일 주소.전자 메일을 티켓 시스템을 통해 라우팅하여 로그에 기록 할 수있는 가상 시스템을 사용하십시오. –

답변

7

전자 메일을 사용자에게 보낼 때 특정 티켓 용으로 만든 전자 메일 주소에서 전자 메일을 보낼 수 있습니다. 전자 메일 시스템에서 PHP 발권 시스템으로 다시 라우팅하는 데 도움이되도록 식별 할 수있는 것입니다.

[email protected]

@ 도메인

지원 (ticketnumber은) 다음에 거기에서 이동하는 방법을 전자 메일 서버에 따라 달라집니다. 이 질문에 도움이되거나 도움을 얻을 수있는 몇 가지 유용한 팁이 있습니다. 당신이 그들의 응답이 자동으로 DB에 삽입하려면

How to get email and their attachments from PHP

1

, 당신은 (고객으로부터 응답이 있는지 여부 감지하는 PHP 스크립트를 실행하는 서버에 할당에게 cron 작업을해야합니다 당신

고객이 티켓 시스템을 사용할 때마다 전자 메일과 이름이이 테이블에 저장됩니다.

imap 또는 SMTP를 통해받은 편지함에 연결해야하며이 작업을 수행 할 스크립트 (phpmailer, swiftmailer 등)가 있으며 각 이메일을 "걸어서"보낸 사람 전자 메일이 자신의 메일과 일치하는지 확인하십시오 고객 표. 그런 다음 주석 테이블에 대한 INSERT.

대담한 방법은 댓글 페이지가로드 될 때마다 이메일을 읽는 것이지만 페이지로드 시간이 오래 걸릴 수 있습니다. 그러나 데이터는 cron 작업에 비해 항상 "실시간"입니다.

+0

답변 해 주셔서 감사합니다. PHPMailer를 사용하고 SMTP를 통해 전자 메일을 보내면 연결할 수 있지만 SMTP를 통해 전자 메일을 읽고 들어오는 것을 확인하는 방법은 웹에서 찾을 수 없습니다. 고객의 이메일을 users 테이블에 저장했습니다. 따라서 PHPmailer를 사용하여 고객으로부터 답장이 있는지 여부를 감지하는 데 도움이됩니다. – Drew

1

이메일 파이프 (서버가 지원할 경우)를 사용할 수 있습니다.

제목에 티켓 ID 또는 티켓 고유의 고유 식별자가 있습니다. 예 : "음식을 먹는 방법 [질문 : # 1234]", 1234는 티켓 ID입니다.

제어판에서 전자 메일 전달 스크립트를 전자 메일 전달자로 설정합니다.

이 튜토리얼은 이메일 배관에 기초를 제공하고, 내 배관 스크립트의 기초로 사용 : http://www.damnsemicolon.com/php/parse-emails-in-php-with-email-piping-part-1

관련 문제