我正在嘗試爲我正在編寫的Web應用程序設置一個電子郵件「系統」。漂亮得多,如果你在用戶表的作用是PHP Foreach循環+ PDO
和您的帳戶狀態
'激活'
那麼當一個新用戶註冊,或發送登錄請求所有管理員將通過電子郵件發送。到目前爲止,我只是對電子郵件進行了硬編碼,但當涉及到營銷應用程序時,公司不希望進入代碼來更改電子郵件。所以我試圖做到「動態」
我的模型大部分要感謝托馬斯! :
{
$sql = "SELECT * from users WHERE status = 'Activated' and role = 3";
$admin_email = $this -> db -> conn_id -> prepare($sql);
$admin_email -> execute();
$emails = array();
if ($admin_email)
{
if ($admin_email -> rowCount() > 0)
{
foreach ($admin_email -> fetchall() as $row)
{
$emails[] = $this -> encrypt -> decode($row['email']);
}
return $emails;
}
}
}
和控制器:
{
$this -> load -> model('login_model');
$this -> load -> library('email');
$this -> load -> library('encrypt');
$emails = $this -> login_model -> admin_email();
$first = $this -> input -> post('fname');
$last = $this -> input -> post('lname');
$email = $this -> input -> post('email');
$this -> email -> from($email);
$this -> email -> to($emails);
$this -> email -> reply_to($email);
$this -> email -> subject('' . $first . ' ' . $last . ' Account Request');
$this -> email -> message('{unwrap}Hello this is ' . $first . ' ' . $last . ', I am requesting to be added to the staff log-in.{/unwrap}');
if (!$this -> email -> send())
{
$this -> session -> set_flashdata('email', 'Email Was Not Sent!');
$this -> request_account();
} else
{
$this -> session -> set_flashdata('login', 'Request Sent!');
redirect('login_controller/index', 'location');
}
}
只是從我的觀察深入到這個更多:
- 第一行返回的作品就好了,但是出於測試目的,我有兩個管理員帳戶,就像我剛纔所說,第一個只收到電子郵件。並說如果我刪除第一行(第一個管理員),然後第二個得到它。所以我覺得我的foreach失敗了,但我不知道爲什麼甚至是如何糾正我的錯誤。
如果任何人能告訴我什麼,我做錯了什麼,這將是巨大的,
更改此$ dbemail = $ row ['email'];'到'$ dbemail = $ row'並再次測試 – 2013-03-16 17:27:01
給出正確答案後關閉問題$ this - > logic === 0 – RaGe10940 2013-03-18 00:31:22