如题,本次是要实现点击超链接实现执行js代码,并确认是否删除数据库数据,采用php。
首先链接数据库,查询数据库数据:
复制代码 代码如下:
<?php
$dbms="mysql"; //数据库类型 ,对于开发者来说,使用不同的数据库,只要改这个,不用记住那么多的函数
$host="localhost"; //数据库主机名
$dbName="db_database19"; //使用的数据库
$user="root"; //数据库连接用户名
$pass="root"; //对应的密码
$dsn="$dbms:host=$host;dbname=$dbName";
try {
$pdo = new PDO($dsn, $user, $pass); //初始化一个PDO对象,就是创建了数据库连接对象$pdo
$query="select * from tb_pdo_mysql"; //定义SQL语句
$result=$pdo->prepare($query); //准备查询语句
$result->execute(); //执行查询语句,并返回结果集
while($res=$result->fetch(PDO::FETCH_ASSOC)){ //while循环输出查询结果集,并且设置结果集的为关联索引
?>
<tr>
<td height="22" align="center" valign="middle"><?php echo $res["id"];?></td>
<td align="center" valign="middle"><?php echo $res["pdo_type"];?></td>
<td align="center" valign="middle"><?php echo $res["database_name"];?></td>
<td align="center" valign="middle"><?php echo $res["dates"];?></td>
<td align="center" valign="middle"><a href="javascript:del(<?php echo $res["id"]?>)">删除</a></td>
</tr>
<?php
}
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "<br/>");
}
?>
在超链接删除处调用一javascript方法,传递记录id,js方法为:
复制代码 代码如下:
<script>
function del(_id) {
if (confirm("确认删除"))
{
window.location.href="index.php?conn_id="+_id; //本页面刷新
}
}
</script>
删除数据库记录代码:
复制代码 代码如下:
<?php
if(@$_GET["conn_id"]!=""){
$dbms="mysql"; //数据库类型 ,对于开发者来说,使用不同的数据库,只要改这个,不用记住那么多的函数
$host="localhost"; //数据库主机名
$dbName="db_database19"; //使用的数据库
$user="root"; //数据库连接用户名
$pass="root"; //对应的密码
$dsn="$dbms:host=$host;dbname=$dbName";
try {
$pdo = new PDO($dsn, $user, $pass); //初始化一个PDO对象,就是创建了数据库连接对象$pdo
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$query="delete from tb_pdo_mysql where Id=:id";
$result=$pdo->prepare($query); //预准备语句
$result->bindParam(":id",$_GET["conn_id"]); //绑定更新的数据
$result->execute();
} catch (PDOException $e) {
echo "PDO Exception Caught.";
echo "Error with the database:<br/>";
echo "SQL Query: ".$query;
echo "<pre>";
echo "Error: " . $e->getMessage(). "<br/>";
echo "Code: " . $e->getCode(). "<br/>";
echo "File: " . $e->getFile(). "<br/>";
echo "Line: " . $e->getLine(). "<br/>";
echo "Trace: " . $e->getTraceAsString(). "<br/>";
echo "</pre>";
}
}
?>
这段代码放在html页面body部分最开头处,最坏也要放在查询记录代码之前。