Я очень новичок в php и не могу понять, что в этом плохого. Любая помощь будет оценена по достоинству. Кроме того, было бы полезно иметь способ проверить, является ли это я или только мой хостинг, который не позволит мне отправить электронное письмо. Итак, если есть способ, который я мог бы сделать, пожалуйста, дайте мне знать.Проблемы с формой php mail()
<?php
session_start();
$visitor_email = '';
$user_message = '';
//Validates the email address that the user entered
function spamcheck($field)
{
// Sanitize e-mail address
$field=filter_var($field, FILTER_SANITIZE_EMAIL);
// Validate e-mail address
if(filter_var($field, FILTER_VALIDATE_EMAIL))
{
return TRUE;
}
else
{
return FALSE;
}
}
//When user clicks 'submit'
if (!isset($_POST['submit']))
{
$visitor_email = $_POST['email'];
$user_message = $_POST['message'];
//if user entered email address
if (isset($_POST['email']))
{
// Check if email address is valid
$mailcheck = spamcheck($visitor_email);
if ($mailcheck==FALSE)
{
echo "Invalid input";
}
else
{
$to = "[email protected]";
$subject="Customer Feedback";
$from = $visitor_email;
$ip = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : '';
$body = "A patron submitted the contact form:\n".
"Email: $visitor_email \n".
"Message: \n ".
"$user_message\n".
"IP: $ip\n";
$headers = "From: $from \r\n";
$headers .= "Reply-To: $visitor_email \r\n";
mail($to, $subject, $body,$headers);
header('Location: home.html');
}
}
}
?>
<form id="feedBackForm" action="<?php echo htmlentities($_SERVER['PHP_SELF'])?>" method="post">
<fieldset id="personal">
<legend>Your Information</legend>
<label for="email">Contact Email: </label>
<input id="email" name="email" type="email" value='<?php echo htmlentities($visitor_email) ?>'/>
</fieldset>
<fieldset id="text">
<legend>Message:</legend>
<label for="message"></label>
<textarea id="message" name="message"><?php echo htmlentities($user_message) ?></textarea>
</fieldset><p><input type="submit" value="Submit" name="submit"/>
<input type="reset" value="Reset"/>
</p>
</form>
Я попробовал несколько различных итераций, и это именно там, где я, случается в тот момент,
В чем проблема? Что не работает? Вы получаете сообщения об ошибках? –
Это 'if (! Isset ($ _ POST ['submit']))' вы говорите ', если это ** не ** установлено, ..... "вы хотите' if (isset ($ _ POST [ 'submit'])) ' –
@ Fred-ii- Вам следует отправить ответ. – jeroen