Это сработало для меня:
<script>
function sel_file() {
$("input[name=userfile]").trigger('click');
}
</script>
<input type="file" name="userfile" id="userfile" />
<a href="javascript:sel_file();">Click</a>
Если вы запускаете этот код на локальном сервере (т.е. на вашем компьютере в целях разработки), он не отправит электронное письмо получателю. Что произойдет, это создаст файл .txt
в папке с именем mailoutput
.
В случае, если вы используете бесплатную службу хозингирования, такую как 000webhost
или hostinger
, эти поставщики услуг отключают функцию mail()
, чтобы предотвратить непреднамеренное использование спуфинга электронной почты, рассылки спама и т. Д. Я предпочитаю, чтобы вы свяжитесь с ними, чтобы узнать, поддерживают ли они эту функцию.
Если вы уверены, что поставщик услуг поддерживает функцию mail (), вы можете проверить это руководство PHP для получения дополнительной справки, PHP mail ()
Чтобы проверить, поддерживает ли ваш хостинг сервис. поддержите функцию mail (), попробуйте запустить этот код, (не забудьте изменить адрес электронной почты получателя)
<?php
$to = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?>
Надеюсь, это помогло.
Попробуйте это
if ( Попробуйте это
[110]POST['submit']) {
$success= mail($to, $subject, $body, $from);
if($success)
{
echo '
<p>Your message has been sent!</p>
';
} else {
echo '
<p>Something went wrong, go back and try again!</p>
';
}
}
Я думаю, что это должно сработать. Я просто добавил if(isset
и добавил конкатенацию к переменным в теле, чтобы отделить PHP от HTML.
<?php
$name = Я думаю, что это должно сработать. Я просто добавил if(isset
и добавил конкатенацию к переменным в теле, чтобы отделить PHP от HTML.
[110]POST['name'];
$email = Я думаю, что это должно сработать. Я просто добавил if(isset
и добавил конкатенацию к переменным в теле, чтобы отделить PHP от HTML.
[110]POST['email'];
$message = Я думаю, что это должно сработать. Я просто добавил if(isset
и добавил конкатенацию к переменным в теле, чтобы отделить PHP от HTML.
[110]POST['message'];
$from = 'From: yoursite.com';
$to = 'contact@yoursite.com';
$subject = 'Customer Inquiry';
$body = "From:" .$name."\r\n E-Mail:" .$email."\r\n Message:\r\n" .$message;
if (isset( Я думаю, что это должно сработать. Я просто добавил if(isset
и добавил конкатенацию к переменным в теле, чтобы отделить PHP от HTML.
[110]POST['submit']))
{
if (mail ($to, $subject, $body, $from))
{
echo '<p>Your message has been sent!</p>';
}
else
{
echo '<p>Something went wrong, go back and try again!</p>';
}
}
?>
Просто добавьте несколько заголовков перед отправкой почты:
<?php
$name = Просто добавьте несколько заголовков перед отправкой почты:
[110] И еще одна вещь. Функция mail()
не работает в localhost. Загрузите свой код на сервер и попробуйте.
POST['name'];
$email = Просто добавьте несколько заголовков перед отправкой почты:
[110] И еще одна вещь. Функция mail()
не работает в localhost. Загрузите свой код на сервер и попробуйте.
POST['email'];
$message = Просто добавьте несколько заголовков перед отправкой почты:
[110] И еще одна вещь. Функция mail()
не работает в localhost. Загрузите свой код на сервер и попробуйте.
POST['message'];
$from = 'From: yoursite.com';
$to = 'contact@yoursite.com';
$subject = 'Customer Inquiry';
$body = "From: $name\n E-Mail: $email\n Message:\n $message";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html\r\n";
$headers .= 'From: from@example.com' . "\r\n" .
'Reply-To: reply@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
И еще одна вещь. Функция mail()
не работает в localhost. Загрузите свой код на сервер и попробуйте.
$name = [110]POST['name'];
$email = [110]POST['email'];
$reciver = '/* Reciver Email address */';
if (filter_var($reciver, FILTER_VALIDATE_EMAIL)) {
$subject = $name;
// To send HTML mail, the Content-type header must be set.
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From:' . $email. "\r\n"; // Sender's Email
//$headers .= 'Cc:' . $email. "\r\n"; // Carbon copy to Sender
$template = '<div style="padding:50px; color:white;">Hello ,<br/>'
. '<br/><br/>'
. 'Name:' .$name.'<br/>'
. 'Email:' .$email.'<br/>'
. '<br/>'
. '</div>';
$sendmessage = "<div style=\"background-color:#7E7E7E; color:white;\">" . $template . "</div>";
// Message lines should not exceed 70 characters (PHP rule), so wrap it.
$sendmessage = wordwrap($sendmessage, 70);
// Send mail by PHP Mail Function.
mail($reciver, $subject, $sendmessage, $headers);
echo "Your Query has been received, We will contact you soon.";
} else {
echo "<span>* invalid email *</span>";
}