grebovich
Гуру форума
- Регистрация
- 19 Мар 2012
- Сообщения
- 374
- Реакции
- 88
- Автор темы
- #1
Всем привет.
Парни прошу помощи, уже вторые сутки пошли, мозг плавится....
Принимаю заказы с лейдинга которые отправляются на почту, но я настраиваю чтобы паралельно писались они в гугл таблицу, есть код обработчика такой:
	
	
	
		
Сверху обрапотчик почты, данные прекрасно отправляет, а вот ниже настраиваю отправку в таблицы гугл методом Post, так вот все добавил все работает, а вот данные самого товара никак не могу добавить, нужно как то передавать productName, productPrice, productQuantity, в поле entry.1442370674,
Буду преогромно благодарен любой помощи, знаний не хватает, да и сил уже нету методом тыка ....
Заранее всем откликнувшимся спасибо...
	
		
			
		
		
	
				
			Парни прошу помощи, уже вторые сутки пошли, мозг плавится....
Принимаю заказы с лейдинга которые отправляются на почту, но я настраиваю чтобы паралельно писались они в гугл таблицу, есть код обработчика такой:
		Код:
	
	<?
// mb_internal_encoding("UTF-8");
// ini_set('error_reporting', E_ALL);
// ini_set('display_errors', 1);
// ini_set('display_startup_errors', 1);
use PHPMailer\PHPMailer\PHPMailer;
require_once($_SERVER['DOCUMENT_ROOT'] . '/smartbasket/php/config.php');
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
        if (isset($_POST['userName']) ) {
            if(empty($_POST['userName'])) {
                echo 'notName';
            } else {
                $name = "<b>Имя: </b>" . strip_tags($_POST['userName']) . "; ";
            }
        }
        if (isset($_POST['userTel']) ) {
            if(empty($_POST['userTel'])) {
                echo 'notTel';
            } else {
                $tel = "<b>Телефон: </b>" . strip_tags($_POST['userTel']) . "<br>";
            }
        }
        if (isset($_POST['userEmail']) ) {
            if(empty($_POST['userEmail'])) {
                echo 'notEmail';
            } else {
                $email = "<b>Email: </b>" . strip_tags($_POST['userEmail']) . "<br>";
            }
        }
        if (isset($_POST['userCity']) ) {
            if(empty($_POST['userCity'])) {
                echo 'notCity';
            } else {
                $city = "<b>Адрес доставки: </b>" . strip_tags($_POST['userCity']) . "; ";
            }
        }
        if (isset($_POST['userKomments']) ) {
            if(empty($_POST['userKomments'])) {
                echo 'notKomments';
            } else {
                $komments = "<b>Комментарий к заказу: </b>" . strip_tags($_POST['userKomments']) . "; ";
            }
        }
        if (isset($_POST['agreement']) ) {
            echo 'agreement';
            if(empty($_POST['agreement'])) {
                echo 'agreement';
            } else {
                $agreement = "<b>Соглашение: </b>" . strip_tags($_POST['agreement']) . "<br>";
            }
        }
        if (isset($_POST['finalPrice']) ) {
            $finalPrice = "<b>Общая стоимость: </b>" . strip_tags($_POST['finalPrice']) . "<br>";
        }
        $productArr=[];
        $counter = 0;
        $body;
        $bodyHeader = '<table border="0" cellpadding="0" cellspacing="0" style="border-bottom:1px; border-right:1px; border-color:#e2e2e2; border-style: solid; width:800px" width="100%" align="center">
            <tr >
                <th colspan="3" style="width: 400px; padding-top:15px; padding-bottom:15px; padding-right:15px; padding-left:15px; text-align:center; border-top:1px; border-left:1px; border-right:0; border-bottom:0; border-color:#e2e2e2; border-style: solid;">' . $name . $tel . $city . $komments . $finalPrice .'</th>
                <th colspan="4" style="width: 400px; padding-top:15px; padding-bottom:15px; padding-right:15px; padding-left:15px; text-align:center; border-top:1px; border-left:1px; border-right:0; border-bottom:0; border-color:#e2e2e2; border-style: solid;">' . $email . $agreement .'</th>
            </tr>';
        foreach ($_POST as $key =>  $value) {
            $body.= '<tr>';
            if (is_array($value) || $value instanceof Traversable) {
                foreach ($value as $k => $v) {
                    if($k == 'productImg'){
                        $productImg = '<img src="' . $v . '" width="100" height="100" alt="картинка товара">';
                        $body.=
                            '
                                            <td style="width: 100px; padding-top:15px; padding-bottom:15px; padding-right:15px; padding-left:15px; text-align:center; border-top:1px; border-left:1px; border-right:0; border-bottom:0; border-color:#e2e2e2; border-style: solid;" >
                                            <div style="padding: 5px;">
                                            '
                                                . $productImg .
                                            '
                                            </div></td>';
                    }
                    if($k == 'productName'){
                        $body.=
                            '<td style="width: 300px;  padding-top:15px; padding-bottom:15px; padding-right:15px; padding-left:15px; text-align:center; border-top:1px; border-left:1px; border-right:0; border-bottom:0; border-color:#e2e2e2; border-style: solid;" >
                                            <div style="padding: 5px;">
                                            '
                            . $v .
                            '
                                            </div></td>';
                    }
                    if($k == 'productSize'){
                        if(!empty($v)){
                            $body.=
                                '<td style="width: 100px;  padding-top:15px; padding-bottom:15px; padding-right:15px; padding-left:15px; text-align:center; border-top:1px; border-left:1px; border-right:0; border-bottom:0; border-color:#e2e2e2; border-style: solid;" >
                                            <div style="padding: 5px;"> Размер:
                                            '
                                . $v .
                                '
                                            </div></td>';
                        } else {
                            $body.=
                                '<td style="width: 100px;  padding-top:15px; padding-bottom:15px; padding-right:15px; padding-left:15px; text-align:center; border-top:1px; border-left:1px; border-right:0; border-bottom:0; border-color:#e2e2e2; border-style: solid;" >
                                    <div style="padding: 5px;"> Размер отстутствует </div>
                                </td>';
                        }
                    }
                    if($k == 'productId'){
                        $body.=
                            '<td style="width: 100px;  padding-top:15px; padding-bottom:15px; padding-right:15px; padding-left:15px; text-align:center; border-top:1px; border-left:1px; border-right:0; border-bottom:0; border-color:#e2e2e2; border-style: solid;" >
                                                <div style="padding: 5px;"> ID:
                                                '
                            . $v .
                            '
                                                </div></td>';
                    }
                    if($k == 'productPrice'){
                        $body.=
                            '<td style="width: 100px;  padding-top:15px; padding-bottom:15px; padding-right:15px; padding-left:15px; text-align:center; border-top:1px; border-left:1px; border-right:0; border-bottom:0; border-color:#e2e2e2; border-style: solid;" >
                                                <div style="padding: 5px;"> Цена:
                                                '
                            . $v .
                            '
                                                </div></td>';
                    }
                    if($k == 'productQuantity'){
                        $body.=
                            '<td style="width: 100px;  padding-top:15px; padding-bottom:15px; padding-right:15px; padding-left:15px; text-align:center; border-top:1px; border-left:1px; border-right:0; border-bottom:0; border-color:#e2e2e2; border-style: solid;" >
                                                <div style="padding: 5px;"> Кол-во:
                                                '
                            . $v .
                            '
                                                </div></td>';
                    }
                    if($k == 'productPriceCommon'){
                        $body.=
                            '<td style="width: 100px;  padding-top:15px; padding-bottom:15px; padding-right:15px; padding-left:15px; text-align:center; border-top:1px; border-left:1px; border-right:0; border-bottom:0; border-color:#e2e2e2; border-style: solid;" >
                                                <div style="padding: 5px;"> Общая цена:
                                                '
                            . $v .
                            '
                                                </div></td>';
                    }
                }
                $body.= '</tr>';
            }
        };
        $bodybottom = '</table>';
    }
    if(defined('HOST') && HOST != '') {
        $mail = new PHPMailer;
        $mail->isSMTP();
        $mail->Host = HOST;
        $mail->SMTPAuth = true;
        $mail->Username = LOGIN;
        $mail->Password = PASS;
        $mail->SMTPSecure = 'ssl';
        $mail->Port = PORT;
        $mail->AddReplyTo(SENDER);
    } else {
        $mail = new PHPMailer;
    }
        $mail->setFrom(SENDER);
    $mail->addAddress(CATCHER);
    if(defined(CATCHER2)){
        $mail->addAddress(CATCHER2);
    }
    $mail->CharSet = CHARSET;
    $mail->isHTML(true);
        $mail->Subject = SUBJECT; // Заголовок письма
        $mail->Body = "$bodyHeader $body $bodybottom";
        if(!$mail->send()) {
            echo 'attantion';
        } else {
            // echo '<p class="smartlid__respond-success">' . SUCCESSMSGS . '</p>';
            echo 'successmsgs';
        }
} else {
    header ("Location: /");
}
?>
<?php
// формируем запись в таблицу google (изменить)
$url = "https://docs.google.com/forms/u/0/d/e/0000000000000000000000I7A8vdw/formResponse";
// сохраняем url, с которого была отправлена форма в переменную utm
//$utm = $_SERVER["HTTP_REFERER"];
// ссылка для переадресации (изменить)
// массив данных (изменить entry, draft и fbzx)
$post_data = array (
"entry.277310410" => "Новый",
"entry.1985803010" => "Новый заказ товара",
"entry.2141804827" => $_POST['userName'],
"entry.1665049066" => $_POST['userTel'],
"entry.1531952552" => $_POST['userEmail'],
"entry.1442370674" => "Товар 1",
"entry.885016319" => $_POST['finalPrice'],
"entry.332690697" => $_POST['userCity'],
"entry.1887494179" => $_POST['userKomments'],
"entry.1984777639" => "",
"entry.367273395" =>  $_SERVER["REMOTE_ADDR"],
"entry.1651136597" =>  $_REQUEST["referer"],
"entry.404468929" =>  $_SERVER["HTTP_REFERER"],
"entry.2014871732" =>  $_REQUEST["utm_source"],
"entry.77833353" =>  $_REQUEST["utm_term"],
"entry.1232461161" =>  $_REQUEST["utm_medium"],
"entry.368440688" =>  $_REQUEST["utm_content"],
"entry.2019892594" =>  $_REQUEST["utm_campaign"],
"draftResponse" => "[null,null,"4667457120756050046"]",
"pageHistory" => "0",
"fbzx" => "4667457120756050046",
"fvv" => "1"
);
// Далее не трогать
// с помощью CURL заносим данные в таблицу google
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// указываем, что у нас POST запрос
curl_setopt($ch, CURLOPT_POST, 1);
// добавляем переменные
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
//заполняем таблицу google
$output = curl_exec($ch);
curl_close($ch);
//перенаправляем браузер пользователя на скачивание оффера по нашей ссылке
//header('Location: '.$link);
?>Сверху обрапотчик почты, данные прекрасно отправляет, а вот ниже настраиваю отправку в таблицы гугл методом Post, так вот все добавил все работает, а вот данные самого товара никак не могу добавить, нужно как то передавать productName, productPrice, productQuantity, в поле entry.1442370674,
Буду преогромно благодарен любой помощи, знаний не хватает, да и сил уже нету методом тыка ....
Заранее всем откликнувшимся спасибо...
 
				 
 
		 
 
		