0

こんにちは、これは私のコントローラー機能です。私の見解では、データベースからの 1 つの電子メール変数をセッション データに設定します。コントローラーで正しいかどうかを確認しました。私は完璧にそれを取得しています。しかし、その電子メール ID を TO フィールド変数として送信しようとすると、機能しません。

function do_upload()
{ 
    $config['upload_path'] = 'C:\xampp\htdocs\upload\application';
    $config['allowed_types'] = 'doc|docx|pdf';
    $config['max_size'] = '10240';
    $email = $this->session->userdata("employer_email");// If i echo $email; I will get my passed session variable

    $this->load->library('upload', $config);

    if ( ! $this->upload->do_upload())
    {   
        $error = array('error' => $this->upload->display_errors());

        $this->load->view('upload_form', $error);
    }
    else
    { 
        $data = array('upload_data' => $this->upload->data()); 

        echo "Resume Successfully uploaded to database.............";
        $file = $data['upload_data']['full_path'];

    $config = Array(
      'protocol' => 'smtp',
      'smtp_host' => 'ssl://smtp.googlemail.com',
      'smtp_port' => 465,
      'smtp_user' => 'xxx@gmail.com', // change it to yours
      'smtp_pass' => 'xxxx', // change it to yours
      'mailtype' => 'html',
      'charset' => 'iso-8859-1',
      'wordwrap' => TRUE
    );


      $this->load->library('email', $config);
      $this->email->set_newline("\r\n");
      $this->email->from('xxx@gmail.com'); // change it to yours
      $this->email->to($email); // But here it's not working
      $this->email->subject('Email using Gmail.');
      $this->email->message('Working fine ! !');
      $this->email->attach($file);
      if($this->email->send())
     {
      echo 'Email sent.';
     }
     else
    {
     show_error($this->email->print_debugger());
    }
    }


}
4

1 に答える 1

1

$email は引用符なしで関数に渡されます。それがセッションからどのようにもたらされるかを考えてください。セッションの電子メールが xxx@gmail.com の場合、次を渡します。

$this->email->to(xxx@gmail.com); 

その行を読みたい:

$this->email->to('xxx@gmail.com'); 

これを試して:

$email = '"'.$this->session->userdata("employer_email").'"';
于 2012-11-01T06:57:31.950 に答える