У меня проблема с передачей переменных $ _SESSION через многостраничный процесс с использованием почты PHP. Письма проходят через нормально, хотя они не отображают переменные.
Моя цель состоит в том, чтобы пользователи заполняли формы на нескольких страницах и отправляли мне данные по электронной почте.
Страница 1
<?php
session_start();
?>
<form method="post" action="submitpage.php">
<label>
<input type="radio" name="vehicle_type" value="car" checked />
<img class="img-responsive" src="img/vehicle2.png">
</label>
<label>
<input type="radio" name="vehicle_type" value="suv" />
<img class="img-responsive" src="img/vehicle2.png">
</label>
<label>
<input type="radio" name="vehicle_type" value="van" />
<img class="img-responsive" src="img/vehicle2.png">
</label>
<label>
<input type="radio" name="vehicle_type" value="truck" />
<img class="img-responsive" src="img/vehicle2.png">
</label>
<label>
<input type="radio" name="vehicle_type" value="none" />
<img class="img-responsive" src="img/vehicle2.png">
</label>
</form>
Страница 2
<?php
session_start();
$_SESSION['vehicle_type'] = $_POST['vehicle_type'];
?>
<form method="post" action="emailexample.php" id="submit-form">
<input type="Email" name="email">
<input type="submit" name="submit" value="Submit" id="submitbtn">
</form>
Страница 3
<?php
session_start();
$to = '[email protected]';
$subject = 'test ';
$message = "Your Vehicle Type is: " . $_POST['vehicle_type'] ."\r\n";
$headers = 'From: [email protected]' . "\r\n" .mail($to, $subject, $message, $headers);
?>
На странице 1 вы должны поместить кнопку отправки что-то вроде этого
<input type="submit" name="submit" value="Submit" />
На странице 3 вы должны изменить
$message = "Your Vehicle Type is: " . $_SESSION['vehicle_type'] ."\r\n";
и вам не хватает точки с запятой в переменной $ headers в конце. Так должно быть
$headers = 'From: [email protected]' . "\r\n";
На странице 3
используйте $ _SESSION [‘vehicle_type’] вместо $ _POST [‘vehicle_type’]