2012-02-29 9 views
0

登録フォームに、顧客が申請する勘定タイプの2つのラジオボタンを含むように変更しています。 私は2つの新しいボタンを持っています:個人アカウント[]企業アカウント[]。電子メールを送信するラジオオプションが選択されている場合のみ

お客様が個人アカウントを選択した場合、得意先テーブル(account_type)の新しい列に値 "1"が保存され、法人アカウントが選択されている場合は値 "0"が保存されます。 私がしたいことは、新しい顧客が登録するたびに管理者に電子メールを送信するコードを変更して、顧客が法人アカウントを申請した場合に余分な電子メールを送信することです。

$mail = new Mail(); 
$mail->protocol = $this->config->get('config_mail_protocol'); 
$mail->parameter = $this->config->get('config_mail_parameter'); 
$mail->hostname = $this->config->get('config_smtp_host'); 
$mail->username = $this->config->get('config_smtp_username'); 
$mail->password = $this->config->get('config_smtp_password'); 
$mail->port = $this->config->get('config_smtp_port'); 
$mail->timeout = $this->config->get('config_smtp_timeout'); 
$mail->setTo($data['email']); 
$mail->setFrom($this->config->get('config_email')); 
$mail->setSender($this->config->get('config_name')); 
$mail->setSubject($subject); 
$mail->setText($message); 
$mail->send(); 

**// Send to main admin email if new account email is enabled** 
if ($this->config->get('config_account_mail')) { 
    $mail->setTo($this->config->get('config_email')); 
    $mail->send(); 
    // Send to additional alert emails if new account email is enabled 
    $emails = explode(',', $this->config->get('config_alert_emails')); 
    foreach ($emails as $email) { 
     if (strlen($email) > 0 && preg_match('/^[^\@][email protected]*\.[a-z]{2,6}$/i', $email)) { 
      $mail->setTo($email); 
      $mail->send(); 
     } 
    } 
} 

ちょうど新しい誰かが登録されていると言って管理者に簡単な電子メールを送信し、「新しいアカウントの電子メールが有効になっている場合//はメイン管理者に送信」した後、上記のコード。私はそれを維持したいと思いますが、誰かが法人口座を申請している場合は、追加のメールを送信したいと思います。私はちょうどaccount_type = 0かどうかを確認するためにifステートメントを使用する必要があると思うが、私は専門家ではなく、既存のコードにそれをどのように統合するのか分からない。私は自分自身をよく説明してくれることを願っているところで、このコードはすべてOpen Cart、オープンソースのeコマースシステムからのものです。

$_POST['ur_radio_ele_name']はnullを設定していない場合

if(isset($_POST['ur_radio_ele_name']) && $_POST['ur_radio_ele_name']!=''){ 
    // your code to send mail 
} 

のような条件が唯一、それは文句を言わないそうでない場合、それをメールを送信した場合に使用できる

答えて

1

+0

こんにちは、ありがとうございます。私は、このコードを正常に統合することができなかったと思った、私は次のコードを追加しようとしましたが、それは動作しませんでした。 'code' \t //管理者向けの企業アカウント電子メールを開始します \t \t if(isset($ _ POST ['account_type]'))&& $ _POST ['account_type]]!=' '){ $ mail-> setTo ($ this-> config-> get( 'config_email')); $件名=($ this-> request->投稿['account_type'])? '新しい個人口座': '新しい企業口座'。 ''。 '登録:'。$ this-> request->投稿['firstname']。 ''。 $ this-> request->投稿['lastname']; $ mail-> send(); } 'code' – codekmarv

+1

@codekmarv、私は上記のコードを修正しました。フォームにラジオ要素がある場合、フォームがポストしているときにラジオ要素名と同じ名前の$ post配列がラジオ要素が選択されている場合にのみ設定され、$ _POSTキーは設定されません。そのラジオ・エレメントに名前を付けていることを確認し、POSTで同じ$ POSTキーをチェックしていることを確認します。 –

+0

ご協力ありがとうございます、これを試し、後で報告します – codekmarv

関連する問題