@sonics
html,css,angular, php, joomla, opencart, bootstrap

Почему не подхватывает поля: Оплата, Цена, Размер?

Поясните пожалуйста где я туплю?
Вот php обработчик:
$recepient = "моя почта";
$sitename = "Имя сайта";
$phone = trim($_POST["phone"]);
$address = trim($_POST["address"]);
$delivery = trim($_POST["delivery"]);
$payment = trim($_POST)["payment"];
$price = trim($_POST)["price"];
$size = trim($_POST)["variant"];

$message = " \nТелефон: " . $phone . " \nАдрес: " . $address . "\nДоставка: " . $delivery . " \nОплата: " . $payment . " \nЦена: " . $price . "\nРазмер: " . $size;
$message = wordwrap($message, 3000);
$pagetitle = "Заявка в 1 клик с сайта " . $sitename;
if (
	mail(
		$recepient
		, $pagetitle
		, $message
	)
) {
	echo "success, '$phone', '$address', '$delivery' , '$payment', '$price', '$size'";
} else {
    echo "error";
}


Вот html блок:
<form action="#" class="az-review-form">
	<span title="Закрыть" id="close">&times;</span>
	<ul>
	<li><input type="text" name="name" id="name" class="az-phone" placeholder="Ваш телефон"></li>
	<li><input type="text" name="address" id="address" class="az-address" placeholder="Адрес доставки"></li>
	<li><div>Способ доставки:</div>
             <select name="service" class="default-select az-delivery">
			<option value="cur-bel">Курьер по Беларуси</option>
			<option value="cur-minsk">Курьер по Минск</option>
			<option value="post-bel">Почта по Беларуси</option>
			<option value="post-minsk">Почта по Минску</option>
			<option value="punct-strani">Пункт выдачи по всей стране</option>
			<option value="samovivoz">Самовывоз из магазина</option>
		</select>
	</li>
	<li>
		<div>Способы оплаты:</div>
		<select name="payment" class="default-select az-payment">
			<option value="nal-carta">Наличными или картой курьеру</option>
		</select>
	</li>
	<li><button type="submit" class="btn az-review-submit">Отправить</button></li>
	</ul>
</form>

Вот сам js:
function sendReview(button) {
			$button = $(button);
			var $form = $(button).closest('form.az-review-form');
			
			var phone = $form.find('.az-phone').val(),
				address = $form.find('.az-address').val(),
				delivery = $form.find('.az-delivery option:selected').text(),
				payment = $form.find('.az-payment option:selected').text(),
				price = $('.js-price-change').text(),
				size = $('.js-product-variants-select option:selected').text();
			console.log(phone, ' ', address, ' ', delivery, ' ', payment, ' ', price, ' ', size)
			if (!phone || !address) {
				alert('Пожалуйста, заполните пустые поля!');
				return false;
			}

			var dataString = 'phone= '+ phone + '&address= ' + address + '&delivery= ' + delivery + '&payment= ' + payment + '&price= ' + price + '&size= ' + size;

			$.ajax({
	            type: "POST",
	            url: "send_review.php",
	            data: dataString,
	            headers: {
	            	"From" : "sonics1989@mail.ru"
	            },
	            success: function(response){
	            	console.log(response);
	            	if (response === 'success') {
	            		alert('Спасибо за заявку!');
	            	}
		        }
	        });

        	return false;
		}


В консоли всё пишется (js console.log), а вот при нажатии на кнопку "отправить", php присылает строчку:
success, '123', '123', 'Курьер по Беларуси' , '', '', ''
т.е. адрес - есть
телефон - есть
Доставка - есть
Оплаты нет, Цены нет, Размера нет....
а js выписывает строчку на кнопку "отправить" абсолютно все данные - 12345678 Ул. Пушкина Курьер по Беларуси Наличными или картой курьеру 35.00 31
Где я ошибаюсь? два дня не могу разобраться, помогите пожалуйста, в чем я туплю.. мне кажется в php что-то не так делаю :(
  • Вопрос задан
  • 79 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
$payment = trim($_POST)["payment"];
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы