2010-10-11 23 views
1

我的代碼如下,我想刪除mysql數據庫中的記錄,但在刪除瀏覽器之前,必須提示用戶是否應繼續刪除。我的問題是我的邏輯不管它刪除記錄,無論如何。任何幫助將不勝感激。PHP:從數據庫中刪除一些提示從javascript

if (isset($_POST['outofqcellchat'])){ 
?> 
<script type ="text/javascript"> 
var question = confirm("Are you sure you want to unsubscribe\nThis will delete all your facebook information in QCell Facebook"); 
if(question){ 
<?php 
$delusr = mysql_query("delete from `chat_config` where `phone` = '$phonenumb'"); 
$row = mysql_num_rows($delusr); 
if($row>=1){ 
header("Location:http://apps.facebook.com/qcellchat"); 
} 
?> 
alert("Unsubscribed, You can register again any time you wish\nThank You"); 
}else { 
alert("Thanks for choosing not to unregister \nQCell Expand your world"); 
} 
</script> 
<?php 
} 
?> 

這就是我的代碼。請幫助

回答

1

在客戶端看到JavaScript之前,PHP在服務器上運行。改用AJAX或表單提交。

3

你在PHP和Javascript之間有一個基本的誤解。 PHP代碼將被執行,而不管任何JavaScript條件(在PHP完成後,在瀏覽器中將處理很長時間)。

您需要更改邏輯,以確認刪除操作將用戶重定向到刪除記錄的PHP頁面,或啓動具有相同效果的Ajax請求。

+0

我中號只使用一個頁面而不是兩個 – 2010-10-11 10:56:53

+0

@Sheriffo是的,這正是你的問題。 – 2010-10-11 10:57:35

+0

所以我不能這樣做在一個頁面 – 2010-10-11 11:00:09

4

您想在點擊錨標籤或按鈕時提示用戶。例如使用錨定標記

<a href="delete.php" onclick="return javascript:confirm("Are you sure you want to delete?");" />Delete</a> 

這會提示用戶。

或者您可以使用JavaScript函數,如

<a href="delete.php" onclick="return check();" />Delete</a> 

    <script type="text/javascript"> 
    function check(){ 
    var question = confirm("Are you sure?"); 
    if(question){ 

    return true; 

    }else{ 

    alert("Thanks for not choosing to delete"); 
    return false; 

    } 

    } 
</script> 

希望這有助於。

+0

對於很好的示例代碼+1。也許你應該爲'delete.php'添加一個'?id = 1234'的例子,儘管爲了清晰起見 – 2010-10-11 10:44:10

+0

你的代碼是正確的並且投票:它與我使用的代碼相同,但爲什麼如果我取消它仍然會刪除? – humphrey 2013-05-02 18:30:46

-1

嘗試將您的PHP與javascript分開,並且不要忘記使用您定位的確切鏈接進行刪除,如果您想要刪除一個一個的記錄,請在href中將其刪除。

刪除

<script type="text/javascript"> 
function check(){ 
var question = confirm("Are you sure?"); 
if(question){ 

return true; 

}else{ 

alert("Thanks for not choosing to delete"); 
return false; 

} 

}