Reputation: 9
I want to preserve the form value in the input field and after submit button is clicked and if there are validation errors then remaining field should preserve the value.
After refreshing the page the previously filled data should not be displayed
How can I achieve this ?
I have tried this inside input field but still my textarea and dropdown is not working (in this value is not preserved)
<div class="container">
<h1> Registration form</h1>
<form id="myForm" method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>">
<div class="form_group">
<label for="fname">First name:</label>
<input type="text" id="fname" name="fname" value="<?= (isset($_POST['fname'])) ? strip_tags($_POST['fname']) : '' ?>"> <span class="error">
<?php echo $fnameErr; ?>
</span>
</div>
<div class="form_group">
<label for="lname">Last name:</label>
<input type="text" id="lname" name="lname" value="<?= (isset($_POST['lname'])) ? strip_tags($_POST['lname']) : '' ?>"><span class="error">
<?php echo $lnameErr; ?>
</span>
</div>
<div class="form_group">
<label for="email">Email :</label>
<input type="text" id="email" name="email" value="<?= (isset($_POST['email'])) ? strip_tags($_POST['email']) : '' ?>">
<span class="error">
<?php echo $emailErr; ?>
</span>
</div>
<div class="form_group">
<label for="phone">Phone No. :</label>
<input type="text" id="phone" name="phone" value="<?= (isset($_POST['phone'])) ? strip_tags($_POST['phone']) : '' ?>"><span class="error">
<?php echo $phoneErr; ?>
</span>
</div>
<div class="form_group">
<label for="address">Address :</label>
<textarea name="address" id="address" value="<?= (isset($_POST['address'])) ? strip_tags($_POST['address']) : '' ?>"></textarea><span class="error" onchange="" onclick="">
<?php echo $addressErr; ?>
</span>
</div>
<div class="form_group">
<label for="country">Country :</label>
<select name="country" id="selectCountry" value="<?= (isset($_POST['country'])) ? strip_tags($_POST['country']) : '' ?>">
<option value="">Select Country</option>
<option value="in">India</option>
<option value="is">Israel</option>
<option value="ca">Canada</option>
</select>
<span class="error">
<?php echo $countryErr; ?>
</span>
</div>
<div class="form_group">
<label for="state">State :</label>
<select name="states" id="selectStates" value="<?= (isset($_POST['states'])) ? strip_tags($_POST['states']) : '' ?>">
<option value="">Select State</option>
<option value="gj">Gujarat</option>
<option value="rj">Rajasthan</option>
<option value="bh">Bihar</option>
</select><span class="error">
<?php echo $stateErr; ?>
</span>
</div>
<div class="form_group">
<label for="pincode">Pincode :</label>
<input type="text" name="pincode" id="pincode" value="<?= (isset($_POST['pincode'])) ? strip_tags($_POST['pincode']) : '' ?>"><span class="error">
<?php echo $pincodeErr; ?>
</span>
</div>
<div class="form_group">
<label for="password">Password :</label>
<input type="password" id="password" name="password" value="<?= (isset($_POST['password'])) ? strip_tags($_POST['password']) : '' ?>"><span class="error">
<?php echo $passwordErr; ?>
</span>
</div>
<div class="form_group">
<label for="confirmPass">Confirm Password :</label>
<input type="password" id="confirmPass" name="confirmPass" value="<?= (isset($_POST['confirmPass'])) ? strip_tags($_POST['confirmPass']) : '' ?>"><span class="error">
<?php echo $confirmPassErr; ?>
</span>
</div>
<div class="form_group">
<button type="submit"> Register</button>
</div>
<div class="form_group">
<p>already have an account ? <a href="login.php"><span>Login</span></a></p>
</div>
Upvotes: 0
Views: 26