إرسال البريد الإلكتروني فقط عند تحديد خيار الراديو

StackOverflow https://stackoverflow.com/questions/9493902

سؤال

أقوم بتعديل نموذج التسجيل ليشمل زري اختيار لنوع الحساب الذي يتقدم العميل بطلب للحصول عليه.لذلك لدي زرين جديدين:الحساب الشخصي [] حساب الشركة [].

إذا اختار العميل حسابًا شخصيًا، فسيتم حفظ القيمة "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('/^[^\@]+@.*\.[a-z]{2,6}$/i', $email)) {
            $mail->setTo($email);
            $mail->send();
        }
    }
}

الكود أعلاه بعد "//إرسال إلى المسؤول الرئيسي إذا تم تمكين البريد الإلكتروني للحساب الجديد" يرسل فقط بريدًا إلكترونيًا بسيطًا إلى المسؤول يخبره بأنه قد تم تسجيل شخص جديد.أريد الاحتفاظ بذلك، ولكنني أرغب في إرسال بريد إلكتروني إضافي إذا كان شخص ما يتقدم بطلب للحصول على حساب شركة.أعتقد أنني بحاجة فقط إلى استخدام عبارة if للتحقق مما إذا كان account_type=0 ولكني لست خبيرًا ولا أعرف كيفية دمج ذلك في الكود الموجود.آمل أن أكون قد أوضحت نفسي جيدًا.بالمناسبة، كل هذا الكود مأخوذ من Open Cart، نظام التجارة الإلكترونية مفتوح المصدر.

هل كانت مفيدة؟

المحلول

يمكنك استخدام إذا كانت الحالة مثل

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

لو $_POST['ur_radio_ele_name'] تم تعيينه وليس فارغًا، عندها فقط سيرسل البريد، وإلا فلن يفعل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top