2017-09-18 12 views
1

$ certs []としてmysqlデータベースからデータを取得し、それをテーブルとして取り込むPHPページがあります: ($ dbはファイルから読み込み、定数です) PHP配列の最初の値を渡すHTML要素

 <table> 
 
\t \t <tr><th>ID Base</th><th>Имя</th><th>Start</th><th>Finish</th>   <th>Статус</th> \t \t 
 
     <th><button type="button" style="display:inline" \t \t  onclick="openNewModal('Modal')" class='awe' title="Add">&#xf067</button>  \t \t </th></tr> 
 
\t <tr> 
 
\t \t <td> <?php echo $cert["idBase"] ?> </td> 
 
\t \t <td><?php echo $cert["name"] ?></td> 
 
\t \t <td><button type="button" class="awe" title="Edit" id="editbtn" 
 
     onclick="openNewModalWithValue('Modal2')" value =<?php echo $cert["idBase"] ?> >&#xf019</button> 
 
\t \t <form action="gensetdel.php" method="POST" style="display:inline"> 
 
\t \t <input type="hidden" name="idbase" value=<?php echo $cert["idBase"] ?>>  \t \t 
 
     <input type="hidden" name="db" value=<?php echo $db ?>> 
 
\t \t <button type="submit" class="awe" name="mission"  \t \t title="Delete">&#xf00d</button> 
 
\t \t </form> 
 
\t \t  </td> 
 
\t \t </tr> 
 
    ....
私は idBaseの値をモーダルウィンドウに表示しようとします。さ

<div id="Modal2" class="modal"> 
 
\t  <!-- Modal content edit data --> 
 
\t  <div class="modal-content gradient-border"> 
 
\t \t <span class="close" id="span2">&times;</span> 
 
\t \t <form id="modal-form" method="POST" action="gensetedit.php"> 
 
\t \t  <h4 id="modal-form-header">Edit data</h4> 
 
\t \t  <div class="gradient-border"> 
 
\t \t \t <h5>Данные</h5> 
 
\t \t <label for="idb">ID Base</label><input type="number" id="idb" name="idbase" /> 
 
\t \t <br><br> 
 
\t \t <label for="nme">Name</label><input type="text" id="nme" name="name"/> 
 
\t \t 
 
\t \t <input type="hidden" name="db" value=<?php echo $db; ?>> 
 
\t \t <input type="hidden" id= "idbs" name="idbs" /> 
 
\t \t 
 
    \t  </div> 
 
\t \t  <br> 
 
\t \t  <button id="form-submit" class="main-btn" type="submit" value="edit">Edit</button> 
 
\t \t </form> 
 
\t  </div> 
 
\t </div>
とモーダルウィンドウを開くためのJavascriptを::(。プレス 'EDIT' ボタンと同じように、あなたが設定した値でモーダルウィンドウを取得)だから私のモーダルウィンドウがある


 
<script> 
 
\t function openNewModalWithValue(modal) { 
 
\t document.getElementById(modal).style.display = "block"; 
 
\t  document.getElementById("idb").value = document.getElementById("editbtn").value; 
 
\t  \t  \t } 
 
</script>

問題は、PHPが$ certs []の値を正しく送信し、テーブルが正しく挿入されても、私が「編集」ボタンを押すとitemの値が保持されるということです#1のPHP配列で、どの行/データをクリックしても問題ありません。 すべての行にカウンタを適用してそれを操作するより簡単な方法はありますか?

+0

「$ db」とは何ですか? – C2486

+0

@ user2486 "($ dbはファイルから読み取られます、それは一定です)"そして本当に私の問題に対応していません – upicik

答えて

1

問題は、idbがDOMの複数のIDである可能性があります。 document.getElementByIdページ全体でDomを検索します。あなたが問題を解決するためのカウンタを追加し、基本的には固有のID

0

<td id=<?php echo "\"idBase-".$counter."\"" ?>> <?php echo $cert["idBase"]?> </td> 
 
<td id=<?php echo "\"name-".$counter."\"" ?>><?php echo $cert["name"]?></td>

を提供する必要があります。その後、あなたは

document.getElementById("idb-e").value = document.getElementById("idBase-"+number).innerText; 
 
document.getElementById("name-e").value = document.getElementById("name-"+number).innerText;

Thxをとしての価値を得ることができます!

関連する問題