Advertisement
Guest User

Untitled

a guest
Jun 16th, 2016
304
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.16 KB | None | 0 0
  1. <?php
  2. // Please specify your Mail Server - Example: mail.example.com.
  3. //ini_set("SMTP","localhost");
  4. // Please specify an SMTP Number 25 and 8889 are valid SMTP Ports.
  5. //ini_set("smtp_port","25");
  6. // Please specify the return address to use
  7. //ini_set('sendmail_from', 'example@localhost');
  8.  
  9. // define variables and set to empty values
  10. $sendernameErr = $emailErr = $websiteErr = $commentErr = "";
  11. $sendername = $email = $comment = $website = "";
  12. $sendernameErrFlag = $emailErrFlag = $websiteErrFlag = $commentErrFlag = 2;
  13. //Set variable inputs from form.
  14. function test_input($data) {
  15. $data = trim($data);
  16. $data = stripslashes($data);
  17. $data = htmlspecialchars($data);
  18. return $data;
  19. }
  20. if ($_SERVER["REQUEST_METHOD"] == "POST") {
  21. if ($referrer == "") {
  22. $referrer = "This page was accessed directly";
  23. }
  24. if (empty($_POST["sendername"])) {
  25. $sendernameErr = "Name is required";
  26. $sendernameErrFlag = 1;
  27. } else {
  28. $sendername = test_input($_POST["sendername"]);
  29. // check if sendername only contains letters and whitespace
  30. if (!preg_match("/^[a-zA-Z ]*$/",$sendername)) {
  31. $sendernameErr = "Only letters and white space allowed";
  32. $sendernameErrFlag = 1;
  33. } else {
  34. $sendernameErrFlag = 0;
  35. }
  36. }
  37.  
  38. if (empty($_POST["email"])) {
  39. $emailErr = "Email is required";
  40. $emailErrFlag = 1;
  41. } else {
  42. $email = test_input($_POST["email"]);
  43. // check if e-mail address is well-formed
  44. if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
  45. $emailErr = "Invalid email format";
  46. $emailErrFlag = 1;
  47. } else {
  48. $emailErrFlag = 0;
  49. }
  50. }
  51.  
  52. if (empty($_POST["website"])) {
  53. $website = "";
  54. } else {
  55. $website = test_input($_POST["website"]);
  56. // check if URL address syntax is valid (this regular expression also allows dashes in the URL)
  57. if (!preg_match("/b(?:(?:https?|ftp)://|www.)[-a-z0-9+&@#/%?=~_|!:,.;]*[-a-z0-9+&@#/%=~_|]/i",$website)) {
  58. $websiteErr = "Invalid URL";
  59. $websiteErrFlag = 1;
  60. } else {
  61. $websiteErrFlag = 0;
  62. }
  63. }
  64. if (empty($_POST["comment"])) {
  65. $commentErr = "Comment is required";
  66. $commentErrFlag = 1;
  67. } else {
  68. $comment = test_input($_POST["comment"]);
  69. $commentErrFlag = 0;
  70. }
  71. }
  72. ?>
  73. <p><span class="error">* required field.</span></p>
  74. <form method="post" action="<?php echo the_permalink();//htmlspecialchars($_SERVER["REQUEST_URI"], ENT_QUOTES, "utf-8");?>">
  75. Name: <input type="text" name="sendername" value="<?php echo $sendername;?>">
  76. <span class="error">* <?php echo $sendernameErr;?></span>
  77. <br><br>
  78. E-mail: <input type="text" name="email" value="<?php echo $email;?>">
  79. <span class="error">* <?php echo $emailErr;?></span>
  80. <br><br>
  81. Website: <input type="text" name="website" value="<?php echo $website;?>">
  82. <span class="error"><?php echo $websiteErr;?></span>
  83. <br><br>
  84. Comment: <textarea name="comment" rows="5" cols="40"><?php echo $comment;?></textarea>
  85. <span class="error">* <?php echo $commentErr;?></span>
  86. <br><br>
  87. <input type="submit" name="submit" value="Submit">
  88. </form>
  89. <?php
  90. /*
  91. echo "<h2>Your Input:</h2>";
  92. echo $sendername;
  93. echo "<br>";
  94. echo $email;
  95. echo "<br>";
  96. echo $website;
  97. echo "<br>";
  98. echo $comment;
  99. echo "<br>";
  100. echo $headers;
  101. */
  102. //print_r($_POST);
  103. //echo $sendernameErrFlag . "<br/>" . $emailErrFlag . "<br/>" . $websiteErrFlag . "<br/>" . $commentErrFlag;
  104. if($sendernameErrFlag == 0 && $emailErrFlag == 0 && $websiteErrFlag == 0 && $commentErrFlag == 0) {
  105. $headers = "From: <".$_POST["sendername"].">".$_POST["email"];
  106. mail("test@gmail.com","My subject",$comment,$headers);
  107. echo '<script>alert("Message sent successfully!!!");</script>';
  108. } else {
  109. $sendernameErrFlag = $emailErrFlag = $websiteErrFlag = $commentErrFlag = 2;
  110. }
  111. ?>
  112.  
  113. /* Email SMTP */
  114. add_action( 'phpmailer_init', 'my_phpmailer_init' );
  115. function my_phpmailer_init( PHPMailer $phpmailer ) {
  116. $phpmailer->IsSMTP();
  117. $phpmailer->Host = 'localhost';
  118. $phpmailer->Port = 25; // could be different
  119. //$phpmailer->Username = 'test@example.com'; // if required
  120. //$phpmailer->Password = 'password'; // if required
  121. $phpmailer->SMTPAuth = false; // if required
  122. //$phpmailer->SMTPSecure = 'tls'; // enable if required, 'tls' is another possible value
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement