leemer
New Members-
Posts
4 -
Joined
-
Last visited
Never
Profile Information
-
Gender
Not Telling
leemer's Achievements
Newbie (1/5)
0
Reputation
-
Thanks for the help
-
and thanks for the quick reply .. Just wanting to have a form to user to fill out lwith name,address,city,state,zipcode,and message area with a random code or letters to help prevent abuse. and another thing is i do not know how to do a drop down box with all the states in it abbervated like MS etc etc...
-
oooops oin my part thanks for the info .. well i am a noobie to php and i know what i have in mind just not sure how to get there. if this script cant be used how could i build a script that would work for my needs with security random letters/digits and also all the fields i need with error checking as well like wrong email or cant leave blank etc..
-
Can someone look over this script and tell me why in this form mailer that the address,city,state,zipcode, and phone number does not show up? and i recieve no errors as well. but, everything else seems to work just fine like the name,email and random numbers. <?php //----- Start Config -----\\ //enter the path to sendmail $mail_path = "/usr/sbin/sendmail"; //Recipient should be selected from a list, true or false $listofrecipients = "false"; //sub variable (only edit if above value is set to false) //enter the email address you wish emails to be sent to $mail_to = "email is added here"; //sub variable (only edit if above value is set to true) //define list of recipients the user can chose from. Name & Email address should be seperated by >< $recipientslist = array("Name 1 >< name1@yourdomain.com", "Name 2 >< name2@yourdomain.com", "Name 3 >< name3@yourdomain.com"); //Subject should be selected from a list, true or false $listofsubjects = "true"; //sub variable (only edit if above value is set to true) //define list of subjects the user can chose from $subjects = array("Ordering", "Free Price Quote","Questions","Website Help", "Other"); //use security code feature, true or false $usesecuritycode = "true"; //use time limit feature, true or false $usetimelimit = "true"; //sub variable (only edit if above value is set to true) //set time delay if using time limit feature $delay = "60"; //redirect to another page after successful submission, true or false $redirectonsuccess = "true"; //sub variable (only edit if above value is set to true) //set address of page to redirect to after successful submission, can be relative $redirecturl = "webpage on server"; //allow user to get a copy of the message sent to them, true or false $copyme = "true"; //store submissions in a database, true or false $store = "true"; //sub variables (only edit if above value is set to true //MySQL Host $host = "localhost"; //MySQL User $user = "username"; //MySQL Pass $pass = "password"; //MySQL Database Name $dbname = "databasename"; //Table Name $tablename = "ContactFormLog"; //Date Format, see http://www.php.net/date $dateformat = "d/m/Y H:i:s"; //user has to preview before can submit, true or false $preview = "true"; //remember user's name and e-mail, true or false $rememberdetails = "true"; //sub variables (only edit if above value is set to true //Days to remember details for $rememberdays = "7"; //----- End Config -----\\ //----- Start Set PHP Variables -----\\ ini_set("sendmail_path", $mail_path); ini_set("magic_quotes_gpc", 1); //----- End Set PHP Variables -----\\ //----- Start Functions -----\\ //function to check email format function check_email($str) { if(ereg("^.+@.+\\..+$", $str)) return 1; else return 0; } //function to get submitted values function get_values($slashes,$decode) { global $userName; global $useraddress; global $usercity; global $userstate; global $userzipcode; global $userphone; global $userEmail; global $userSubject; global $userMessage; global $userCopyMe; global $userEmailTo; global $rememberdetails; $userName = htmlentities(strip_tags($_POST['userName'])); $useraddress = htmlentities(strip_tags($_POST['useraddress'])); $usercity = htmlentities(strip_tags($_POST['usercity'])); $userstate = htmlentities(strip_tags($_POST['userstate'])); $userzipcode = htmlentities(strip_tags($_POST['userzipcode'])); $userphone = htmlentities(strip_tags($_POST['userphone'])); $userEmail = htmlentities(strip_tags($_POST['userEmail'])); $userSubject = htmlentities(strip_tags($_POST['userSubject'])); $userMessage = htmlentities(strip_tags($_POST['userMessage'])); $userCopyMe = htmlentities(strip_tags($_POST['userCopyMe'])); $userEmailTo = htmlentities(strip_tags($_POST['userEmailTo'])); if ($slashes == "1") { $userName = stripslashes($userName); $useraddress = stripslashes($useraddress); $usercity = stripslashes($usercity); $userstate = stripslashes($userstate); $userzipcode = stripslashes($userzipcode); $userphone = stripslashes($userphone); $userEmail = stripslashes($userEmail); $userSubject = stripslashes($userSubject); $userMessage = stripslashes($userMessage); $userCopyMe = stripslashes($userCopyMe); $userEmailTo = stripslashes($userEmailTo); } if ($decode == "1") { $userName = html_entity_decode($userName); $useraddress = html_entity_decode ($useraddress); $usercity = html_entity_decode($usercity); $userstate = html_entity_decode($userstate); $userzipcode = html_entity_decode ($userzipcode); $userphone = html_entity_decode($userphone); $userEmail = html_entity_decode($userEmail); $userSubject = html_entity_decode($userSubject); $userMessage = html_entity_decode($userMessage); $userCopyMe = html_entity_decode($userCopyMe); $userEmailTo = html_entity_decode($userEmailTo); } } //function to clear submitted values function clear_values() { global $userName; global $useraddress; global $usercity; global $userstate; global $userzipcode; global $userphone; global $userEmail; global $userSubject; global $userMessage; global $userCopyMe; global $userEmailTo; global $rememberdetails; if ($rememberdetails != "true") { $userName = ""; $useraddress = ""; $usercity = ""; $userstate = ""; $userzipcode = ""; $userphone = ""; $userEmail = ""; } $userSubject = ""; $userMessage = ""; $userCopyMe = ""; $userEmailTo = ""; } //function to display message function display_messages() { global $message; global $messagenoterror; $y = "0"; if (!empty($message) && $messagenoterror != "1") { echo "The following errors were encountered when trying to process your message:<br />"; } while ($y < 10) { if (!empty($message[$y])) { if ($messagenoterror != "1") { echo " - "; } echo $message[$y]."<br />"; } $y++; } } //----- End Functions -----\\ //----- Start Set Variables -----\\ $mail_subject = $_POST['userSubject']; $submittime = $_SESSION['submittime']; $currenttime = time(); $allowedtime = $currenttime - $delay; $timeleft = $submittime - $allowedtime; $p = "0"; get_values(1,1); $EmailContent = "Name:\n".$userName."\n\n"."Address:\n".$useraddress."\n\n"."City:\n".$usercity."\n\n"."State:\n".userstate."\n\n"."Zipcode:\n".userzipcode."\n\n"."Phone Number:\n".userphone."\n\n"."Email:\n".$userEmail."\n\n"."Subject:\n".$userSubject."\n\n"."Message:\n".$userMessage."\n\n"."User Agent:\n".$_SERVER["HTTP_USER_AGENT"]."\n\n"."User IP:\n".$_SERVER["REMOTE_ADDR"]; //----- End Set Variables -----\\ //check if form submitted if ($_POST){ //----- Start Error Checking -----\\ //check to see if fields already been checked if ($_POST['previewdone'] != "1") { //check if all fields filled in if (!$_POST['userName'] ||!$POST['useraddress'] || !$_POST['userEmail'] || !$_POST['userSubject'] || !$_POST['userMessage']){ $message[$p] = "All required fields not filled in."; $p++; get_values(1,0); $notcomplete = "1"; } //check if email is in valid format if(check_email($_POST['userEmail']) == "0" && $_POST['userEmail']){ $message[$p] = "Invalid e-mail address."; $p++; get_values(1,0); } //check if security code is correct if($_POST['userSecurityCode'] != base64_decode($_POST['SecurityCode']) && $usesecuritycode == "true" && $notcomplete != "1"){ $message[$p] = "Wrong security code"; $p++; get_values(1,0); } //check that x seconds has passed if($submittime > $allowedtime && $usetimelimit == "true"){ $message[$p] = "You are trying to send messages too often, please try again after ".$timeleft." seconds"; $p++; get_values(1,0); } } //----- End Error Checking -----\\ //----- Start Set Cookies ------\\ if ($rememberdetails == "true") { $cookietime = time()+60*60*24*$rememberdays; //set cookie to remember userid for x days setcookie("userName", $_POST['userName'], $cookietime, "/"); //set cookie to remember password for x days setcookie("userEmail", $_POST['userEmail'], $cookietime, "/"); } //----- End Set Cookies ------\\ //----- Start Final Check & Process Form ------\\ if ($preview == "true" && $_POST['previewdone'] == "1") { $continue = "1"; } elseif ($preview == "true" && $_POST['previewdone'] != "1") { $continue = "0"; } else { $continue = "1"; } //check to see whether there are any errors, if no then continue if (empty($message) && $continue == "1" && empty($_POST['edit'])){ //check to see whether the user can pick the recipitent, if yes get recepitent chosen if ($listofrecipients == "true") { $explodedresult = explode(" >< ", $recipientslist[$_POST['userEmailTo']]); $mail_to = $explodedresult[1]; } //Check to see if mail sent correctly get_values(1,0); if(mail($mail_to,$mail_subject,$EmailContent,"From:".$userName." <".$userEmail.">")){ //check to see if user wants a copy of the message, if yes send them one if ($_POST['userCopyMe'] == "1"){ mail($_POST['userEmail'],"Copy of sent message: ".$mail_subject,$EmailContent,"From:".$userName." <".$userEmail.">"); } //check to see if user wants to store submissions if ($store == "true") { //connect to db $connect = @mysql_connect($host,$user,$pass); //select db $selectdb = @mysql_select_db($dbname); //get variables get_values(1,1); $userAgent = $_SERVER["HTTP_USER_AGENT"]; $userIP = $_SERVER["REMOTE_ADDR"]; $userTime = date($dateformat); //insert data $sql = "INSERT INTO `$tablename` (`ID`, `userName`, 'useraddress' .' usercity' , 'userstate' , 'userzipcode', 'userphone' ,`userEmail`, `userSubject`, `userMessage`, `userCopyMe`, `userEmailTo`, `userAgent`, `userIP`, `userTime`) VALUES ('', '$userName', '$useraddress' , '$usercity' , '$userstate' , '$userzipcode' , '$userphone' , '$userEmail', '$userSubject', '$userMessage', '$userCopyMe', '$userEmailTo', '$userAgent', '$userIP', '$userTime')"; $result = @mysql_query($sql); } //tell user message sent successfully $message[0] = "Thank you, your message has been sent."; $messagenoterror = "1"; //clear form values clear_values(); //store submit time for use with time limit feature $_SESSION['submittime'] = time(); //check to see if user should be redirected if ($redirectonsuccess == "true") { ?> <script type="text/javascript"> <!-- window.location.href = "<?php echo $redirecturl; ?>"; --> </script> <?php } //if error provide link }else{ //provide link to user to send using their default email $message[0] = "There was an error. Please click <a href=\"mailto:".$mail_to."?subject=".$_POST['userSubject']."&body=".$_POST['userMessage']."\">here</a> to send your message via your default e-mail program."; $messagenoterror = "1"; get_values(1,0); } $formsent = "1"; } } else { if ($rememberdetails == "true") { $userName = $_COOKIE['userName']; $useraddress = $_COOKIE ['useraddress']; $usercity = $_COOKIE ['usercity']; $userstate = $_COOKIE ['userstate']; $userzipcode = $_COOKIE['userzipcode']; $userphone = $_COOKIE ['userphone']; $userEmail = $_COOKIE['userEmail']; } } //----- End Final Check & Process Form ------\\ ?> <!-- Start Output --> <?php if ($preview == "true" && $_POST['previewfirst'] == "1" && $formsent != "1" && empty($message) && empty($_POST['edit'])) { get_values(1,0); ?> <!-- Start Preview --> <form method="post" action="<?php echo $_SERVER["REQUEST_URI"]; ?>"> <!-- Start Name Field--> Name <br /> <?php echo $userName; ?><input type="hidden" name="userName" value="<?php echo $userName; ?>" /> <br /><br /> <!-- End Name Field--> <!--- Start Address Field--!> Address <br /> <?php echo $useraddress; ?><input type="hidden" name="useraddress" value="<?php echo $useraddress; ?>" /> <br /> <br /> <!--End of Address Field--!> <!--Start of City Field--!> City <br /> <?php echo $usercity; ?><input type "hidden" name="usercity" value="<?php echo $usercity; ?>" /> <br /> <br /> <!--End of City Field--!> <!--Start of State Field--!> State <br /> <?php echo $userstate; ?><input type ="hidden" name="userstate" value="<?php echo $userstate; ?>" /> <br /> <br /> <!--End of State Field--!> <!--Start of Zipcode Field--!> Zipcode <br /> <?php echo $userzipcode; ?><input type = "hidden" name="userzipcode" value ="<?php echo $userzipcode; ?>" /> <br /> <br /> <!--End of Zipcode Field--!> <!--Start of Phone Field--!> Phone <br /> <?php echo $userphone; ?><input type="hidden" name="userphone" value="<?php echo $userphone; ?>" /> <br /> <br /> <!--End of Phone Field--!> <!-- Start E-mail Field--> E-mail <br /> <?php echo $userEmail; ?><input type="hidden" name="userEmail" value="<?php echo $userEmail; ?>" /> <br /><br /> <!-- End E-mail Field--> <!-- Start Recipient Field--> <?php if ($listofrecipients == "true") { ?> Recipient <br /> <?php $i = "0"; while ($i < count($recipientslist)){ $explodedrecipient = explode(" >< ", $recipientslist[$i]); ?> <?php if ($userEmailTo == $i) { echo $explodedrecipient[0]; $n = $i; } ?> <?php $i++; }?> <input type="hidden" name="userEmailTo" value="<?php echo $n; ?>" /> <br /><br /> <?php } ?> <!-- End Recipient Field--> <!-- Start Subject Field--> Subject <br /> <?php if ($listofsubjects == "false") { ?> <?php echo $userSubject; ?> <?php } else { ?> <?php $i = "0"; while ($i < count($subjects)){ ?> <?php if ($userSubject == $subjects[$i]) { echo $subjects[$i]; } ?> <?php $i++; }?> <?php } ?> <input type="hidden" name="userSubject" value="<?php echo $userSubject; ?>" /> <br /><br /> <!-- End Subject Field--> <!-- Start Message Field--> Description of your Multi Media Needs <br /> <?php echo nl2br($userMessage); ?><input type="hidden" name="userMessage" value="<?php echo $userMessage; ?>" /> <br /><br /> <!-- End Message Field--> <!-- Start Copy Me Field--> <?php if ($copyme == "true") { ?> Send me a copy of the message? <br /> <?php if ($userCopyMe == "1") { echo "Yes"; } else { echo "No"; }?> <input type="hidden" name="userCopyMe" value="<?php echo $userCopyMe; ?>" /> <br /><br /> <?php } ?> <!-- End Copy Me Field--> <!-- Start Submit Button--> <input type="submit" name="edit" value="Edit" /> <input type="submit" name="submit" value="Send" /> <!-- End Submit Button--> <!-- Start Preview Done Field --> <input type="hidden" name="previewdone" value="1" /> <!-- End Preview Done Field --> </form> <!----- End Preview -----> <br /><br /> <?php } else { ?> <?php //display any messages display_messages(); ?> <form method="post" action="<?php echo $_SERVER["REQUEST_URI"]; ?>"> <!-- Start Name Field--> Name <br /> <input type="text" name="userName" value="<?php echo $userName; ?>" /> <br /><br /> <!-- End Name Field--> <!--- Start Address Field--!> Address <br /> <input type="text" name="useraddress" value="<?php echo $useraddress; ?>" /> <br /> <br /> <!--End of Address Field--!> <!--Start of City Field--!> City <br /> <input type "text" name="usercity" value="<?php echo $usercity; ?>" /> <br /> <br /> <!--End of City Field--!> <!--Start of State Field--!> State <br /> <input type ="text" name="userstate" value="<?php echo $userstate; ?>" /> <br /> <br /> <!--End of State Field--!> <!--Start of Zipcode Field--!> Zipcode <br /> <input type ="text" name= "userzipcode" value"<?php echo $userzipcode;?>" /> <br /> <br /> <!--End of Zipcode Field--!> <!--Start of Phone Field--!> Phone <br /> <input type="text" name="userphone" value="<?php echo $userphone; ?>" /> <br /> <br /> <!--End of Phone Field--!> <!-- Start E-mail Field--> E-mail <br /> <input type="text" name="userEmail" value="<?php echo $userEmail; ?>" /> <br /><br /> <!-- End E-mail Field--> <!-- Start Recipient Field--> <?php if ($listofrecipients == "true") { ?> Recipient <br /> <select name="userEmailTo"> <?php $i = "0"; while ($i < count($recipientslist)){ $explodedrecipient = explode(" >< ", $recipientslist[$i]); ?> <option value="<?php echo $i; ?>" <?php if ($userEmailTo == $i) { echo "selected=\"selected\""; }?>><?php echo $explodedrecipient[0]; ?></option> <?php $i++; }?> </select> <br /><br /> <?php } ?> <!-- End Recipient Field--> <!-- Start Subject Field--> Subject <br /> <?php if ($listofsubjects == "false") { ?> <input type="text" name="userSubject" value="<?php echo $userSubject; ?>" /> <?php } else { ?> <select name="userSubject"> <?php $i = "0"; while ($i < count($subjects)){ ?> <option value="<?php echo $subjects[$i]; ?>" <?php if ($userSubject == $subjects[$i]) { echo "selected=\"selected\""; }?>><?php echo $subjects[$i]; ?></option> <?php $i++; }?> </select> <?php } ?> <br /><br /> <!-- End Subject Field--> <!-- Start Message Field--> Description of your Multi Media needs <br /> <textarea name="userMessage" rows="6" cols="40"><?php echo $userMessage; ?></textarea> <br /><br /> <!-- End Message Field--> <!-- Start Security Code Field--> <?php //check to see if security code feature is on if ($usesecuritycode == "true") { $randcode = mt_rand(100000, 999999); $randcodesec = base64_encode($randcode); ?> Type the code you see on the image below <br /> <input type="text" name="userSecurityCode" /><input type="hidden" name="SecurityCode" value="<?php echo $randcodesec; ?>" /> <br /><br /> <img src="gd.php?randcode=<?php echo $randcodesec; ?>" alt="Security Code" /> <br /><br /> <?php } ?> <!-- End Security Code Field--> <!-- Start Copy Me Field--> <?php if ($copyme == "true") { ?> Check the box if you wish to be sent a copy of this message <br /> <input type="checkbox" name="userCopyMe" value="1" <?php if ($userCopyMe == "1") { echo "checked=\"checked\""; }?> /> <br /><br /> <?php } ?> <!-- End Copy Me Field--> <!-- Start Submit Button--> <input type="submit" name="submit" value="<?php if ($preview == "true") { echo "Preview Before Send"; } else { echo "Send"; } ?>" /> <!-- End Submit Button--> <!-- Start Preview First Field --> <?php if ($preview == "true") {?> <input type="hidden" name="previewfirst" value="1" /> <?php } ?> <!-- End Preview First Field --> </form> <br /><br /> <?php } ob_end_flush(); ?> <!-- End Output -->