2017-03-15 8 views
0

私はPHP - My SQLでコーディングしています。私は従業員の個人的な詳細を持っているテーブルtbl_persを持っています。私は別のテーブルtbl_groupグループの各タイプ(すべてのGpTitleのGpCode)に割り当てられている番号を持っています。したがって、tbl_persテーブルでは、tbl_groupで定義されたグループに対応する番号が保存されます。私は、PHPで書かれたフォームを使用してtbl_persを更新しようとすると、それは正常に更新されますが、何も変更せずにフォームを更新すると、tbl_persテーブルにnull値が保存されます。最初に定義された値を保存します。 は、あなたがこれらの2つの手順を使用する必要があり、コードは下のように与えられるPHPフォームのドロップダウンでフィールドを更新する

<!DOCTYPE> 
<?php 
include("includes/db.php"); 
if(isset($_GET['urlvar_edit_pers'])){ 

    $get_id=$_GET['urlvar_edit_pers']; 
    $get_pers="select * from tbl_pers where pNo='$get_id'"; 
    $run_query=mysqli_query($con, $get_pers); 
    $i=0; 

    $row_pers=mysqli_fetch_array($run_query); 

     $pNo=$row_pers['pNo']; 
     $GpCode=$row_pers['GpCode']; 
      $get_group="select * from tbl_group where GpCode='$GpCode'"; 
      $run_group=mysqli_query($con, $get_group); 
      $row_group=mysqli_fetch_array($run_group); 
      $GpTitle=$row_GpCode['GpTitle']; 

     $i++;  
} 
?> 

<html> 
<div id="page-wrapper"> 
    <h3>Update Pers Record</h3> 

    <div class="tab-content"> 
    <div class="tab-pane active" id="horizontal-form"> 
    <form action="" class="form-horizontal" method="post" enctype="multipart/form-data"> 

    <div class="form-group"> 
     <label for="txt_pNo" class="col-sm-2 control-label">Personal Number</label> 
     <div class="col-sm-2"><input type="text" name="txt_pNo" class="form-control1" id="txt_pNo" value="<?php echo $pNo;?>" placeholder="Personal Number"></div> 
     <div class="col-sm-8"><p class="help-block">Enter without any spaces.</p></div> 
    </div> 


    <!--Dropdown Dynamic List--> 
    <div class="form-group"> 
     <label for="sel_GpCode" class="col-sm-2 control-label">Group</label> 
     <div class="col-sm-2"> 
     <select name="sel_GpCode" id="sel_GpCode" value="<?php echo $GpCode;?> class="form-control1"> 
      <option><?php echo $GpTitle;?></option> 
      <?php 
       $get_GpCode="select * from tbl_group"; 
       $run_GpCode=mysqli_query($con, $get_GpCode); 
       while($row_GpCode=mysqli_fetch_array($run_GpCode)){ 
        $GpCode=$row_GpCode['GpCode']; 
        $GpTitle=$row_GpCode['GpTitle']; 
        echo"<option value='$GpCode'>$GpTitle</option>"; 
       } 
      ?> 
      </select> 

     </div> 
    </div> 

<div class="bs-example" data-example-id="form-validation-states-with-icons"> 
<form> 

     <div class="col-sm-8 col-sm-offset-2"> 
      <button class="btn-success btn" name="btn_update">Submit</button> 
     </div> 
</form> 
</div> 

</form> 

    </div> 
    </div> 
</div> 
</html> 

<?php 
if(isset($_POST['btn_update'])){ 

    //getting the text data from the fields 
    $update_id = $pNo; 
    $GpCode=$_POST['sel_GpCode']; 

$update_pers = "update tbl_pers set GpCode='$GpCode' where pNo='$update_id'"; 
$run_query = mysqli_query($con, $update_pers); 

    if($run_query){ 
     echo"<script>alert('Person has been updated.')</script>"; 
     echo"<script>window.open('view_pers.php','_self')</script>"; 
    } 
    else{ 
     echo"<script>alert('Could not add.')</script>"; 
    } 
} 
?> 
+0

にようこそ。関連する情報を質問に追加したい場合は、コメントをしないでください。むしろ、すべての詳細がすべて1か所に収まるように質問を編集する必要があります。質問を編集してコメントを削除してください。 – mickmackusa

答えて

0

を助けてください。

  1. whileループで$ GpCodeの名前を変更します。 $ GpCodeloopとしましょう。
  2. ドロップダウンのオプションで選択を使用します。
  3. 更新クエリのチェックを適用します。

    <option value='$GpCodeloop' <?php if($GpCode==$GpCodeloop){echo "selected='selected'";} ?>selected="selected">$GpTitle</option>

    { $ update_pers = "更新PNOは= '$ UPDATE_ID' を設定GpCode = '$のGpCode' をtbl_pers" 場合(空($ GpCode)が!)。 $ run_query = mysqli_query($ con、$ update_pers); }

+0

申し訳ありませんMahmood、コードは動作しませんでした。私はPHPには新しいので、あなたが私に詳細を教えることができるかどうかを要求します。 – Manna

関連する問題