Skip to content

Instantly share code, notes, and snippets.

@Fobiya
Created August 12, 2019 06:24
Show Gist options
  • Save Fobiya/90e8b0cb5188ea877f588abd69bcf85d to your computer and use it in GitHub Desktop.
Save Fobiya/90e8b0cb5188ea877f588abd69bcf85d to your computer and use it in GitHub Desktop.
send google form
<?php
if (!$_POST) die(); // если глобальный массив POST не передан - выход
if ($_POST['glut'] != "") die(); // если spam - выход
// иначе продолжаем
$response = array();
$field1 = isset($_POST['name']) ? $_POST['name'] : false;
$field2 = isset($_POST['custom_telephone']) ? $_POST['custom_telephone'] : false;
$field3 = isset($_POST['email']) ? $_POST['email'] : false;
$field4 = isset($_POST['form_subject']) ? $_POST['form_subject'] : false;
$field5 = isset($_POST['utm_price']) ? $_POST['utm_price'] : false;
$field6 = isset($_POST['project_name']) ? $_POST['project_name'] : false;
$field7 = isset($_POST['form_subject']) ? $_POST['form_subject'] : false;
// подготовим данные для отправки в гугл форму
$url = 'https://docs.google.com/forms/d/e/1FAIpQLSfedW07gMXKSxIwPpLm7v-MFyg_yJlxFYP3BGaExufPtBhYTQ/formResponse'; // атрибут action у гугл формы
$data = array(); // массив для отправки в гугл форм
$data['entry.894276931'] = $field1; // соответствия полей, ключи массива это нэймы оригинальных полей гуглформы
//$data['entry.417057195'] = $field2;
//$data['entry.868181899'] = $field3;
//$data['entry.591724717'] = $field4;
//$data['entry.186371003'] = $field5;
$data = http_build_query($data); // сериализуем массив данных в строку для отправки
$options = array( // задаем параметры запроса
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => $data,
),
);
$context = stream_context_create($options); // создаем контекст отправки
$result = file_get_contents($url, false, $context); // отправляем
if (!$result) { // если что-то не так
$response['ok'] = 0;
$response['message'] = '<p class="error">Что-то пошло не так, попробуйте отправить позже.</p>'; // пишем ответ
die(json_encode($response));
}
$response['ok'] = 1; // все ок
$response['message'] = '<p class="">Все ок, отправилось.</p>'; // пишем ответ
die(json_encode($response));
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment