请教原生PHP PDO 删除一条记录 一直不成功,不知道错在哪里。

【字号: 日期:2024-01-05浏览:37作者:雯心

问题描述

请教原生PHP PDO 删除一条记录 一直不成功,不知道错在哪里,困扰半天了,请大牛指点一下。

需要想通过GET的方式删除一条数据,

<a href="localhost/admin/cmd.php?act=delInfo&t=link&id=60"> 删除</a>

<?php//连接数据库$servername = 'localhost';$charset = 'utf8mb4';$username = 'sa';$password = '123456'; $dbname='touying';$conn = new PDO("mysql:host=$servername;dbname=$dbname;charset=$charset", $username, $password);$act=$_GET["act"];switch ($act){case 'AdminLogin':AdminLogin(); break;case 'delInfo':delInfo();break;default:;}// get请求删除信息,localhost/admin/cmd.php?act=delInfo&t=link&id=60// 参数中的 act=操作的方法, t=link是要操作的表名link,id=60 是要操作的id.Function delInfo(){$t=$_GET["t"];$tid=$_GET["id"];$sql="DELETE From ".$t." where id=".$id;$count=$conn->exec($sql);print("Deleted $count rows.n");}?>

结果出错了,错误提示:

Fatal error: Uncaught Error: Call to a member function exec() on null in D:phpstudy_proWWWadmincmd.php:32 Stack trace: #0 D:phpstudy_proWWWadmincmd.php(22): delInfo() #1 {main} thrown in D:phpstudy_proWWWadmincmd.php on line 32

问题解答

回答1:

$sql="DELETE From ".$t." where id=".$tid;

这里的id是输入错误,正常应该是tid,问题不在这里,打断后,sql 是正常的。DELETE From link where id=69 数据库有这记录。

$count=$conn->exec($sql); //这个是出错行。

相关文章: