2017-04-04 13 views
1

フォームがエラーで送信された場合は値を保持して、フォーム全体をもう一度入力する必要はありません。フォーム提出後にエラーで選択した後にオプションを追加する

テキストフィールドの場合、私はそれをコード化しています。

オプションの値がののオプション値になっています。

ユーザーがオプションを選択したのに他のフォームフィールドにエラーがあり、フォームが送信されていない場合、どのように選択オプションに追加できますか?

コード:上記の例の形で今すぐ

 <select name="college" id="college" class="form-control input-lg" style="width:90%;"> 
      <option value="">Select College</option> 
      <?php 
      $q = "select * from colleges order by college_name asc "; 
      $r = $database->get_results($q); 
      foreach ($r as $row){?> 
      <option value="<?php echo $row['college_name'];?>"><?php echo $row['college_name'];?></option> 
      <?php } ?> 

    </select> 

、ユーザーは人口リストから大学名を選択した場合。そして彼が他のいくつかの入力フィールドを見落とした場合、フォームは送信時にエラーを表示します。ここでは、ユーザーが選択した大学名を選択したままにします。

どうすればいいですか?次のように

他のフィールドについて

、私はそれをやっている:

$fullname = $_POST['fullname']; // In php code during form processing 
$gender = $_POST['gender']; 

<input type="text" name="fullname" id="fullname" value="<?php if (isset($fullname)) { echo $fullname;}?>"> 

<select name="gender" id="gender"> 
    <option value="">Select</option> 
    <option value="Male" <?php if((isset($gender)) && ($gender=="Male")){?> selected="selected" <?php } ?>> Male </option> 
    <option value="Female" <?php if((isset($gender)) && ($gender=="Female")){?> selected="selected" <?php } ?>> Female </option> 
</select> 
// html form field 
+0

+1

@BililAhmedコメントを回答として返信しないでください。 – mickmackusa

答えて

0

をこれはあなたのコードに変更するために必要なものです:

<option value="<?php echo $row['college_name'];?>" 
<?php echo (isset($college) && $college == $row['college_name']) ? "selected" : '' ?> > 
<?php echo $row['college_name'];?></option> 

$大学変数が設定されている場合、ここでチェック指定されたオプション値と等しい場合は、選択したものとして表示します。

+0

はい...それは私のために働いた....ありがとう! –

関連する問題