Advertisement
Guest User

Ballotpedia test

a guest
Feb 25th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.77 KB | None | 0 0
  1. Here is a rough idea:
  2.  
  3. <!DOCTYPE html>
  4. <html>
  5. <head>
  6. <meta charset="UTF-8">
  7. <title>Code Test for Ballotpedia</title>
  8. </head>
  9. <body>
  10. <h1>Code Test for Ballotpedia</h1>
  11. <form id="contact_form" action="#" method="POST" enctype="multipart/form-data">
  12. <div class="row">
  13. <label for="name">Your name:</label><br />
  14. <input id="name" class="input" name="name" type="text" value="" size="30" /><br />
  15. </div>
  16. <div class="row">
  17. <label for="email">Your email:</label><br />
  18. <input id="email" class="input" name="email" type="text" value="" size="30" /><br />
  19. </div>
  20. <div class="row">
  21. <label for="message">Your message:</label><br />
  22. <textarea id="message" class="input" name="message" rows="7" cols="30"></textarea><br />
  23. </div>
  24. <input id="submit_button" type="submit" value="Send email" />
  25. </form>
  26.  
  27. <script>
  28.  
  29. // form processing
  30.  
  31. $(document).ready(function() {
  32.  
  33. $('form').submit(function(event) {
  34.  
  35. var formData = {
  36. 'name' : $('input[name=name]').val(),
  37. 'email' : $('input[name=email]').val(),
  38. 'message' : $('input[name=message]').val()
  39. };
  40.  
  41. $.ajax({
  42. type : 'POST',
  43. url : 'process.php',
  44. data : formData,
  45. dataType : 'json',
  46. encode : true
  47. })
  48. .done(function(data) {
  49. });
  50.  
  51. event.preventDefault();
  52. });
  53.  
  54. });
  55. </script>
  56. </body>
  57. </html>
  58.  
  59. This would then be that process.php referenced above:
  60.  
  61. <?php
  62.  
  63. $form_errors = array();
  64. $response_data = array();
  65.  
  66.  
  67. if (empty($_POST['name']))
  68. $form_errors['name'] = 'Name is required.';
  69.  
  70. if (empty($_POST['email']))
  71. $form_errors['email'] = 'Email is required.';
  72.  
  73. if (empty($_POST['message']))
  74. $form_errors['message'] = 'Message is required.';
  75.  
  76. if ( ! empty($errors)) {
  77.  
  78. // if there are items in our errors array, return those errors
  79. $data['success'] = false;
  80. $data['errors'] = $errors;
  81. } else {
  82.  
  83. // send email
  84. $to = "ballotpedia@example.com";
  85. $email_subject = "Contact form submission: " . $_POST['name'];
  86. $email_body = "You have received a new message. ".
  87. " Here are the details:\n Name: $name \n ".
  88. "Email: $email_address\n Message \n $message";
  89. $headers = "From: ballotpedia@example.com\n";
  90. $headers .= "Reply-To: ballotpedia@example.com";
  91. mail($to,$email_subject,$email_body,$headers);
  92.  
  93. $data['success'] = true;
  94. $data['message'] = 'Thanks for your message!';
  95. }
  96.  
  97. // return response back to page
  98. echo json_encode($data);
  99.  
  100. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement