Contact Form PHP Email Script -
hello having problem email script on site.
i used files
https://jonbake.com/blog/bootstrap-3-contact-form-with-captcha/
but add fields. sending email i'm not receiving data inputted on fields.
here html form
<form role="form" id="feedbackform"> <div class="form-group"> <input type="text" class="form-control" id="first_name" name="first_name" placeholder="first name"> <span class="help-block" style="display: none;">please enter name.</span> </div> <div class="form-group"> <input type="text" class="form-control" id="last_name" name="last_name" placeholder="last name"> <span class="help-block" style="display: none;">please enter name.</span> </div> <div class="form-group"> <input type="email" class="form-control" id="email" name="email" placeholder="email address"> <span class="help-block" style="display: none;">please enter valid e-mail address.</span> </div> <div class="form-group"> <input type="text" class="form-control" id="company_name" name="company_name" placeholder="company"> <span class="help-block" style="display: none;">please enter name.</span> </div> <div class="form-group"> <textarea rows="10" cols="100" class="form-control" id="message" name="message" placeholder="message"></textarea> <span class="help-block" style="display: none;">please enter message.</span> </div> <div class="form-group"> <label for="selectbasic">how did hear us?</label> <select id="selectbasic" name="selectbasic" class="form-control"> <option>select</option> <option>search engine</option> <option>microsoft dpe</option> <option>microsoft event</option> <option>social media</option> <option>word of mouth</option> <option>other</option> </select> </div> <img id="captcha" src="library/vender/securimage/securimage_show.php" alt="captcha image" /> <a href="#" onclick="document.getelementbyid('captcha').src = 'library/vender/securimage/securimage_show.php?' + math.random(); return false" class="btn btn-info btn-sm">show different image</a><br/> <div class="form-group" style="margin-top: 10px;"> <input type="text" class="form-control" name="captcha_code" id="captcha_code" placeholder="for security, please enter code displayed in box." /> <span class="help-block" style="display: none;">please enter code displayed within image.</span> </div> <span class="help-block" style="display: none;">please enter security code.</span> <button type="submit" id="feedbacksubmit" class="btn btn-primary btn-lg" style="display: block; margin-top: 10px;">send feedback</button> </form>
this php script
<?php //start session -- needed securimage captcha check session_start(); //add e-mail address here define("my_email", "dummyemail@gmail.com"); /** * sets error header , json error message response. * * @param string $messsage error message of response * @return void */ function errorresponse ($messsage) { header('http/1.1 500 internal server error'); die(json_encode(array('message' => $messsage))); } /** * return formatted message body of form: * name: <name of submitter> * comment: <message/comment submitted user> * * @param string $name name of submitter * @param string $messsage message/comment submitted */ function setmessagebody ($first_name, $last_name, $email, $message, $selectbasic) { $message_body = "name: " . $first_name. $last_name. "\n\n"; $message_body = "email: " . $email."\n\n"; $message_body = "company name: " . $company_name."\n\n"; $message_body .= "message:\n" . nl2br($message); $message_body .= "how did hear us?:" . $selectbasic."\n\n"; return $message_body; } $first_name = $_post['first_name']; $last_name = $_post['last_name']; $email = $_post['email']; $company_name = $_post['company_name']; $message = $_post['message']; $selectbasic = $_post['selectbasic']; header('content-type: application/json'); //do simple validation. should have been validated on client-side if (empty($email) || empty($message)) { errorresponse('email or message empty.'); } //do captcha check, make sure submitter not robot:)... include_once './vender/securimage/securimage.php'; $securimage = new securimage(); if (!$securimage->check($_post['captcha_code'])) { errorresponse('invalid security code'); } //try send message if(mail(my_email, "feedback form results", setmessagebody($_post["first_name"], $_post["last_name"], $_post["email"], $_post["selectbasic"], $message), "from: $first_name, $last_name")) { echo json_encode(array('message' => 'your message submitted.')); } else { header('http/1.1 500 internal server error'); echo json_encode(array('message' => 'unexpected error while attempting send e- mail.')); } ?>
i don't know what's wrong need capture data.
thanks help.
this getting after putting dot before equal sign
new code i'm using achieving image above
<?php //start session -- needed securimage captcha check session_start(); //add e-mail address here define("my_email", "aareyes00@ymail.com"); /** * sets error header , json error message response. * * @param string $messsage error message of response * @return void */ function errorresponse ($messsage) { header('http/1.1 500 internal server error'); die(json_encode(array('message' => $messsage))); } /** * return formatted message body of form: * name: <name of submitter> * comment: <message/comment submitted user> * * @param string $name name of submitter * @param string $messsage message/comment submitted */ function setmessagebody ($first_name, $last_name, $email, $company_name, $message, $selectbasic) { $message_body .= "first name: " . $first_name."\n\n"; $message_body .= "last name: " . $last_name."\n\n"; $message_body .= "email: " . $email."\n\n"; $message_body .= "company name:" . $company_name."\n\n"; $message_body .= "message:" . $message. "\n\n"; $message_body .= "how did hear us?" . $selectbasic."\n\n"; return $message_body; } $first_name = $_post['first_name']; $last_name = $_post['last_name']; $email = $_post['email']; $company_name = $_post['company_name']; $message = $_post['message']; $selectbasic = $_post['selectbasic']; header('content-type: application/json'); //do simple validation. should have been validated on client-side if (empty($email) || empty($message)) { errorresponse('email or message empty.'); } //do captcha check, make sure submitter not robot:)... include_once './vender/securimage/securimage.php'; $securimage = new securimage(); if (!$securimage->check($_post['captcha_code'])) { errorresponse('invalid security code'); } //try send message if(mail(my_email, "feedback form results", setmessagebody($_post["first_name"], $_post["last_name"], $_post["email"], $_post["message"], $_post["selectbasic"]), "from: $first_name, $last_name")) { echo json_encode(array('message' => 'your message submitted.')); } else { header('http/1.1 500 internal server error'); echo json_encode(array('message' => 'unexpected error while attempting send e- mail.')); } ?>
i give better solution if can give me data receiving in email. seems, missed dot (.) in function setmessagebody(...) on these line-
$message_body = "email: " . $email."\n\n"; $message_body = "company name: " . $company_name."\n\n";
add dot (.)-
$message_body .= "email: " . $email."\n\n"; $message_body .= "company name: " . $company_name."\n\n";
check select option. line
<option>select</option> <option>search engine</option> <option>microsoft dpe</option> <option>microsoft event</option> <option>social media</option> <option>word of mouth</option> <option>other</option>
will like-
<option>select</option> <option value="search engine">search engine</option> <option value="microsoft dpe">microsoft dpe</option> <option value="microsoft event">microsoft event</option> <option value="social media">social media</option> <option value="word of mouth">word of mouth</option> <option value="other">other</option>
Comments
Post a Comment