点击超链接执行js代码实现确认操作

时间:2021-08-07 17:08:25

如题,本次是要实现点击超链接实现执行js代码,并确认是否删除数据库数据,采用php。

首先链接数据库,查询数据库数据:

   1: <?php

   2:     $dbms='mysql';                         //数据库类型 ,对于开发者来说,使用不同的数据库,只要改这个,不用记住那么多的函数

   3:     $host='localhost';                     //数据库主机名

   4:     $dbName='db_database19';            //使用的数据库

   5:     $user='root';                          //数据库连接用户名

   6:     $pass='root';                          //对应的密码

   7:     $dsn="$dbms:host=$host;dbname=$dbName";

   8:     try {

   9:     $pdo = new PDO($dsn, $user, $pass);     //初始化一个PDO对象,就是创建了数据库连接对象$pdo

  10:     $query="select * from tb_pdo_mysql";    //定义SQL语句

  11:     $result=$pdo->prepare($query);            //准备查询语句

  12:     $result->execute();                        //执行查询语句,并返回结果集

  13:     while($res=$result->fetch(PDO::FETCH_ASSOC)){        //while循环输出查询结果集,并且设置结果集的为关联索引

  14:     ?>      

  15:           <tr>

  16:             <td height="22" align="center" valign="middle"><?php echo $res['id'];?></td>

  17:             <td align="center" valign="middle"><?php echo $res['pdo_type'];?></td>

  18:             <td align="center" valign="middle"><?php echo $res['database_name'];?></td>

  19:             <td align="center" valign="middle"><?php echo $res['dates'];?></td>

  20:             <td align="center" valign="middle"><a href="javascript:del(<?php echo $res['id']?>)">删除</a></td>

  21:           </tr>

  22:     <?php 

  23:         }

  24:           } catch (PDOException $e) {

  25:     die ("Error!: " . $e->getMessage() . "<br/>");

  26:     }

  27:     ?>

在超链接删除处调用一javascript方法,传递记录id,js方法为:

   1: <script>

   2:     function del(_id) {

   3:         if (confirm("确认删除"))

   4:         {

   5:             window.location.href="index.php?conn_id="+_id;    //本页面刷新

   6:         }

   7: }

   8: </script>

删除数据库记录代码:

   1: <?php 

   2:     if(@$_GET['conn_id']!=""){

   3:     $dbms='mysql';                         //数据库类型 ,对于开发者来说,使用不同的数据库,只要改这个,不用记住那么多的函数

   4:     $host='localhost';                     //数据库主机名

   5:     $dbName='db_database19';            //使用的数据库

   6:     $user='root';                          //数据库连接用户名

   7:     $pass='root';                          //对应的密码

   8:     $dsn="$dbms:host=$host;dbname=$dbName";

   9:     try {

  10:         $pdo = new PDO($dsn, $user, $pass);     //初始化一个PDO对象,就是创建了数据库连接对象$pdo

  11:         $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);

  12:         $query="delete from tb_pdo_mysql where Id=:id";

  13:         $result=$pdo->prepare($query);            //预准备语句

  14:         $result->bindParam(':id',$_GET['conn_id']);        //绑定更新的数据

  15:         $result->execute();

  16:     } catch (PDOException $e) {

  17:         echo 'PDO Exception Caught.';

  18:         echo 'Error with the database:<br/>';

  19:         echo  'SQL Query: '.$query;

  20:         echo '<pre>';

  21:         echo "Error: " . $e->getMessage(). "<br/>";        

  22:         echo "Code: " . $e->getCode(). "<br/>";

  23:         echo "File: " . $e->getFile(). "<br/>";

  24:         echo "Line: " . $e->getLine(). "<br/>";

  25:         echo "Trace: " . $e->getTraceAsString(). "<br/>";

  26:         echo '</pre>';

  27:     }

  28: }

  29: ?>

这段代码放在html页面body部分最开头处,最坏也要放在查询记录代码之前。