Показать сообщение отдельно
  #1 (permalink)  
Старый 03.03.2018, 22:38
Аспирант
Отправить личное сообщение для Exhaust_ Посмотреть профиль Найти все сообщения от Exhaust_
 
Регистрация: 16.09.2014
Сообщений: 52

Как отправлять данные Local Storage через форму?
1. В Local Storage сайта есть строка

Key:
simpleCart_items

Value:
{"SCI-3":{"quantity":1,"id":"SCI-3","price":4000,"name":"Личное: Проба","thumb":"/photo.jpg","size":"80×80","link":"/proba.html"}}

2. Есть форма:

<form action="checkout.php" method='post' id='form' role="form">
					<div class="form-group">
						<label for="fio">
							ФИО
						</label>
						<input name="fio" type="text" class="form-control" id="fio" />
					</div>
					<div class="form-group">
						<label for="tel">
							Email
						</label>
						<input name="email" type="text" class="form-control" id="email" />
					</div>
					<div class="form-group">
						<label for="adres">
							Доставка
						</label>
						<textarea name="adres" class="form-control" rows="3" id="adres"></textarea>
					</div>
					<input type="submit" value="Заказать" name="submit" onClick="emailCheckout(this.form)" class="btn btn-lg btn-success">
				</form>


3. Есть файл checkout.php. Он получает должен получать данные из формы и отправлять их на email.

<?php
$to = '123@gmail.com'; //куда слать письмо

if ( $_SERVER['REQUEST_METHOD']=='POST' )
	complete_mail($to);

function complete_mail($to) {
	$fio =  substr(htmlspecialchars(trim($_POST['fio'])), 0, 150);
	$tel =  substr(htmlspecialchars(trim($_POST['tel'])), 0, 50);
	$adres =  substr(htmlspecialchars(trim($_POST['adres'])), 0, 1000);


	unset( $_POST['fio'] );
	unset( $_POST['tel'] );
	unset( $_POST['adres'] );
	unset( $_POST['submit'] );

		
 	if(!preg_match("/.*/", $tel)) 
		{ output_err(0); }
	else if(empty($fio))
		{ output_err(1); }
	else if(empty($_POST['name_1']))
		{ output_err(3); }
	else if(empty($adres))
		{ output_err(2); }
	
	else {
		$content .= "ФИО: ".$fio."\nТелефон: ".$tel."\nАдрес: ".$adres."\n\n";

		$c=0;
		foreach ( $_POST as $k => $v ){
			if ( $c == 5 ) {
				$content .= "\n";
				$c = 0;
			} else {
				++$c;
			}
			$content .= $v."\n";
		}
		

		$subject = 'Корзина ' . $_SERVER['SERVER_NAME'];

		mail($to, $subject, $content);
		
		echo "Заявка отправлена.";
	}
}

function output_err($num) {
	$err[0] = 'ОШИБКА! Неверно введен телефон.'; 
	$err[1] = 'ОШИБКА! Не введено имья.'; 
	$err[2] = 'ОШИБКА! Не введен адрес.'; 
	$err[3] = 'ОШИБКА! Вы ничего не заказали.'; 

	echo '<p>'.$err[$num].'</p>';
}

?>


Вопрос:
Как сделать так чтобы указанные данные из Local Storage передавалиь вместе с формой на checkout.php и он их принимал и отправлял на email?
Ответить с цитированием