Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php e{ 回应“失败”; 退出(); } $subscribers=explode(“,”,$_POST['subscribers']); 对于($i=0;$i_Php_Email_Mailer - Fatal编程技术网

Php e{ 回应“失败”; 退出(); } $subscribers=explode(“,”,$_POST['subscribers']); 对于($i=0;$i

Php e{ 回应“失败”; 退出(); } $subscribers=explode(“,”,$_POST['subscribers']); 对于($i=0;$i,php,email,mailer,Php,Email,Mailer,e{ 回应“失败”; 退出(); } $subscribers=explode(“,”,$_POST['subscribers']); 对于($i=0;$i

e{ 回应“失败”; 退出(); } $subscribers=explode(“,”,$_POST['subscribers']); 对于($i=0;$i我喜欢这个概念。。使用模板类是一个好主意,但我的意思是如何模板HTML部分?我不理解这个问题。模板的哪一部分不是HTML?如何保存模板?我是说,你把它加载到php变量上了吗?在把它交给模板类之前它在哪里?我喜欢这个概念。。使用模板类是一个好主意,但我的意思是如何模板HTML部分?我不理解这个问题。模板的哪一部分不是HTML?如何保存模板?我是说,你把它加载到php变量上了吗?在将其提交给模板类之前,它在哪里?我在模块中使用此代码将用户保存的模板或HTML发送给订阅其新闻稿的用户。它允许用户将保存在其网站上的产品或博客包含在他/她要发送给其订阅者的模板中。粘贴大量代码不是一个好主意没有解释它的作用。试着编辑你的答案,只留下基本部分,并用自己的话解释代码的预期行为。我在我的模块中使用此代码将用户保存的模板或HTML发送给订阅其新闻稿的用户。它允许用户将保存在其网站上的产品或博客包含在他/她想要发送给他们的模板中订阅服务器粘贴大量代码而不解释其功能不是一个好主意。试着编辑你的答案,只留下基本部分,并且用你自己的话解释代码的预期行为。
<table>
    <?php foreach($rows as $row) { ?>
    <tr>
        <?php foreach($row as $column) { ?>
        <td><?=$column?></td>
        <?php } ?>
    </tr>
    <?php } ?>
</table>
class Template {
    protected $templateFile = "";
    protected $templateVars = [];
    public function __construct($templateFile, Array $templateVars= []) {
        $this->templateVars = $templateVars;
        $this->templateFile = $templateFile;
    }
    public function __toString() {
        export($this->templateVars, EXTR_SKIP);
        ob_start();
        include $this->templateFile;
        return ob_get_clean();
    }
}
class SendEmail {
    public function __construct($to, $subject, $template, Array $data) {
        $template = new Template($file, $data); // create the email template
        $this->emailBody = (string) $template; // generate the content
        $this->to = $to;
        $this->subject = $subject;
    }
    public function send() {
        // Send email using PHP mailer or whatever here
    }
}
$tempalteContent = mysqli_query($conn, "select * from newsletter_template where name like '%$template%'");
if (mysqli_num_rows($tempalteContent) > 0) {
    $validate = 0;
    $messageFinal = '';
    $message = '';
    $row = mysqli_fetch_array($tempalteContent);
    $template_id = $row['id'];
    $productInc = $row['productsInc'];
    $blogInc = $row['blogInc'];
    $templateMsg = htmlspecialchars_decode($row['description']);
    $divData = '';
    $blogData = '';
    if ($blogInc == 1 && $productInc == 1) {

        /*         * Product Query* */
        $productQuery = mysqli_query($conn, "select * from newsletter_products where newsletter_tempalte_id = $template_id");
        if (mysqli_num_rows($productQuery) > 0) {

            $width = '';
            $website = "http://demo.com/";
            if (mysqli_num_rows($productQuery) > 2) {
                $width = '100%';
            } else if (mysqli_num_rows($productQuery) > 1) {
                $width = '100%';
            }
            for ($i = 0; $i <= mysqli_num_rows($productQuery); $i++) {
                $row[$i] = mysqli_fetch_array($productQuery);
                $product_id[$i] = $row[$i]['product_id'];
                $productDetails[$i] = mysqli_query($conn, "select * from products where product_id = $product_id[$i]");
                if (mysqli_num_rows($productDetails[$i]) > 0) {
                    $rowproduct[$i] = mysqli_fetch_array($productDetails[$i]);
                    $productName[$i] = $rowproduct[$i]['product_name'];
                    $productImg[$i] = $website . $rowproduct[$i]['product_img'];
                    $productDesp[$i] = htmlspecialchars_decode($rowproduct[$i]['product_desp']);
                    $divData .= "<div style='width:" . $width . ";float:left;padding:7px;text-align:justify'><span style='width:100%;padding-bottom:5px;float:left'><img src='" . $productImg[$i] . "' width='30%' height='30%' style='max-width:100px;max-height:100px'></span><b style='vertical-align:bottom'>" . $productName[$i] . "</b><span style='font-size:12px;'>" . $productDesp[$i] . "</span></div>";
                }
                $validate++;
            }
        }

        /*         * Blog Query* */

        $blogQuery = mysqli_query($conn, "select * from newsletter_blogs where newsletter_template_id = $template_id");
        if (mysqli_num_rows($blogQuery) > 0) {

            $width = '';
            $website = "http://demo.com/";
            if (mysqli_num_rows($blogQuery) > 2) {
                $width = '100%';
            } else if (mysqli_num_rows($blogQuery) > 1) {
                $width = '100%';
            }
            for ($i = 0; $i <= mysqli_num_rows($blogQuery); $i++) {
                $row[$i] = mysqli_fetch_array($blogQuery);
                $blog_id[$i] = $row[$i]['blog_id'];
                $blogDetails[$i] = mysqli_query($conn, "select * from blog where id = $blog_id[$i]");
                if (mysqli_num_rows($blogDetails[$i]) > 0) {
                    $rowblog[$i] = mysqli_fetch_array($blogDetails[$i]);
                    $blogName[$i] = $rowblog[$i]['title'];
                    $blogImg[$i] = $website . $rowblog[$i]['img'];
                    $blogDesp[$i] = htmlspecialchars_decode($rowblog[$i]['desp']);
                    $blogData .= "<div style='width:100%;float:left;padding:7px;text-align:justify'><span style='width:100%;padding-bottom:5px;float:left'><img src='" . $blogImg[$i] . "' width='30%' height='30%' style='max-width:100px;max-height:100px'></span><b style='vertical-align:bottom'>" . $blogName[$i] . "</b><span style='font-size:12px;'>" . $blogDesp[$i] . "</span></div>";
                }
                $validate++;
            }
        }
        $message = $templateMsg . $divData . $blogData;
    } else if ($productInc == 1 && $blogInc == 0) {
        $productQuery = mysqli_query($conn, "select * from newsletter_products where newsletter_tempalte_id = $template_id");
        if (mysqli_num_rows($productQuery) > 0) {

            $width = '';
            $website = "http://demo.com/";
            if (mysqli_num_rows($productQuery) > 2) {
                $width = '100%';
            } else if (mysqli_num_rows($productQuery) > 1) {
                $width = '100%';
            }
            for ($i = 0; $i <= mysqli_num_rows($productQuery); $i++) {
                $row[$i] = mysqli_fetch_array($productQuery);
                $product_id[$i] = $row[$i]['product_id'];
                $productDetails[$i] = mysqli_query($conn, "select * from products where product_id = $product_id[$i]");
                if (mysqli_num_rows($productDetails[$i]) > 0) {
                    $rowproduct[$i] = mysqli_fetch_array($productDetails[$i]);
                    $productName[$i] = $rowproduct[$i]['product_name'];
                    $productImg[$i] = $website . $rowproduct[$i]['product_img'];
                    $productDesp[$i] = htmlspecialchars_decode($rowproduct[$i]['product_desp']);
                    $divData .= "<div style='width:" . $width . ";float:left;padding:7px;text-align:justify'><span style='width:100%;padding-bottom:5px;float:left'><img src='" . $productImg[$i] . "' width='30%' height='30%' style='max-width:100px;max-height:100px'></span><b style='vertical-align:bottom'>" . $productName[$i] . "</b><span style='font-size:12px;'>" . $productDesp[$i] . "</span></div>";
                }
                $validate++;
            }
        }
        $message = $templateMsg . $divData;
    } else if ($blogInc == 1 && $productInc == 0) {
        $blogQuery = mysqli_query($conn, "select * from newsletter_blogs where newsletter_tempalte_id = $template_id");
        if (mysqli_num_rows($blogQuery) > 0) {

            $width = '';
            $website = "http://demo.com/";
            if (mysqli_num_rows($blogQuery) > 2) {
                $width = '100%';
            } else if (mysqli_num_rows($blogQuery) > 1) {
                $width = '100%';
            }
            for ($i = 0; $i <= mysqli_num_rows($blogQuery); $i++) {
                $row[$i] = mysqli_fetch_array($blogQuery);
                $blog_id[$i] = $row[$i]['blog_id'];
                $blogDetails[$i] = mysqli_query($conn, "select * from blog where id = $blog_id[$i]");
                if (mysqli_num_rows($blogDetails[$i]) > 0) {
                    $rowblog[$i] = mysqli_fetch_array($blogDetails[$i]);
                    $blogName[$i] = $rowblog[$i]['title'];
                    $blogImg[$i] = $website . $rowblog[$i]['img'];
                    $blogDesp[$i] = htmlspecialchars_decode($rowblog[$i]['desp']);
                    $blogData .= "<div style='width:100%;float:left;padding:7px;text-align:justify'><span style='width:100%;padding-bottom:5px;float:left'><img src='" . $blogImg[$i] . "' width='30%' height='30%' style='max-width:100px;max-height:100px'></span><b style='vertical-align:bottom'>" . $blogName[$i] . "</b><span style='font-size:12px;'>" . $blogDesp[$i] . "</span></div>";
                }
                $validate++;
            }
        }
        $message = $templateMsg . $blogData;
    } else {
        $message = $templateMsg;
    }
    $messageFinal = '<div style="width:100%">' . $message . '</div>';
    echo $validate;
} else {
    echo "Fail";
    exit();
}
$subscribers = explode(',', $_POST['subscribers']);
for ($i = 0; $i < count($subscribers); $i++) {
    $to = $subscribers[$i];
    $subject = $template;
    $from = 'demo@demo.com';

    // To send HTML mail, the Content-type header must be set
    $headers = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

    // Create email headers
    $headers .= 'From: Demo' . "\r\n" .
            'Reply-To: Your Email Id' . "\r\n" .
            'X-Mailer: PHP/' . phpversion();

    // Compose a simple HTML email message
    $message = '<!DOCTYPE html><html><body>';
    $message .= $messageFinal . $footer;
    $message .= '</body></html>';

    // Sending email
    if (mail($to, $subject, $message, $headers)) {
        $validate++;
    } else {
        $validate = 0;
    }
}