php删除选项不起作用

时间:2014-02-15 13:36:33

标签: php jquery mysql ajax

我想在我的网站上使用php创建一个删除构造框但是我遇到了一些问题。如果我单击取消按钮也删除我的数据库中的行。索引页面是在jquery中设计的

这是我用于删除选项的PHP代码吗?

<?php

    echo "<script language='javascript' type='text/javascript'>var x=confirm('Successfully Deleted!')</script>";

    if(x==true)
    {
    echo"deleted";
    include ("dbconnection.php");
$pid=$_GET['pid'];
$sql="DELETE FROM voters where id=$pid";
$res = mysql_query($sql) or die(mysql_error()); 
echo "<script language='javascript'  type='text/javascript'>window.open('index.php','_self')</script>";
}
else
{
echo"cancelled";
}
   ?>

这是我的jquery代码......

$str.="<thead><tr><th>ID</th><th>Card No</th><th>Name</th><th>Mob_num</th><th>Email</th><th>Action</th></tr></thead><tbody>";
                    while($row = mysql_fetch_array($res)){
                        $str.="<tr><td><center>".$row['id']."</center></td>";
                        $str.="<td>".$row['vcardno']."</td>";
                        $str.="<td>".$row['vname']."</td>";
                        $str.="<td>".$row['mob_num']."</td>";
                        $str.="<td>".$row['email']."</td>";
                        $str.="<td><center><a class='fancybox fancybox.ajax' href='viewstudent.php?ppid=".$row['id']."' onclick='return update()'><img src = 'images/view.png' height='30' width='30' alt = 'view' title = 'view'/></a><a class='fancybox fancybox.ajax' href='updatestudent.php?ppid=".$row['id']."' onclick='return update()'><img src = 'images/edit-icon.png' height='30' width='30' alt = 'edit' title = 'edit'/></a><a href='delete1.php?pid=".$row['id']."' onclick='return deleteItem()' ><img src = 'images/edit_delete.png' height='30' width='30' alt = 'delete' title = 'delete'/></a></center></td></tr>";
                    }

感谢..

3 个答案:

答案 0 :(得分:1)

x 是jquery的变量。您无法在PHP代码中访问它。你需要通过ajax调用访问它(这是单向的)。

答案 1 :(得分:0)

为什么你不自由地使用javascript然后将它嵌入php?

并且您在javascript代码中遗漏了;

试试这个

<script language='javascript' type='text/javascript'>
   var x= confirm('Successfully Deleted!') ;
                                           ^^---//you missed this
</script>   
<?php

以及您无法混合PHP和JavaScript代码。

你可以在php中使用这个javascript,但不建议这样做。

 <script language='javascript' type='text/javascript'>
      var x= confirm('Successfully Deleted!') ;
      <?php $abc = "<script>document.write(x)</script>" ; ?> 
</script>   
    <?php
      if($abc==true)
 {   
   ..........                           

答案 2 :(得分:0)

 if(x==true) 

这里你有女仆两个错误。 PHP中的一个变量以'$'符号开头,你不能在PHP脚本中加入javascript变量。我认为您对'客户端服务器架构'了解不多。 PHP脚本是服务器端脚本,将在Server上处理。而javaScript是客户端脚本,将在客户端上处理(通常在浏览器上)。

在您的情况下,您可以使用AJAX技术。在向服务器发出ajax请求之前进行确认对话。然后检查ajax请求的状态,然后进行删除成功对话框。 Check this sampletuto

<强> [更新] 而不是mysql使用 mysqli PDO 以获得良好的安全性。