[英]Loading data from a SQL database in a modal
我當前正在通過foreach循環在表中顯示數據,我希望能夠單擊特定行中的編輯按鈕,然后它會打開一個模式對話框,該對話框根據該行的ID從表中獲取其他數據?
<?php
foreach ($db->query('SELECT * FROM websitehosting ORDER BY CUSTOMERNAME ASC') as $row)
{
$date1 = $row['SERVICERENEWALDATE'];
$myDateTime = DateTime::createFromFormat('Y-m-d H:i:s', $date1);
$formattedrenewaldate = $myDateTime->format('d-M-Y');
$hello = $row['ID'];
// echo out the contents of each row into a table
echo "<tr>";
echo '<td>' . $hello . '</td>';
echo '<td>' . $row['CUSTOMERNAME'] . '</td>';
echo '<td>' . $row['DOMAINNAME'] . '</td>';
echo '<td>' . $formattedrenewaldate . '</td>';
echo '<td>' . $row['STATUS'] . '</td>';
echo '<td><button name="submitid" class="btn btn-info footable-edit edit" id=' . $row['ID'] . ' data-toggle="modal" data-target="#myModal" >Info</button></td>';
echo '<td>' . $row['UPDATEDBY'] . '</td>';
echo '<td><a class="btn btn-success" onclick="my1Function()">Edit</a></td>';
echo "</tr>";
}
// close table>
echo "</table>";
?>
目前,每行的ID都設置為“編輯”按鈕的ID,但我無法獲取下面的數據來調整ID,因此它顯示正確的數據。 顯然,目前將其設置為26,但我希望將其設置為按鈕的ID或只是該行的ID。 最終,我希望能夠編輯數據,但現在我只顯示它
<div id="myModal" class="modal fade" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Service Information</h4>
</div>
<div class="modal-body">
<?php
$dummy = '26';
foreach ($db->query("SELECT * FROM websitehosting WHERE ID = '$dummy'") as $row)
{
$date = $row['SIGNUPDATE'];
$test = $row['ID'];
$myDateTime = DateTime::createFromFormat('Y-m-d H:i:s', $date);
$formattedsignupdate = $myDateTime->format('d-M-Y');
$date1 = $row['SERVICERENEWALDATE'];
$myDateTime1 = DateTime::createFromFormat('Y-m-d H:i:s', $date1);
$formattedrenewaldate = $myDateTime1->format('d-M-Y');
?>
<table><?php echo $hello; ?>
<tr>
<td><b>ID:</b></td>
<td><label id="hello"></label></td>
</tr>
<tr>
<td style="width:150px;"><b>Customer:</b></td>
<td><?php echo $row['CUSTOMERNAME']; ?></td>
</tr>
<tr>
<td style="width:150px;"><b>Domain Name:</b></td>
<td><?php echo $row['DOMAINNAME']; ?></td>
</tr>
<tr>
<td style="width:150px;"><b>Signup Date:</b></td>
<td><?php echo $formattedsignupdate; ?></td>
</tr>
<tr>
<td style="width:150px;"><b>Renewal Date:</b></td>
<td><?php echo $formattedrenewaldate; ?></td>
</tr>
<tr>
<td style="width:150px;"><b>Hosting Type:</b></td>
<td><?php echo $row['HOSTINGTYPE']; ?></td>
</tr>
<tr>
<td style="width:150px;"><b>Current Server:</b></td>
<td><?php echo $row['ACTIVESERVER']; ?></td>
</tr>
<tr>
<td style="width:150px;"><b>Website Type:</b></td>
<td><?php echo $row['WEBSITETYPE']; ?></td>
</tr>
<tr>
<td style="width:150px;"><b>Diskspace:</b></td>
<td><?php echo $row['DISKSPACE']; ?>GB</td>
</tr>
<tr>
<td style="width:150px;"><b>Bandwidth:</b></td>
<td><?php echo $row['BANDWIDTH']; ?>GB</td>
</tr>
<tr>
<td style="width:150px;"><b>Annual Cost:</b></td>
<td>£<?php echo $row['ANNUALCOST']; ?></td>
</tr>
<tr>
<td style="width:150px;"><b>Comments:</b></td>
<td><?php echo $row['COMMENTS']; ?></td>
</tr>
</table>
<?php } ?>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
您可以創建function like edit_row(var row_id)
js function like edit_row(var row_id)
並在html表中添加
<td>
<button onclick="edit_row(<?=$row['id']?>)">edit</button>
</td>
在頁面末尾,您可以像這樣http://jsfiddle.net/h3WDq/添加html模態,而js函數的主體應該像這樣
function like edit_row(var row_id)
{
// get data with ajax
$.ajax({
url: "get_data.php",
type:"POST",
data : {id:row_id},
dataType: "JSON",
success: function(result){
// here you can set modal inputs value from result
//finally you can run modal
}});
}
之后,您需要發布模態表單值,您可以使用ajax請求或常規表單post來完成。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.