2

1ページ目にはデータがいっぱいのテーブルがあり、すべての行の終わりに削除リンクがあります。そのリンクをクリックすると、リンクは別の削除ページに移動し、mysqldeleteクエリがデータベースからその特定のデータを削除します。その削除ページは、最初のページ(location:1stpage)でリダイレクトされます。これで、JavaScriptの削除はい/いいえチェックを適用したいときに、「よろしいですか?」というメッセージが表示されるたびに。[はい]を押すか、[いいえ]を押すと、データがテーブルから削除されます。この場合、falseを返すことはできません。コードは以下のとおりです。正確に何をすべきか教えてください。

英語が下手でごめんなさい。前もって感謝します。1ページ目:

<?php
include "include.php";
?>

<script type="text/javascript">

function show_confirm()
{
var con = confirm("Are You Sure");
if (con ==true)
  {
  alert("You pressed OK!");
  }
else
  {
  alert("You pressed Cancel!");
  }
}


 </script> 
<table>
  <tr>
    <td align="center">EDIT OR DELETE DATA</td>
  </tr>
  <tr>
    <td>
      <table border="1">
      ?php
        if(isset($_POST['submit']))
        {
            $order = "UPDATE books SET author='$_POST[author]', title='$_POST[title]', price='$_POST[price]' WHERE isbn='$_POST[isbn]'";
            mysql_query($order) or die (mysql_error());
        }   

      $order = "SELECT * FROM books ORDER BY author" or die (mysql_error());
      $result = mysql_query($order);
      while ($row=mysql_fetch_array($result))
      {
        echo ("<tr>
                <td>$row[isbn]</td>
                <td>$row[author]</td>
                <td>$row[title]</td>
                <td>$row[price]</td>
                <td> <a href=\"editdata_form.php?isbn=$row[isbn]\"> Edit </a> </td>
                <td> <a href=\"delete.php?isbn=$row[isbn]\" onclick='show_confirm()'> Delete </a> </td>
              </tr>");
      }       

  ?>
      </table>
    </td>
   </tr>
</table>

mysql削除クエリが実行されるページ:

<?php header("Location: editordeletedata.php"); ?>  
<p> <title>delete</title> </p>
<?php
include "include.php";
?>

<?php

if(isset($_GET['isbn']))
{
    $order = "DELETE FROM books WHERE isbn = '$_GET[isbn]'";
    mysql_query($order) or die (mysql_error());
}


?>
4

3 に答える 3

5

私が書いたこの単純なコードスニペットを見てください。正しく修正されるはずです。

<html>
<head>
<script type="text/javascript">

function show_confirm() {
    return confirm("Are You Sure");
}
</script>
</head>
<body>
    <a href="http://www.google.com" onclick='return show_confirm();'> Google </a>
</body>
</html>

フィドル

于 2012-07-05T20:40:43.030 に答える
0

削除リンクを無効にして、リダイレクトをjavascript関数に移動します。リンクは次のようになります。

<a href=\"javascript:void(0)\" onclick='show_confirm($row[isbn])'> Delete </a> 

そして、javascript関数は次のようになります。

function show_confirm(isbn)
{
if (confirm("Are You Sure"))
  {
  alert("You pressed OK!");
  location.replace('delete.php?isbn='+isbn);
  }
else
  {
  alert("You pressed Cancel!");
  }
}
于 2012-07-05T20:34:18.110 に答える
0

falseを返すことが機能しない理由はわかりません。

function show_confirm()
{
    if (confirm("Are You Sure"))
    {
      alert("You pressed OK!");
    }
    else
    {
        alert("You pressed Cancel!");
        return false;
    }
}
于 2012-07-05T20:40:10.113 に答える