duanlei1957 2018-07-30 22:52
浏览 98

PHP重新提交和订阅数据问题

I'm facing two issue with the following code.

  1. I'm using the following code to submit the subscriber's email address to my email address the code is working and email is also being sent but the issue is that I can't see subscriber's email address.
  2. Every time when I refresh the page it shows an alert box saying resubmission confirmation and when I properly refresh the page by closing the alert box or pressing ok then it shows the success message that was showing while the subscriber submit his/her email.

The code is below :

     <?php

                if(isset($_POST['submit'])){
                  $email=$_POST['email'];

                  //send mail 
                 $to='info@soapbox.media';
                 $subject='New Subscriber';
                 $body='<html>
                 <body>
                 <h3>Feedback</h3>
                 <hr>

                 <p> Email :<br/>'.$email.'</p>

                 </body>

                 </html>';

                 $headers  ="From:<".$email.">
";
                 $headers .="reply-To:".$email."
";
                 $headers .="NINE-Version: 1.0
";
                 $headers .="Content-type: text/html; charset=utf-8";

              //confirmation mail
                         $user=$email;
                         $usersubject = "SoapBox";
                         $userheaders = "From:  info@soapbox.media
";
                         $usermessage = "Thank you for subscribing SoapBox.";


                        //sending process
                         $send=mail($to, $subject, $body, $headers);
                         $confirm=mail($user, $usersubject, $userheaders,$usermessage );

                         if($send && $confirm){
                          echo "<div class='alert alert-success alert-dismissible fade show'>
                            <button type='button' class='close' data-dismiss='alert'>&times;</button>
                            <strong>Success!</strong> You have subscribed successfully.
                          </div>";    
                         }

                         else{
                          echo "Failed";
                         }

                        }




?>               
  • 写回答

1条回答 默认 最新

  • 普通网友 2018-07-31 19:08
    关注
    1. $confirm=mail($user, $usersubject, $usermessage, $userheaders); by @Funk Forty Niner

    2. place a header('location: ' . $_SERVER['PHP_SELF']); after you've sent the mail - you will get rid of the post-header, so no more popup after F5 - You will get rid of your confirmation msg aswell so you could add a GET parameter to your URL to show the confirmation message.

    评论

报告相同问题?

悬赏问题

  • ¥20 fluent无法启动
  • ¥15 孟德尔随机化r语言运行问题
  • ¥15 pyinstaller编译的时候出现No module named 'imp'
  • ¥15 nirs_kit中打码怎么看(打码文件是csv格式)
  • ¥15 怎么把多于硬盘空间放到根目录下
  • ¥15 Matlab问题解答有两个问题
  • ¥15 LCD12864中文显示
  • ¥15 在使用CH341SER.EXE时不小心把所有驱动文件删除了怎么解决
  • ¥15 gsoap生成onvif框架
  • ¥15 有关sql server business intellige安装,包括SSDT、SSMS。