Окно подтверждения не отображается и автоматически удаляется

Помоги мне, пожалуйста. Я создал процесс удаления, в котором есть окно подтверждения, чтобы спросить пользователя, уверен он или нет. но окно подтверждения не появляется и автоматически удаляет данные и даже не перенаправляет меня. Помогите мне пожалуйста!

Мне нужно показать окно подтверждения («вы уверены») и если ввод верен. он удалит данные и перенаправит на другую страницу.

 <?php
 require_once('connect/connect.php');
 ?>
 <script>
 var r = confirm("Are you sure?");
 if (r == true)
 {
 alert(' item successfuly deleted!!');
 </script>
 <?php

 if(isset($_GET['pid'])){
$sql ='Select * FROM product where pid = '.$_GET['pid'];
$qry = mysql_query($sql);
$data = mysql_fetch_array($qry);
$pname = $data['pname'];
$pstock = $data['pstock'];
}
$sq3="INSERT INTO report VALUES('NULL','".$pname."', '" .$pstock. "', 'Item Deleted' )";
$qry3 = mysql_query($sq3);

$sql2 = 'DELETE FROM product where pid = '.$_GET['pid'];
$qry2 = mysql_query($sql2);
?>
<script>
 window.location.assign('products.php');    
 }
 </script>
 <script>
 else
 {
window.location.assign('products.php');
 }
</script>

person Lemon    schedule 15.05.2014    source источник


Ответы (3)


вы пропустили закрывающую скобку } условия if

 <script>
 var r = confirm("Are you sure?");
 if (r == true)
 {
 alert(' item successfuly deleted!!');
 }
 </script>

FIDDLE

person Sajad Karuthedath    schedule 15.05.2014
comment
Спасибо, сэр! Я этого не видел! Ты восхитителен! - person Lemon; 15.05.2014
comment
@Lemon: добро пожаловать..!! :) рад помочь :) было бы неплохо, если бы вы приняли ответ - person Sajad Karuthedath; 15.05.2014

Попробуйте короткое выражение if

(r == true) ? alert('item successfuly deleted!!') : "" ;
person John Priestakos    schedule 15.05.2014

Вы должны удалить теги скрипта до запуска тегов php. Обновите код, как показано ниже: -

       <?php
       require_once('connect/connect.php');
       ?>
     <script>
    var r = confirm("Are you sure?");
    if (r == true)
     {
       alert(' item successfuly deleted!!');

       <?php

       if(isset($_GET['pid'])){
       $sql ='Select * FROM product where pid = '.$_GET['pid'];
       $qry = mysql_query($sql);
       $data = mysql_fetch_array($qry);
       $pname = $data['pname'];
       $pstock = $data['pstock'];
       }
       $sq3="INSERT INTO report VALUES('NULL','".$pname."', '" .$pstock. "','Item Deleted' )";
        $qry3 = mysql_query($sq3);

        $sql2 = 'DELETE FROM product where pid = '.$_GET['pid'];
        $qry2 = mysql_query($sql2);
        ?>

         window.location.assign('products.php');    
        }

       else
       {
         window.location.assign('products.php');
        }
      </script>

Попробуйте это и подтвердите.

person Bharat Maheshwari    schedule 15.05.2014
comment
Он открывает теги <script> для каждого кода js. Вероятно, это неправильно, но работает для браузеров. Это просто плохой синтаксис. Не реальная проблема. - person John Priestakos; 15.05.2014
comment
Как я понял, он хочет запустить код PHP в операторе сценария if в соответствии с вашим ответом, оператор сценария if будет закрыт, а данные будут удалены в каждом условии, либо пользователь подтвердит это, либо нет - person Bharat Maheshwari; 15.05.2014