You can do this way...
index.php
<html>
<body>
<p>Required fields are <b>bold</b></p>
<form action="contact.php" method="post">
<p><b>First Name:</b> <input type="text" name="firstname" required=""/><br/>
<p><b>Last Name:</b> <input type="text" name="lastname" required=""/><br/>
<p><b>Phone Number:</b> <input type="text" name="phonenumber" required=""/><br/>
<b>Subject:</b> <input type="text" name="subject" required=""/><br/>
<b>E-mail:</b> <input type="email" name="email" required=""/><br/>
Website: <input type="url" name="website"></p>
<p>Do you like this website?
<input type="radio" name="likeit" value="Yes" checked="checked"/> Yes
<input type="radio" name="likeit" value="No"/> No
<input type="radio" name="likeit" value="Not sure"/> Not sure</p>
<p>State
<select name="how" name="how" >
<option value=""> -- Please select --</option>
<option>CT</option>
<option>NJ</option>
<option>NY</option>
<option>PA</option>
</select>
<p><b>Your comments:</b><br/>
<textarea name="comments" rows="10" cols="40" required=""></textarea></p>
<p><input type="submit" value="Send it!"></p>
<p></p>
</form>
</body>
</html>
contact.php
<?php
/* Set e-mail recipient */
$myemail = "[email protected]";
/* Check all form inputs using check_input function */
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$subject = $_POST['subject'];
$email = $_POST['email'];
$phnumber = $_POST['phonenumber'];
$website = $_POST['website'];
$likeit = $_POST['likeit'];
$state = $_POST['how'];
$comments = $_POST['comments'];
/* If e-mail is not valid show error message */
if (!preg_match("/([w-]+@[w-]+.[w-]+)/", $email)) {
echo "E-mail address not valid";
}
/* If URL is not valid set $website to empty */
if (!preg_match("/^(https?://+[w-]+.[w-]+)/i", $website)) {
$website = '';
}
/* Let's prepare the message for the e-mail */
$message = "Hello!";
echo '<p>Your contact form has been submitted by:</p>';
echo 'First Name:'. $firstname;
echo '<br>';
echo 'Last Name:'. $lastname;
echo '<br>';
echo 'E-mail:'. $email;
echo '<br>';
echo $comments;
echo '<br>';
echo $likeit;
echo '<br>';
echo $state;
echo '<br>';
echo $subject;
echo '<br>';
echo $myemail;
I have removed the check_input()
and placed a required field in HTML
form which does the validation depending upon the input type=""
.
If you still want to do PHP vaidation
you can do this way...
in php
if (empty($_POST["firstname"])) {
$nameErr = "Name is required";
} else {
$name = test_input($_POST["name"]);
}
in your html
code..
<input type="text" name="firstname"><span class="error">* <?php echo $nameErr;?></span>
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…