Hey Everyone hope all ok. I am needing your expertise.
I have an html form and inside of it i have a drop down option to choose a state
Any-time the customer selects a a state and submits the form it goes to my mssql database and pulls an ip address releavant to the staten they choose in the html form.
So for example, lets say they choose Alabama (AL), when they submit the form i want the code to connect to the php file and then show the ip address releavant to the state, in this case (AL). I have some php code for this thanks to this forum and another
This above code works great, i collects the state randomly and sends it to me in an email with the rest of the form info. The problem i have is that in the email it is sending me the letters, for example it is sending me "AL or AZ or CA etc.." it is not sending me the ip address. I think it has something to do with this line of code
mainly the $state part. I want it to select the user_ip part but can not find out how to do it. i have tryed this but it does not work
This is how it displays in an email
i want it to be this
Any help would be great thanks every one
I have an html form and inside of it i have a drop down option to choose a state
Code:
<select name="State">
<option value="0" selected="selected">Select a State</option>
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
etc.....
</select>
Code:
+-----------+-------+---------------+ | stateip_id| state | user_ip | +-----------+-------+---------------+ | 1 | AL | 67.100.244.74 | | 2 | AK | 68.20.131.135 | | 3 | AZ | 64.134.225.33 | +-----------+-------+---------------+
Code:
<?php
// visit http://php.net/pdo for more details
// start error handling
try
{
$Server = "00.00.000.000,0000";
$User = "username";
$Pass = "password";
$DB = "dbname";
//connection to the database
$dbhandle = mssql_connect($Server, $User, $Pass)
or die("Couldn't connect to SQL Server on $Server");
//select a database to work with
$selected = mssql_select_db($DB, $dbhandle)
or die("Couldn't open database $DB");
$state = $_POST['State'];
$query = "SELECT TOP 1 user_ip
FROM state_ip
WHERE state='$state'
ORDER BY newid()";
//execute the SQL query and return records
$result = mssql_query($query);
$numRows = mssql_num_rows($result);
echo "<h1>" . $numRows . " Row" . ($numRows == 1 ? "" : "s") . " Returned </h1>";
//display the results
while($row = mssql_fetch_array($result));
}
catch (Exception $e)
{
echo "sorry, there was an error.";
mail("email@gmail.com", "database error", $e->getMessage(), "From: email@gmail.com");
}
if(isset($_POST['email'])) {
// EDIT THE 2 LINES BELOW AS REQUIRED
$email_to = "email@gmail.com";
$email_subject = "This is a test";
function died($error) {
// your error code can go here
echo "We are very sorry, but there were error(s) found with the form you submitted. ";
echo "These errors appear below.<br /><br />";
echo $error."<br /><br />";
echo "Please go back and fix these errors.<br /><br />";
die();
}
// validation expected data exists
if(!isset($_POST['first_name']) ||
!isset($_POST['last_name']) ||
!isset($_POST['email']) ||
!isset($_POST['what']) ||
!isset($_POST['State']) ||
!isset($_POST['comments'])) {
died('We are sorry, but there appears to be a problem with the form you submitted.');
}
$what = $_POST['what']; // required
$first_name = $_POST['first_name']; // required
$last_name = $_POST['last_name']; // required
$email_from = $_POST['email']; // required
$state = $_POST['State']; // not required
$comments = $_POST['comments']; // required
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email_from)) {
$error_message .= 'The Email Address you entered does not appear to be valid.<br />';
}
$string_exp = "/^[A-Za-z .'-]+$/";
if(!preg_match($string_exp,$first_name)) {
$error_message .= 'The First Name you entered does not appear to be valid.<br />';
}
if(!preg_match($string_exp,$last_name)) {
$error_message .= 'The Last Name you entered does not appear to be valid.<br />';
}
if(strlen($comments) < 2) {
$error_message .= 'The Comments you entered do not appear to be valid.<br />';
}
if(strlen($error_message) > 0) {
died($error_message);
}
$email_message = "Form details below.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "First Name: ".clean_string($first_name)."\n";
$email_message .= "Last Name: ".clean_string($last_name)."\n";
$email_message .= "What: ".clean_string($what)."\n";
$email_message .= "Email: ".clean_string($email_from)."\n";
$email_message .= "State: ".clean_string($state)."\n";
$email_message .= "Comments: ".clean_string($comments)."\n";
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
if (!mail($email_to, $email_subject, $email_message, $headers))
{
echo "failed to send message";
}
?>
<!-- include your own success html here -->
Thank you for contacting us. We will be in touch with you very soon.
<?php
}
?>
Code:
$email_message .= "State: ".clean_string($state)."\n";
Code:
$email_message .= "State: ".clean_string('user_ip')."\n";
Code:
First Name: afdf Last Name: sfgsdf What: hellow Email: sd@fd.com State: AL Comments: ali alabama2
Code:
First Name: afdf Last Name: sfgsdf What: hellow Email: sd@fd.com State: 123.456.1.21 Comments: ali alabama2
Comment