contact form upgrading

I have a simple php contact form on my web site.My host site has upgraded to php5.5. My contact form isn’t working now. i got this code from the interrnet. it was free. if somebody can help me please!
code
if (isset($_POST[‘submit’])) {
$error = “”;

	if (!empty($_POST['name'])) {
	$name = $_POST['name'];
	} else {
	$error .= "You didn't type in your name. <br />";
	}

	if (!empty($_POST['email'])) {
	$email = $_POST['email'];
	  if (!preg_match("/^[a-z0-9]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", $email)){ 
	  $error .= "The e-mail address you entered is not valid. <br/>";
	  }
	} else {
	$error .= "You didn't type in an e-mail address. <br />";
	}
	
	if (!empty($_POST['phone'])) {
    $phone= $_POST['phone'];
    } 

	if (!empty($_POST['message'])) {
	$message = $_POST['message'];
	} else {
	$error .= "You didn't type in a message. <br />";
	}

	if (empty($error)) {
	$from = 'From: ' . $name . ' <' . $email . '>';
	$to = "e-mail id";
	$subject = "New contact form message";
	$content = $name . " has sent you a message: \n" . $message . "\n Phone number: " . $phone;
	$success = "<h3>Thank you! Your message has been sent!</h3>";
	mail($to,$subject,$content,$from);
	}
	}
	?>

	<div id="contactForm">
	
	<?php
		if (!empty($error)) {
		echo '<p class="error"><strong>Your message was NOT sent<br/> The following error(s) returned:</strong><br/>' . $error . '</p>';
		} elseif (!empty($success)) {
		$_POST['message'] = " ";
		$_POST['name'] = " ";
        $_POST['email'] = " ";
        $_POST['phone'] = " ";
		echo $success;
		}
	?>
		<form action="contact.html" method="post">
		    <div class="required">&#42; Required information</div>
			<label>Name:<span class="requireds">&#42;</span></label>
			<input type="text" name="name" value="<?php if($_POST['name']) { echo $_POST['name']; } ?>" />
             
			<label>Email:<span class="requireds">&#42;</span></label>
			<input type="text" name="email" value="<?php if($_POST['email']) { echo $_POST['email']; } ?>" />
			
			<label>Phone Number:</label>
            <input type="text" name="phone" value="<?php echo $_POST['phone']; ?>" />
            
			<label>Message:<span class="requireds">&#42;</span></label><br />
			<textarea name="message" rows="20" cols="20"><?php if($_POST['message']) { echo $_POST['message']; } ?></textarea>
			
			<input type="submit" class="submit" name="submit" value="Send message" />
			
		</form>

What error are you getting? Also, wrap your code in PHP BB tags so it’s easier for us to read. There’s a button within the text editor for you to do that.

Thanks for replying. There is no error as such. It’s displaying the php code on the contact form page. The code is:
<?php
if (isset($_POST[‘submit’])) {
$error = “”;

	if (!empty($_POST['name'])) {
	$name = $_POST['name'];
	} else {
	$error .= "You didn't type in your name. <br />";
	}

	if (!empty($_POST['email'])) {
	$email = $_POST['email'];
	  if (!preg_match("/^[a-z0-9]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", $email)){ 
	  $error .= "The e-mail address you entered is not valid. <br/>";
	  }
	} else {
	$error .= "You didn't type in an e-mail address. <br />";
	}
	
	if (!empty($_POST['phone'])) {
    $phone= $_POST['phone'];
    } 

	if (!empty($_POST['message'])) {
	$message = $_POST['message'];
	} else {
	$error .= "You didn't type in a message. <br />";
	}

	if (empty($error)) {
	$from = 'From: ' . $name . ' <' . $email . '>';
	$to = "email id";
	$subject = "New contact form message";
	$content = $name . " has sent you a message: \n" . $message . "\n Phone number: " . $phone;
	$success = "<h3>Thank you! Your message has been sent!</h3>";
	mail($to,$subject,$content,$from);
	}
	}
	?>

	<div id="contactForm">
	
	<?php
		if (!empty($error)) {
		echo '<p class="error"><strong>Your message was NOT sent<br/> The following error(s) returned:</strong><br/>' . $error . '</p>';
		} elseif (!empty($success)) {
		$_POST['message'] = " ";
		$_POST['name'] = " ";
        $_POST['email'] = " ";
        $_POST['phone'] = " ";
		echo $success;
		}
	?>
		<form action="contact.html" method="post">
		    <div class="required">&#42; Required information</div>
			<label>Name:<span class="requireds">&#42;</span></label>
			<input type="text" name="name" value="<?php if($_POST['name']) { echo $_POST['name']; } ?>" />
             
			<label>Email:<span class="requireds">&#42;</span></label>
			<input type="text" name="email" value="<?php if($_POST['email']) { echo $_POST['email']; } ?>" />
			
			<label>Phone Number:</label>
            <input type="text" name="phone" value="<?php echo $_POST['phone']; ?>" />
            
			<label>Message:<span class="requireds">&#42;</span></label><br />
			<textarea name="message" rows="20" cols="20"><?php if($_POST['message']) { echo $_POST['message']; } ?></textarea>
			
			<input type="submit" class="submit" name="submit" value="Send message" />
			
		</form>

Does your file have a .php extension?

Like filename.php

No, it doesn’t have .php extension. It’s saved as .html. But this was working fine before.

Doubt it. Php files need to have a .php extension unless you went out of your way to make the mistake of having .html files parsed by Php. Change the extension and you wont have the code showing.

Also, you clear all of the variables if one of them has an error. That is crazy! If you forgot to put in your
phone number, all of the other data needs to be retyped. Silly way to handle errors!

Thanks. The problem is resolved after i made your suggested changes.

Sponsor our Newsletter | Privacy Policy | Terms of Service