所以基本上我創建一個收件箱,從我的數據庫加載數據。但我無法觸發我的模式,我已經搜索,但沒有任何符合我的問題。要觸發的按鈕位於<form method="post">
之內,因爲我有一個隱藏的input
來檢查被點擊的行的ID。
順便說一句,我的按鈕,將觸發模式也將執行兩(2)mysqli查詢。 這裏是我的代碼:
Bootstrap模式顯示一秒鐘然後消失
<form method="post">
<input type="hidden" name="key" value="'.$value->id.'">
<button data-toggle="modal" data-target="#myModal" title="View" class="btn btn-primary btn-xs" name="inbox_view">
<span class="glyphicon glyphicon-list"></span></button>
<button title="Trash" class="btn btn-danger btn-xs" name="inbox_del">
<span class="glyphicon glyphicon-trash"></span></button>
</form>
執行我的查詢代碼:
if(isset($_POST['inbox_view'])){
$id = filter($_POST['key']);
$type = '1';
$stmt = $dbcon->query("SELECT * FROM messages WHERE id='$id' AND type='1'") or die(mysqli_error());
$stmt2 = $dbcon->prepare("UPDATE messages SET seen='0' WHERE id=?") or die(mysqli_error());
$stmt2->bind_param('s',$id);
$stmt2->execute();
while($row = mysqli_fetch_array($stmt)){
$sender=$row['sender'];
$msg=$row['msg'];
$mdate=$row['mdate'];
}
}
模態:
<div class="modal fade-in" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>
<h4 class="modal-title" id="myModalLabel"><?php echo $value->sender; ?></h4>
</div>
<div class="modal-body">
<!-- Description-->
<div class="row">
<div class="col-md-12">
<p class="wrap"><?php echo $value->msg?></p>
</div>
</div>
<!-- End Description-->
</div>
<div class="modal-footer">
Received: <?php echo $value->mdate ?>
</div>
</div>
</div>
</div>
我到底做錯了什麼?我需要做些什麼來完成這項工作?
PS:更新查詢是檢查郵件是否被讀取
未讀郵件=大膽
讀的郵件=正常
Bootstrap不關心你的後端。提供JS會更合適。我的猜測是在檢索XHR響應後意外關閉了模式,或者根本不使用XHR,並且模式不會關閉,但瀏覽器正在發送普通的POST請求,這就是頁面重新加載的原因。 –
我不熟悉bootstrap。但我錯過了一些東西。你在哪裏發送表格?我期望或者輸入提交或JavaScript函數,聽按鈕點擊或什麼,然後觸發該帖子 – Gerard
@Gerard你是什麼意思「我在哪裏發送表單?」我使用'