简体   繁体   中英

php delete option is not working

hi im trying to create a delete conformation box using php in my website but im getting some issues . if i click cancel button also its deleting the row in my database. The index page is designed in jquery

this is the php code which i have used for delete option?

<?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";
}
   ?>

this is my jquery code...

$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>";
                    }

thanks..

x is a variable of jquery. You can't access it in php code. You need to access it via ajax call (this is the one way).

why dont you use freely javascript then embedding it in php ?

and also you missing ; in your javascript code.

try this

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

and also you cant mix PHP and javascript codes.

You can use this javascript in php in that why but its not advised.

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

Here you have maid two mistakes. One variables in PHP starts with '$' symbol and You can not acceess javascript variable in PHP scripts. I think you don't have much idea about 'Client Server architecture' . PHP script is a server side script which will be processed on Server. Whereas javaScript is Client side script which will be processed on client(Normally on browser).

In your case you can use AJAX technology. Make a confirmation dialog before making ajax request to server. And then check the status of the ajax request then make delete success dialog. Check this sample and tuto

[Update] Instead of mysql use mysqli or PDO for good security.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM