Bitte sagen Sie mir, wie ich einen Datensatz mit nativem PHP-PDO löschen kann. Es war nicht erfolgreich und ich weiß nicht, wo der Fehler liegt.
志远电脑小马哥
志远电脑小马哥 2022-05-11 20:38:55
0
2
934

Bitte geben Sie mir einen Rat, wie ich einen Datensatz mit nativem PHP PDO löschen kann. Ich weiß nicht, wo der Fehler liegt. Bitte geben Sie mir einen Rat.

Sie müssen ein Datenelement über GET löschen.

<a href="localhost/admin/cmd.php?act=delInfo&t=link&id=60"> Löschen</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");
	}
?>

Das Ergebnis ist ein Fehler, Fehlermeldung:

Schwerwiegender Fehler: 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} wird in D:phpstudy_proWWWadmincmd.php in Zeile 32 geworfen

志远电脑小马哥
志远电脑小马哥

Antworte allen(1)
志远电脑小马哥
 $sql="DELETE From ".$t." where id=".$tid;

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

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

  • Antwort 没有把$conn 传入 delInfo 方法里,没看到报错说找不到这个exec成员方法吗
    ABOUT Autor 2022-05-27 09:52:06
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage