您的位置:首页 > 编程语言 > PHP开发

php-简单后台图书管理系统-数据库表的创建以及pdo方式数据库的封装工具类01

2017-04-05 21:47 1161 查看
做后台管理,首先要建立数据库  我创建的数据库名字叫做book  

在navicat里面创建

效果图如下:



建立表结构,这里我使用的是pdo方式建立表以及跟表的增删改查操作

代码如下:

//pdo工具类

<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2017/4/1
* Time: 17:54
*/
class LoginPdbUtils
{
public $dbname;//数据库名称
public $tabName;//表名
public $dbuserName;//用户名
public $dbpassword;//密码
public $pdo;//pdo对象

/**工具类的构造器
* PDODbUtils constructor.
* @param $dbname  数据库名
* @param $userName 用户名
* @param $password 密码
*/
public function __construct()
{
$this->dbname = DB_NAME;
$this->tabName = TAB_NAME;
$this->dbuserName = DB_USER_NAME;
$this->dbpassword = DB_USER_PASSWORD;
try {
//  $dsn = "mysql:host=localhost;dbname=db_blog";//dbname数据库名
$dsn = "mysql:host=localhost;dbname=" . $this->dbname . "";//数据库参数是传进来的
$this->pdo = new PDO($dsn, $this->dbuserName, $this->dbpassword);

//设置错误模式
$this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {

echo $e->getMessage();
}
}

/**
* 创建表
*/
public function pdoCreateTable()
{
//这个是是用字符串拼接方式
$createTableSql = "create table if NOT EXISTS " . $this->dbname . "." . TAB_NAME . "(_id INTEGER auto_increment PRIMARY KEY ,username VARCHAR (20) NOT NULL ,password VARCHAR (50) NOT NULL,cre_time datetime NOT NULL )";
//
$createTableSqlD = "create table if NOT EXISTS " . $this->dbname . "." . TAB_NAME . "(_id INTEGER auto_increment PRIMARY KEY ,username VARCHAR (20) NOT NULL ,password VARCHAR (50) NOT NULL,cre_time datetime NOT NULL)";
echo "<br/>";
echo $createTableSqlD;
echo '<br/>';
$this->pdo->exec($createTableSqlD);
echo "创建表成功";
}

/**
* 使用pdo插入数据到数据库
*/
public function pdoInsert($tabName, $username, $password, $time)
{
echo "username=" . $username . "password=" . $password . "<br/>";
$pdoInsertSql = "insert into " . $this->dbname . "  .  " . $tabName . " (username,password,cre_time) values('" . $username . "','" . $password . "','" . $time . "')";
$pdoInsertSqlD = "insert into " . $this->dbname . "  .  " . $tabName . " (username,password,cre_time) values('{$username}','" . $password . "','" . $time . "')";
echo '<hr/>';
echo $pdoInsertSql;
echo '<hr/>';
//再执行sql语句
$count = $this->pdo->exec($pdoInsertSqlD);
echo $count;
echo '<hr/>';
return $count;
}

public function pdoUpdate()
{

}
/**
* @return PDOStatement
*/
public function pdoSelect()
{

$selectSql = "select *from {$this->dbname}.{$this->tabName}";
$this->pdo->query("set character set 'utf8'");
$sth = $this->pdo->query($selectSql);
return $sth;
}
}

define('DB_NAME', 'book');//数据库名称
define('DB_USER_NAME', 'root');//数据库的用户名
define('DB_USER_PASSWORD', 'root');//数据库的用户密码
define('TAB_NAME', 'admin');//表名
define('USER_NAME', 'username');//数据库的标题字段
define('PASSWORD', 'password');//数据库的内容字段
define('CRE_TIME', 'time');//数据库的时间字段
//字段名
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: