grebovich
Гуру форума
- Регистрация
- 19 Мар 2012
- Сообщения
- 371
- Реакции
- 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,
Буду преогромно благодарен любой помощи, знаний не хватает, да и сил уже нету методом тыка ....
Заранее всем откликнувшимся спасибо...