0

私は現在、sendという関数を使用しています。

    public function send(){


     if ( !empty($this->request->data) ) {
    $email = new CakeEmail('default');
    $email->from(array($this->Auth->user('email') => $this->Auth->user('username')))
    ->to(array('helpdesk@example.com'))
    ->subject($this->request->data['Ticket']['subject'])
    ->send(array($this->request->data['Ticket']['issue']));

    $this->Session->setFlash('Email Sent Successfully', 'default', array('class' => 'message update span9'));
    $this->redirect(array('action' => 'index'));

    }

ヘルプデスクに電子メールを送信し、データベースに保管します。FROMが構成オプションからのユーザー名/電子メールアドレスを常に表示することを除いて、すべてが機能しています。ユーザーの電子メールで電子メールをマスクしているわけではありません。サポートの問題が発生しているのは誰かを知るために、これを行う必要があります。

誰かがここで何をすべきかについての提案がありますか?

*添加

これはイントラネットアプリケーションであるため、SMTP設定を使用して認証されたGENERICUSERがあります。これはスパムではありません。DBに挿入するときにヘルプデスクチケットがどのユーザーから来たのかを知りたいだけです。

4

1 に答える 1

1

defaultとにかくConfigを使用しているのはなぜですか?

を使用する場合$email = new CakeEmail();、送信される電子メールは認証されたユーザーの電子メール情報を参照しますか?

また、常にを使用する必要があります$email->sender('support@yourcompany.com', 'Your Company Support');。これにより、問題が発生した場合、問題がユーザーではなくユーザーにリダイレクトされ、アプリがユーザーに代わってメールを送信するようになります。

アカウントにその設定があり、問題なく動作します。マークの指摘によれば、それは合法ではないかもしれませんが(ただし、それはあなたの問題ではないようです)、私は現在、私が望むどんな電子メールでも機能するシステム設定を持っているので、それは可能です。Configを使用せず、SMTPも使用しません

于 2013-01-29T01:10:22.003 に答える