php mail() two copies sent

前端 未结 2 1830
误落风尘
误落风尘 2020-12-12 06:16

I have a simple message that I send using php mail(). The code used:

//recipient info
$to = \"$bookernavn <$mail>\";
$from = \"Visens Venner Hillerød &         


        
2条回答
  •  北海茫月
    2020-12-12 07:04

    You don't check to see if the form has been submitted so a browser refresh will send the form data again and cause the mail to be sent again. This also happens when a user presses the back button.

    After the email is sent you need to do a 303 redirect to prevent the re-submission. You can redirect to the same page if you'd like.

    This is called the Post/Redirect/Get pattern.

    mail(...);
    header('Location: /some-page-php', true, 303);
    exit;
    

提交回复
热议问题