frozzetron
@frozzetron
Ya horosho znay English yazik)

PHP форма не отправляет чекбоксы, как исправить?

В общем, есть форма которая отправляется на почту:
<form action="php/checkbox-form.php" method="post">
	<div class="container_col">
		<p><font size="" color="" face="">Наведите на название услуги для появления подсказки</font></p><br>
												 
			<h2>Дополнительные услуги</h2>
				<div class="cell">
						<label>
							<b><span class="label">Массфоловинг:</span></b>
							<div class="servl1"><input class="checkbox" type="checkbox" name="formDoor[]" value="1" />
							<span class="checkbox-custom"></span></div>
						</label><br><br>

						<label>
							<b><span class="label">Масслайкинг:</span></b>
							<div class="servl2"><input class="checkbox" type="checkbox" name="formDoor[]" value="2" />
							<span class="checkbox-custom"></span></div>
						</label><br><br>	
						
						<b><p align="center" face="ARIAL BLACK">Лайки:</p></b>
						<label>
							<span class="label">30 000 - 2500 рублей</span>
							<div class="servl3"><input class="checkbox" type="checkbox" name="formDoor[]" value="3" />
							<span class="checkbox-custom"></span></div>
						</label><br>
		 
						<label>
							<span class="label">60 000 - 3000 рублей</span>
							<div class="servl4"><input class="checkbox" type="checkbox" name="formDoor[]" value="4" />
							<span class="checkbox-custom"></span></div>
						</label><br>
					 
						<label>
								<span class="label">90 000 - 3500 рублей</span>
								<div class="servl5"><input class="checkbox" type="checkbox" name="formDoor[]" value="5" />
								<span class="checkbox-custom"></span></div>
						</label><br><br>
						
						<label>
							<b><span class="label">Настройка таргетированной рекламы:</span></b>
							<div class="servl6"><input class="checkbox" type="checkbox" name="formDoor[]" value="6" />
							<span class="checkbox-custom"></span></div>
							</label><br><br>
							
						<b><p align="center" face="ARIAL BLACK">Копирайт:</p></b>
						<label>
							<span class="label">30 постов</span>
							<div class="servl7"><input class="checkbox" type="checkbox" name="formDoor[]" value="7" />
							<span class="checkbox-custom"></span></div>
						</label><br>
						
						<label>
							<span class="label">60 постов</span>
							<div class="servl8"><input class="checkbox" type="checkbox" name="formDoor[]" value="8" />
							<span class="checkbox-custom"></span></div>
						</label><br><br>
					
						<b><p align="center" face="ARIAL BLACK">Вывод в топ по геолокации и хештегам:</p></b>
						<label
							<span class="label">30 постов</span>
							<div class="servl9"><input class="checkbox" type="checkbox" name="formDoor[]" value="9" />
							<span class="checkbox-custom"></span></div>
					</label><br>
					
					<label>
						<span class="label">60 постов</span>
						<div class="servl10"><input class="checkbox" type="checkbox" name="formDoor[]" value="10" />
						<span class="checkbox-custom"></span></div>
					</label><br><br>

					<b><p align="center" face="ARIAL BLACK">Оформление сторис:</p></b>
					<label>
						<span class="label">60 постов</span>
						<div class="servl11"><input class="checkbox" type="checkbox" name="formDoor[]" value="11" />
						<span class="checkbox-custom"></span></div>
					</label><br>
				</div>
				
			<input type="submit" name="formSubmit" id="send-analysis-form" class="button accent-button" value="Отправить"  />
													
	</div>
</form>


CSS
.checkbox {
	display: none;
}
.checkbox-custom {
	position: relative;    
	width: 20px;            
	height: 20px;         
	border: 1px solid #333;
	border-radius: 30px;
	margin-left: 50px;
}
.checkbox-custom,
.label {
	display: inline-block;
	vertical-align: middle;
	 margin-top: 2%;
}
.checkbox:checked + .checkbox-custom::before {
	content: "";            
	display: block;			
	position: absolute;      
	top: -2px;
	right: -2px;
	bottom: -2px;
	left: -2px;
	background: #1E90FF;  
	border-radius: 30px;
}
.servl1 {
margin-left: 192%;
margin-top: -15%;
}
.servl2 {
margin-left: 210%;
margin-top: -15%;
}
.servl3 {
margin-left: 145%;
margin-top: -15%;
}
.servl4 {
margin-left: 144%;
margin-top: -15%;
}
.servl5 {
margin-left: 145%;
margin-top: -15%;
}
.servl6 {
margin-left: 108%;
margin-top: -8%;
}
.servl7 {
margin-left: 270%;
margin-top: -28%;
}
.servl8 {
margin-left: 270%;
margin-top: -28%;
}
.servl9 {
margin-left: 270%;
margin-top: -28%;
}
.servl10 {
margin-left: 270%;
margin-top: -28%;
}
.servl11 {
margin-left: 270%;
margin-top: -28%;
}

Есть PHP код:
<?php
echo '<!doctype html>';
echo '<html>';
echo '<head>';
echo '<meta charset="utf-8">';
echo '<title>Книги</title>';
echo '</head>';
echo '<body>';
if(isset($_POST['submit'])) {
    if(empty($_POST['choice'])) {
        echo("<p>Вы ничего не выбрали.</p>");
    } else {
        echo "<p>Вы выбрали следующие книги:</p>";
        for($i=0; $i < count($_POST['choice']); $i++) {
            echo $_POST['choice'][$i]."<br/>";
        }
        if(isset($_POST['things'])) {
            if(empty($_POST['things'])) {
                echo '<hr>';
                echo '<p>Готово</p>';
                echo '<p style="font-size: 17px;"><a href="index.html" style="text-decoration: underline;" title="Вернуться на главную">Вернуться на главную</a></p>';
            } else {
                echo "<hr><p>Вы ввели:</p>";
                echo $_POST['things'];
                echo '<hr>';
                echo '<p>Готово</p>';
                echo '<p style="font-size: 17px;"><a href="index.html" style="text-decoration: underline;" title="Вернуться на главную">Вернуться на главную</a></p>';
            }
        }                   
    }
}
echo '</body>';
echo '</html>';

$chosen = is_array($_POST['choice']) ? $_POST['choice'] : array();
    $chosen = implode (', ', $chosen ); 
$whatChoose = $_POST['choice'];
$whatWrite = $_POST['things'];
$toEmail = "grembot59@gmail.com";
$subject = "Выбор сделан";
$check = "";
if(!empty($_POST["choice"]) && is_array($_POST["choice"])) {
    $check = implode(" ", $_POST['choice']);
}
$messageOK = "Выбор: ".$whatChoose.$check."<br>Текст: ".$whatWrite;
mail ($toEmail, $subject, $messageOK);
?>


Но на почту приходит следующее из PHP:
"Выбор:
Текст:" (Предпоследняя строка кода)
Как сделать так, что бы выбранные чекбоксы приходили на почту и не тронутые не приходили? Очень нужна помощь.

P.S. PHP не пой конек, я пытался что-то сделать, но нужна помощь знающего человека.
  • Вопрос задан
  • 342 просмотра
Пригласить эксперта
Ответы на вопрос 3
Stimulate
@Stimulate
могу
Не увидел в вашем PHP вывода formDoor
Ответ написан
Комментировать
dhs
@dhs
Web-разработчик
Может я ошибаюсь, но данный php код никогда не получит содержимое данной формы, ведь в php есть проверка на ppost переменную "submit", а в форме нет поля с таким именем. Быть может, вы смотрите не в тот php файл? Ещё посмотрите ответ Stimulate.
Ответ написан
Комментировать
@yashenkov
Как уже писал Vasiliy Novosad php файл не от этой формы
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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