欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

在网页上删除数据库数据

程序员文章站 2022-05-10 18:59:50
...
//$id = $_POST['id'];//获取要删除的ID
$id = isset($_GET['id']) ? $_GET['id'] : '';
//把你的链接数据库代码写这里
echo $id;
$serverName = "192.168.1.100,35890";
$database = "ee";
$uid = "sa";
$pwd = "123";

try {
$conn = new PDO( "sqlsrv:server=$serverName;Database = $database", $uid, $pwd);
}

catch( PDOException $e ) {
die( "Error connecting to SQL Server".$e );
}
$conn->exec("delete from 员工档案表 where _Identify = '$id'");
?>
如代码所示,id的值是从另一PHP文件取得,测试取值成功。
但$conn->exec("delete from 员工档案表 where _Identify = '$id'");没却有执行,请问是为什么呢?
是因为用$conn->exec方法不正确吗?请大神们予以指教。多谢!


回复讨论(解决方案)

请大家帮我看下上面的问题吧,作为菜鸟,知识储量远远未够啊,先谢过了!

$conn->exec("delete from 员工档案表 where _Identify = '$id'");

把$id 单引号去掉

$conn->exec("delete from 员工档案表 where _Identify = '$id'");

把$id 单引号去掉



多谢回帖!不过这个方法我也试过了,也是执行不成功

中文表名?
"delete from [员工档案表] where _Identify = '$id'"
要注意字符集!

print_r($conn->errorInfo());
看看结果

中文表名?
"delete from [员工档案表] where _Identify = '$id'"
要注意字符集!

print_r($conn->errorInfo());
看看结果


太感谢了,报的错误信息为:Array ( [0] => IMSSP [1] => -47 [2] => An error occurred translating the query string to UTF-16: 在多字节的目标代码页中,没有此 Unicode 字符可以映射到的字符。 . )
原来我没有修改该文件的编码格式,改成UTF-8就可以了。
顺便问一下,如果表名和字段名都是英文字母的话,是不是不用改编码格式就能正常运行呢?

是中文就可能用编码问题
表名和字段名 不建议使用中文

是中文就可能用编码问题
表名和字段名 不建议使用中文



特别感谢!!