Я новичок в php, и был бы очень признателен за любую помощь, кто-нибудь может мне помочь с этим! Вот пример кода моего флажка:
<legend>Fiction of Interest</legend>
<p class="group">Please check the literary genres that are of interest to you:</p>
<ul class="formList">
<li>
<input type="checkbox" name="fictioninterest[]" value="literaryfiction" id="lfitem"<?php if ((isset($fictioninterest)) && (in_array("literaryfiction", $fictioninterest))) { echo "checked"; } ?> />
<label for="in">Literary Fiction</label>
Вот пример кода моего переключателя:
<legend>Connecting with the Author</legend>
<p class="group">Would you like to coincide your Book Club event with the author's BlogTalk radio interview?</p>
<p class="group">
<label>
<input type="radio" name="blogtalk" value="yes" id="yesitem" <?php if ((isset($blogtalk)) && ($blogtalk==='yes')) { echo "checked"; } ?> />
<label for="yesitem">Yes</label>
<br>
<label>
<input type="radio" name="blogtalk" value="no" id="noitem" <?php if ((isset($blogtalk)) && ($blogtalk==='no')) { echo "checked"; } ?> />
<label for="noitem">Not at this time</label>
</p>
А вот мой текстовый код города:
<p class="group">
<label for="comments" class="text">Additional comments</label>
<textarea name="comments" id="comments">
<?php if (isset($comments)) { echo $comments; } ?></textarea>
</p>
Я был бы очень признателен за любую помощь в этом! Спасибо вам большое!
Я извиняюсь — как я уже сказал, я пытаюсь научить себя php и до сих пор осваиваю даже основы. Когда моя форма обрабатывается и отправляет результаты по электронной почте, флажки возвращаются, регистрируя «ноль», хотя я выбрал несколько. Радио кнопки также возвращаются «ноль». И никакой контент не передается из моего раздела текстовой области на электронную почту. Я прошу прощения за то, что не объяснил должным образом, и еще раз, так что ценю вашу помощь!
<?php
require_once("included_functions.php");
if (($_SERVER['REQUEST_METHOD'] == 'POST') && (!empty($_POST['action']))):
$name = $_REQUEST['name'];
$email = $_REQUEST['email'];
$formerrors = false;
if ($name === '') :
$err_name = '<div class="error">Sorry, your name is a required field</div>';
endif; // input field empty
if ($email === '') :
$err_email = '<div class="error">Sorry, your email is a required field</div>';
endif; // input field empty
if (isset($_POST['comments'])) {
$comments = filter_var($_POST['comments'], FILTER_SANITIZE_STRING );
}
$formdata = array (
'name' => $name,
'email' => $email,
'fictioninterest' => $fictioninterest,
'bookclub' => $bookclub,
'newsletter' => $newsletter,
'blogtalk' => $blogtalk,
'skype' => $skype
);
if (!($formerrors)) :
$to = "[email protected]";
$subject = "From $name -- Signup Page";
$message = json_encode($formdata);
$replyto = "From: [email protected] \r\n".
"Reply-To: [email protected] \r\n";
if (mail($to, $subject, $message)):
$msg = "";
redirect_to("confirmation.html");
else:
$msg = "Problem sending the message";
endif; // mail form data
endif; // check for form errors
endif; //form submitted
?>
Ваша проблема может быть в том, что переменные типа $fictoninterest
не определены. Вы только заявили $name
а также $email
, Так что вы можете просто добавить что-то вроде
$fictioninterest = $_REQUEST['fictioninterest'];
к вашему коду — конечно, вы должны сделать это для всех полей ввода, с которыми вы хотите работать ($comments
, $blogtalk
, так далее). Ох, и вы могли бы использовать $_POST
вместо $_REQUEST
,
Других решений пока нет …