How to carry form data from a select field to another form (having the same elements) in a select field?

StackOverflow https://stackoverflow.com/questions/22731017

  •  23-06-2023
  •  | 
  •  

Question

Okay, I know that's a bit too premature but I didn't get any satisfactory answers wherever I tried to search. What I want to do is basically, collect form data from the users, validate(PHP) them, assuming they have JavaScript disabled I want to show errors in the next page with PHP. And I also want to show them the same form that they worked on earlier. The difference is that there would be error messages and the form fields would be pre-filled with the data they entered. I have succeeded in the text fields and radio fields. But it's proving difficult for me to show them the select field input. . Help is very much appreciated and thanks in advance. this is 1st form's select fields:

        <select name="month" id="month">
  <option value="-1"> Month: </option>
  <option value="1">Jan</option>
  <option value="2">Feb</option>
  <option value="3">Mar</option>
  <option value="4">Apr</option>
  <option value="5">May</option>
  <option value="6">Jun</option>
  <option value="7">Jul</option>
  <option value="8">Aug</option>
  <option value="9">Sep</option>
  <option value="10">Oct</option>
  <option value="11">Nov</option>
  <option value="12">Dec</option>
</select>
</select>

  <select name="day" id="day"> 
    <option value="-1">Day:</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
    <option value="8">8</option>
    <option value="9">9</option>
    <option value="10">10</option>
    <option value="11">11</option>
    <option value="12">12</option>
    <option value="13">13</option>
    <option value="14">14</option>
    <option value="15">15</option>
    <option value="16">16</option>
    <option value="17">17</option>
    <option value="18">18</option>
    <option value="19">19</option>
    <option value="20">20</option>
    <option value="21">21</option>
    <option value="22">22</option>
    <option value="23">23</option>
    <option value="24">24</option>
    <option value="25">25</option>
    <option value="26">26</option>
    <option value="27">27</option>
    <option value="28">28</option>
    <option value="29">29</option>
    <option value="30">30</option>
    <option value="31">31</option>
  </select>

  <select name="year" id="year"><option value="-1" selected="selected">Year</option><option value="2000">2000</option><option value="1999">1999</option><option value="1998">1998</option><option value="1997">1997</option><option value="1996">1996</option><option value="1995">1995</option><option value="1994">1994</option><option value="1993">1993</option><option value="1992">1992</option><option value="1991">1991</option><option value="1990">1990</option><option value="1989">1989</option><option value="1988">1988</option>
  </select>

and the php to get the variables:

       <?php //setting checking
       $month=$_POST['month'];
        $day=$_POST['day'];
        $year=$_POST['year'];
       ?>

the second select fields are as same as the first one

Était-ce utile?

La solution

If you want to show selected value in selectbox than:

<select name="day" id="day">
<option value="1" <?php if($_POST['day']==1){ echo 'selected="selected"'} ?>></option>
.
.
.
//rest will be same
</select> 

Same thing you can do for your all select boxes.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top