2013-04-16 5 views
5

में ईमेल भेजें मेरे पास मेरे ओपनकार्ट में एक स्क्रिप्ट है, जो इसे स्वयं बनाती है, और इसे ईमेल भेजना चाहती है, लेकिन मुझे लगता है कि जब मैं ईमेल पैरामीटर प्राप्त करने का प्रयास करता हूं तो वे null लौटाते हैं।ओपनकार्ट कस्टम स्क्रिप्ट

$email_to = "[email protected]"; 
    $config = new Config(); 
    $mail = new Mail(); 


    $mail->protocol = $config->get('config_mail_protocol'); 
    $mail->parameter = $config->get('config_mail_parameter'); 
    $mail->hostname = $config->get('config_smtp_host'); 
    $mail->username = $config->get('config_smtp_username'); 
    $mail->password = $config->get('config_smtp_password'); 
    $mail->port = $config->get('config_smtp_port'); 
    $mail->timeout = $config->get('config_smtp_timeout');    
    $mail->setTo($email_to); 
    $mail->setFrom("[email protected][mydomain].com"); 
    $mail->setSender("[email protected][mydomain].com"); 
    $mail->setSubject("test send mail"); 
    $mail->setText("test message body text"); 
    $mail->send(); 

जब मैं बुला की कोशिश: echo $config->get('config_mail_protocol'); यह रिटर्न null

यहाँ मेरी कोड है।

उत्तर

5

Config के नए उदाहरण बना नहीं है लेकिन बस

$email_to = "[email protected]"; 
$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($email_to); 
$mail->setFrom("[email protected]"); 
$mail->setSender("[email protected]"); 
$mail->setSubject("test send mail"); 
$mail->setText("test message body text"); 

$mail->send(); 
+0

वाह, जिसने अभी अपना दिन बचाया है सर: डी यहाँ, मेरे उपयोगी और समस्या हल हो गई है: डी – nunong21

+0

मदद करने में खुशी हुई! :-) – shadyyx

+0

बीटीडब्ल्यू, क्या मैंने एक कस्टम क्लास के अंदर $ मेल और कॉन्फ़िगरेशन को कॉल करना संभव है? – nunong21

4

मैं का सामना करना पड़ा गया है समस्याओं फोन कि पहले उल्लेख किया कोड के साथ मेल भेजना। Opencart मेल चर opencart 2.

के बाद से बदल दिया गया है यह opencart 2,3

$mail = new Mail(); 
$mail->protocol = $this->config->get('config_mail_protocol'); 
$mail->parameter = $this->config->get('config_mail_parameter'); 
$mail->smtp_hostname = $this->config->get('config_mail_smtp_hostname'); 
$mail->smtp_username = $this->config->get('config_mail_smtp_username'); 
$mail->smtp_password = html_entity_decode($this->config->get('config_mail_smtp_password'), ENT_QUOTES, 'UTF-8'); 
$mail->smtp_port = $this->config->get('config_mail_smtp_port'); 
$mail->smtp_timeout = $this->config->get('config_mail_smtp_timeout'); 

$mail->setTo($order_info['email']); 
$mail->setFrom($this->config->get('config_email')); 
$mail->setSender(html_entity_decode($order_info['store_name'], ENT_QUOTES, 'UTF-8')); 
$mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8')); 
$mail->setHtml($this->load->view('mail/order', $data)); 
$mail->setText($text); 
$mail->send(); 

कोड ब्लॉक catalog/model/checkout/order.php

से सीधे कॉपी किया मुझे आशा है कि किसी को यह उपयोगी मिल जाएगा के लिए कोड है।

संबंधित मुद्दे