PDO

对不同的数据库连接使用

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
<?php
//造DSN:驱动名:dbname=数据库名;host=服务器地址
$dsn = "mysql:dbname=mydb;host=localhost";
//造PDO对象
$pdo = new PDO($dsn,"root","123");

//写SQL语句
$sql = "select * from Info";

//执行SQL语句
//$v = $pdo->query($sql);
//返回的对象比较特殊,可以直接用循环遍历
/*foreach($v as $a)
{
echo $a[0];
}*/

//预处理,先把SQL语句放到服务器上等待我们给他指令去执行
//准备一条SQL语句
$stm = $pdo->prepare($sql);

//执行准备好的SQL语句,成功返回true,失败返回false
if($stm->execute())
{
//1.逐行取数据
//var_dump($stm->fetch());
//2.取所有的
//var_dump($stm->fetchAll(PDO::FETCH_OBJ));
//3.取某一列
//var_dump($stm->fetchColumn(1));
//4.返回对象
//var_dump($stm->fetchObject());

}
else
{
echo "执行失败!";
}

?>
</body>
</html>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
<?php

//造对象
$dsn = "mysql:dbname=mydb;host=localhost";
$pdo = new PDO($dsn,"root","123");

//写SQL语句,参数用?来代替
//$sql = "insert into Nation values(?,?)";
$sql = "insert into Nation values(:code,:name)";
//预处理
$stm = $pdo->prepare($sql);

//给参数绑定值
/*$stm->bindParam(1,$code);
$stm->bindParam(2,$name);
$code = "p100";
$name = "回家";*/

/*$stm->bindParam("code",$code,PDO::PARAM_STR);
$stm->bindParam("name",$name,PDO::PARAM_STR);
$code = "p102";
$name = "回家";*/

//造数组
//$attr = array("p101","很快");
//$attr = array("code"=>"p103","name"=>"shj");

//执行
if($stm->execute($_POST))
{
echo "添加成功";
}
else
{
echo "添加失败";
}

?>
</body>
</html>

自己打的配置工具

<?php
class pdoa
{
public $host = "localhost"; //数据库地址
public $uid = "root"; //数据库用户名 、
public $pwd = ""; //数据库密码

//执行SQL语句,返回相应的结果的方法
//参数:$sql代表要执行的SQL语句,$type是SQL语句类型0代表查询1代表其他,$db代表要操作的数据库
public function Prepare($sql,$db="bcs")
{
$dsn = "mysql:dbname=$db;host=$this->host";
$pdo = new PDO($dsn,$this->uid,$this->pwd);

//3.执行SQL语句
$stm = $pdo->prepare($sql);

if($stm->execute())
{
return $stm->fetchAll();
}
else
{
echo "连接失败";
}

}
}

php第十八节课的更多相关文章

  1. centos shell编程4【分发系统】 服务器标准化 mkpasswd 生成密码的工具 expect讲解 expect传递参数 expect自动同步文件 expect指定host和要同步的文件 expect文件分发系统 expect自动发送密钥脚本 Linux脚本执行方式 第三十八节课

    centos shell编程4[分发系统] 服务器标准化  mkpasswd 生成密码的工具  expect讲解   expect传递参数   expect自动同步文件  expect指定host和要 ...

  2. centos tomcat/resin安装配置 卸载系统自带的java tomcat安装配置 安装JDK resin安装配置 第二十八节课

    centos  tomcat/resin安装配置  卸载系统自带的java  tomcat安装配置  安装JDK   resin安装配置    第二十八节课 tomcat和java都不需要编译 tom ...

  3. centos linux系统日常管理复习 CPU物理数逻辑核数,iftop ,iotop ,sar ,ps,netstat ,一网卡多IP,mii-tool 连接,ethtool速率,一个网卡配置多个IP,mii-tool 连接,ethtool速率 ,crontab备份, 第十八节课

    centos linux系统日常管理复习 物理CPU和每颗CPU的逻辑核数,uptime ,w,vmstat,iftop ,iotop ,sar ,ps,netstat ,一个网卡配置多个IP,mii ...

  4. 风炫安全WEB安全学习第三十八节课 越权漏洞演示与讲解

    风炫安全WEB安全学习第三十八节课 越权漏洞演示与讲解 越权漏洞 0x01 漏洞介绍 越权漏洞的危害与影响主要是与对应业务的重要性相关,比如说某一页面服务器端响应(不局限于页面返回的信息,有时信息在响 ...

  5. 风炫安全web安全学习第二十八节课 CSRF攻击原理

    风炫安全web安全学习第二十八节课 CSRF攻击原理 CSRF 简介 跨站请求伪造 (Cross-Site Request Forgery, CSRF),也被称为 One Click Attack 或 ...

  6. 风炫安全WEB安全学习第十八节课 使用SQLMAP自动化注入(二)

    风炫安全WEB安全学习第十八节课 使用SQLMAP自动化注入(二) –is-dba 当前用户权限(是否为root权限) –dbs 所有数据库 –current-db 网站当前数据库 –users 所有 ...

  7. php第二十八节课

    文件上传 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

  8. 第一百四十八节,封装库--JavaScript,菜单切换

    第一百四十八节,封装库--JavaScript,菜单切换 首先在封装库封装点击切换方法 /** dian_ji_qie_huan()方法,设置点击切换,将元素设置成点击切换,也就是点击目标元素后,循环 ...

  9. NeHe OpenGL教程 第四十八课:轨迹球

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

随机推荐

  1. 算法竞赛入门经典 习题 2-10 排列(permutation)

    习题 2-10 用1,2,3.....,9组成3个三位数abc.def和ghi,每一个数字恰好使用一次,要求abc:def:ghi=1:2:3.输出全部解. #include <stdio.h& ...

  2. 如何在 webpack 项目中使用绝对路径

    react 小白编程 本项目是使用 create-react-app 脚手架构建的react项目 找到 config 配置文件下的 webpack.config.dev.js 和 webpack.co ...

  3. C/C++ 答疑解问

    1. sizeof(string)的大小 string属于类,类的大小就是类中成员变量(非静态)加上指向虚函数表的指针以及指向虚基类表的指针加起来的和.因为string是一个模板类,受具体的实现来决定 ...

  4. FOBiz组合模糊查询

    List list= delegator.findList("Entity",condition , null, null, null, false);其中condition为:组 ...

  5. android:descendantFocusability

    开发中很常见的一个问题,项目中的GridView不仅仅是简单的文字和图片,常常需要自己定义GridView,自己的Adapter去继承BaseAdapter,在adapter中按照需求进行编写,问题就 ...

  6. kentico11 教程,

    create master page with css list menu Add the navigation menu Add a dynamic web part that will repre ...

  7. protected (C# Reference)

    https://msdn.microsoft.com/en-us/library/bcd5672a.aspx The protected keyword is a member access modi ...

  8. Bing Maps进阶系列五:通过DeepEarth的MiniMap控件为Bing Maps扩展迷你小地图

    Bing Maps进阶系列五:通过DeepEarth的MiniMap控件为Bing Maps扩展迷你小地图 Bing Maps Silverlight Control虽然为我们提供了简洁.方便的开发模 ...

  9. bzoj1833

    http://www.lydsy.com/JudgeOnline/problem.php?id=1833 2.5个小时就花在这上面了... 水到200题了...然并卵,天天做水题有什么前途... #i ...

  10. Ubuntu下FileZilla的安装(转载)

    转自:http://os.51cto.com/art/201103/247564.htm FileZilla是一个免费而且开源的FTP客户端软件,共有两种版本:客户端版本.服务器版本.FileZill ...