pdo mysql_real_escape_string_php – 如何在PDO中使用/编写mysql_real_escape_string?

参见英文答案 > real escape string and PDO                                    3个

在我的代码中我试图将MysqL_real_escape_string转换为PDO语句.有人有关于如何在PDO中编写MysqL_real_escape_string的提示吗?

我在两行中使用MysqL_real_escape_string:

$userName = MysqL_real_escape_string($_ POST [‘username’]);

$password = sha1(MysqL_real_escape_string($_ POST [‘password’]));

PHP

ob_start();

session_start();

include("../database/db.PHP");

$userName = MysqL_real_escape_string($_POST['username']);

$password = sha1(MysqL_real_escape_string($_POST['password']));

echo "MysqL_query($query);

// $rows = $res->fetch(PDO::FETCH_ASSOC);

$rows = MysqL_fetch_assoc($res);

echo "MysqL_num_rows($res) . "PHP");

// }

// else

// {

// echo 'Username and password dont match PHP?loginerror=yes");

// }

if(MysqL_num_rows($res)>0)

{

$_SESSION['userName'] = $rows['admin_usr_name'];

$_SESSION['admin_id'] = $rows['admin_id'];

header("location: ../pages/content.PHP");

}

else

{

echo 'Username and password dont match PHP?loginerror=yes");

}

?>

这就是我试图用PDO做的事情

$host = "localhost";

$user = "root";

$password = "root";

$db = "blog";

$dsn = "MysqL:host=$host;dbname=$db;charset=utf8";

$opt = array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC);

$pdo = new PDO($dsn,$user,$password,$opt);

$username = $_POST['username'];

$password = $_POST['password'];

$query = "select * from tbladmin where admin_usr_name=:userName and admin_pwd=:passWord";

try

{

$databas = new PDO($dsn,$password);

}

catch (PDOException $e)

{

echo 'Connection Failed: ' . $e->getMessage();

}

$statement = $databas->prepare($query);

$statement->execute(array(':userName'=>$username,':passWord'=> $password));

$row = $statement->fetch();

我总是得到这个错误:

在非对象上调用成员函数prepare()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值