2014-10-08 36 views
0

我有一個表,它的觀點是這樣的刪除表中的行之前顯示一個確認框

ID NAME LOCATION DELETE 
1 sam US  delete 

我有一個刪除給定行

echo "<td><a href=\"delete_members.php?id=".$row['id']."\">Delete</a></td>"; 

表的語句它重定向到delete_members.php頁面,行被刪除,但我希望顯示一個警告框,以確保用戶想要刪除該行。它我有一個代號爲delete_members.php頁面

<?php 
include('admin_session.php'); 
$con=mysqli_connect("abc.com","abc","abc","abc"); 
// Check connection 
if (mysqli_connect_errno()) { 
echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 

$id = $_GET['id']; 

mysqli_query($con,"DELETE FROM members WHERE id='".$id."'"); 
mysqli_close($con); 
header("Location: admin_member_list.php"); 
?> 

然而

<button onclick="myFunction()">Delete</button> 

<script> 
function myFunction() { 
    var x; 
    if (confirm("Press a button!") == true) { 
     window.location="yourphppage.php"; // not sure which link should be placed here 
     return true; 
    } else { 
     window.location="index.php"; 
     return true; 
    } 
    document.getElementById("demo").innerHTML = x; 
} 
</script> 

代碼,我無法以適當的方式與語句中使用的確認腳本。我希望在點擊上面給出的第一個語句中存在的編輯按鈕後彈出警告框(即腳本運行),然後如果用戶確認它應該運行delete_members.php腳本。希望如果有人能指導我

+0

所以,你希望用戶看到一個確認對話框,每當他按下一個刪除特定行的鏈接?你有哪個'button'關聯了這個'onclick'函數呢? – 2014-10-08 10:50:18

+0

@ Vivek Pradhan是的,我希望通過點擊刪除(我沒有使用一個按鈕,我做了一個鏈接)刪除特定的行,但在此之前確認框應該顯示 – user3774056 2014-10-08 11:26:54

+0

$ ID實際上有一個值?如果你只是回顯「DELETE FROM members WHERE id ='」。$ id。「'」,會發生什麼?另外,添加一個die()函數來檢查錯誤:mysqli_query($ con,「DELETE FROM members WHERE id ='」。$ id。「'」)或die(mysqli_error($ con));並刪除頭(),以防萬一你錯過了警告或錯誤 – 2014-10-08 11:51:46

回答

2

在最簡單的方法:

echo "<a onclick=\"return confirm('Delete this record?')\" href=\"delete_members.php?id=".$row['id']."\">delete</a>"; 

你也可以做到這一點不顯眼的方式,通過一次使用類似添加類的鏈接並選擇他們所有jQuery,然後將確認邏輯綁定到onclick事件。事情是這樣的:

$('a.delete').on('click', function() { 
    var choice = confirm('Do you really want to delete this record?'); 
    if(choice === true) { 
     return true; 
    } 
    return false; 
}); 
+0

我試過你的代碼,但它沒有工作,也改變了刪除鏈接的位置。它沒有得到顯示在哪裏它早些時候 – user3774056 2014-10-08 11:31:04

+0

你可以顯示由PHP呈現的HTML?你有一個HTML驗證器可以檢查文檔的有效性嗎? – 2014-10-08 11:32:52

+0

我在示例中省略了'​​'。你應該再次添加它可能... – 2014-10-08 11:34:28

0
echo "<a href='delete_members.php?id={$row['id']}' onclick=\"return confirm('Do you really want to delete this?')\">DELETE</a>"; 
+0

你會得到HTML標記錯誤 – 2014-10-08 10:55:18

+0

好吧,編輯帖子。沒有加引號。 :P – 2014-10-08 11:03:53

0

你可以試試這個。希望它能爲你工作..

添加一個'刪除'類到錨標記。

echo "<td><a href=\"delete_members.php?id=".$row['id']."\" class=\"delete\">Delete</a></td>"; 

然後綁定刪除功能:

$('.delete').on('click', myFunction); 
+0

我收到一個錯誤:解析錯誤:語法錯誤,意外T_ENCAPSED_AND_WHITESPACE – user3774056 2014-10-08 11:34:52

+0

編輯我的帖子。現在,它不會給語法錯誤。 – 2014-10-08 11:38:48

0

我認爲這將是有用的,請看看這個

的$ id = $行[ '身份證'];

如果你想通過編號可以使用$ ID,否則只是調用功能,無需PARAMS

echo "<a href='#' onclick='deletemember($id)'>Delete</a>"; 

<script> 

    function deletemember(id) 
     { 
       var r = confirm("Are you sure you want to delete"); 
       if(r == true) 
       { 
        $.ajax({ 
           type:"GET", 
           url:"delete_members.php", 
           data: ({id:id}), 
           success: function(data) 
           { 
            window.location="yourphppage.php"; 
           } 
         }); 

       } 
       else 
       { 
        window.location="index.php";   
       } 
    } 

</script> 
+0

它不是刪除行 – user3774056 2014-10-09 04:23:01

+0

是的我沒有寫刪除邏輯我只寫了確認消息alert..ok在哪個頁面你寫查詢刪除成員..發送到該頁面的ajax請求..如果你不明白告訴我,我會解釋清楚.. – Choco 2014-10-09 06:15:28

+0

我已編輯我的代碼,請檢查與。你需要添加jQuery版本不要忘記 – Choco 2014-10-09 06:21:58