2015-01-07 52 views
-4

我用一個鏈接調用模態窗口。基本上我把表單代碼放在模態窗口中。但是,當我點擊刪除按鈕時,沒有任何東西被刪除。我將$ username變量作爲隱藏值發佈。php窗體刪除值不起作用

以下是我的edituser.php(formdelete) 的片段*注意$ username包含有效值。

<div class="btn-toolbar"> 
    <button class="btn btn-primary"><i class="icon-save"></i> Save</button> 
    <!-- will call deleteform --> 
    <a href="#myModal" data-toggle="modal" class="btn">Delete</a> 
    <div class="btn-group"> 
    </div> 
</div> 

<form action="delete.php" method="POST" name="formdelete"> 
<div class="modal small hide fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> 
<div class="modal-header"> 
    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> 
<h3 id="myModalLabel">Delete Confirmation</h3> 
</div> 
<div class="modal-body"> 
    <p class="error-text"><i class="icon-warning-sign modal-icon"></i>Are you sure you want to delete the user <?php echo $username; ?>?</p> 
</div> 
<div class="modal-footer"> 
<input type="hidden" name="session" value="<?php echo $username; ?>"> 
<button class="btn" data-dismiss="modal" aria-hidden="true">Cancel</button> 
<button class="btn btn-danger" type="submit" name="delete" value="delete" data-dismiss="modal">Delete</button> 
</div> 
</div> 
</form> 

這是我的delete.php文件。看來我的deleteform不會將'session'的值發佈到delete.php。因爲當我在deleteform處單擊刪除按鈕後,我查詢了manualy delete.php(在回顯$ _POST ['session']之後)。

<?php 

session_start(); 
include("./include/config.php"); 

$adminRef = $_POST['session']; 

$db = new mysqli(DB_SERVER, DB_USER, DB_PASS, DB_NAME); 

// Remove User from Database 
$stmt = $db->prepare("DELETE FROM users WHERE username= ?"); 
$stmt->bind_param('s', $adminRef); 
$stmt->execute(); 
$stmt->close(); 

//header("Refresh:0; url=admin.php"); 
?> 
+0

爲什麼你在名爲'session'的表單中輸入?我想你可能會對會話的內容感到困惑。 – developerwjk

+1

做了任何基本的調試,如檢查$ adminRef是否正確設置(即表單正在工作),檢查數據庫操作是否成功?現在你只是假設什麼都不會出錯 - 你沒有任何錯誤處理。 –

+0

我建議'var_dump($ _ POST);',一開始 – sodawillow

回答

0

我找到了答案。它不會發布表格,因爲

data-dismiss="modal" 

刪除它在刪除按鈕,全部完成。