<?
$dbms='mysql';
$host='localhost';
$dbName='mysql';
$user='root';
$pass='root';
$dsn="$dbms:host=$host;dbname=$dbName";
try {
$db=new PDO($dsn, $user, $pass, array(PDO::ATTR_PERSISTENT => true));
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "<br/>");
}
?>
<?
$result=$db->prepare("select * from user");
$result->bindValue(":host","字符串");
$result->execute();
print_r( $result->fetchAll());
?>
bindValue这个是类似 JDBC中preparedstatement 中setparameter吗
结果是没有进行过滤,表中数据全显示了
要在 SQL语句中加 where 条件 吗?
写成 select * from user where host=? 这样是不对的吧
<?
$result=$db->prepare("select * from user where host=:host");
$result->bindValue(":host","localhost");
$result->execute();
print_r( $result->fetchAll());
?>
写成这样的形式就可以了
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。