[英]PHP Mail how to show success box on page
我是PHP的新手,我制作了此PHP郵件,用於常規聯系表單...表單完成后,頁面被重定向並顯示“消息已成功發送”。 問題是,我不希望頁面重定向。我想顯示有關索引的反饋,例如成功模式框或“您的消息已發送”形式下方的簡單文本。
有關如何執行此操作的任何想法?
<?php
$nome = $_POST['nome'];
$email = $_POST['email'];
$emaildestino = 'contato@zerodesign.com.br';
$email_from='contato@zerodesign.com.br';
$mensagem = $_POST['mensagem'];
$assunto = $_POST['assunto'];
$telefone = $_POST['telefone'];
$titulo = 'Mensagem - TESTE';
<?php
$nome = $_POST['nome'];
$email = $_POST['email'];
$emaildestino = 'contato@zerodesign.com.br';
$email_from='contato@zerodesign.com.br';
$mensagem = $_POST['mensagem'];
$assunto = $_POST['assunto'];
$telefone = $_POST['telefone'];
$titulo = 'Mensagem - TESTE';
$juntando = '<p>Esta mensagem foi enviada pelo site</p><br/>
<p><b>Nome:</b> '.$nome.'</b></p><br>
<p><b>Email:</b> '.$email.' </b></p><br>
<p><b>Telefone:</b> '.$telefone.'</p> </br>
<p><b>Mensagem:</b></p>
<p><i>'.$mensagem.'</i></p>
<hr>';
$headers = 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\n";
$headers .= "From: $email_from " . "\n";
$envio = mail($emaildestino, $titulo, $juntando, $headers, "-r".$email_from);
if($envio)
echo "Mensagem enviada com sucesso";
else
echo "A mensagem nãpode ser enviada";
?>
這是我的表格:
<form method="POST" name="contactform" action="envia.php">
<p><input id="inputt" type="text" name="nome" placeholder="Nome" id="nome" ></p>
<p><input id="inputt" type="text" name="email" placeholder="Email" id="email"></p>
<p><input class="inputt" type="text" name="telefone" placeholder="Telefone" id="telefone"> </p>
<p><textarea id="mensagem" name="mensagem" rows="5" cols="40" placeholder="Mensagem" id="mensagem"></textarea></p>
<input id="button" type="submit" value="Enviar"><br>
</form>
只需將action
屬性設為空,例如...
<form method="POST" name="contactform" action="">
因此,頁面將提交給自己。
如果我理解正確,那么您要執行的操作不是訪問envia.php頁面,而是需要在此處發送AJAX調用。 ajax調用完成后,您可以使用javascript用成功消息更新索引頁面。
我相信您正在尋找類似的東西:
PHP腳本添加到表單頁面的頂部,重定向到同一頁面
if(isset($_POST['nome'], $_POST['email'], $_POST['mensagem'], $_POST['assunto'], $_POST['telefone']){
...
$envio = mail($emaildestino, $titulo, $juntando, $headers, "-r".$email_from);
if($envio){
$msg = "Mensagem enviada com sucesso";
}else{
$msg = "A mensagem nãpode ser enviada";
}
}
HTML:
<form method="POST" name="contactform" action="<?php echo $_SERVER['SCRIPT_NAME'];?>">
<p><input id="inputt" type="text" name="nome" placeholder="Nome" id="nome" ></p>
<p><input id="inputt" type="text" name="email" placeholder="Email" id="email"></p>
<p><input class="inputt" type="text" name="telefone" placeholder="Telefone" id="telefone"> </p>
<p><textarea id="mensagem" name="mensagem" rows="5" cols="40" placeholder="Mensagem" id="mensagem"></textarea></p>
<input id="button" type="submit" value="Enviar"><br>
<span id="msg"><?php if(isset($msg)){echo $msg;}?></span>
</form>
查看您的網站,您可能想在頁面頂部添加<?php if(isset($msg)){echo $msg;}?>
或添加一個滾動到頁面底部的js腳本
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.