ThinkPHP连接数据库操作示例【基于DSN方式和数组传参的方式】

这篇文章主要介绍了ThinkPHP连接数据库操作,结合实例形式分析了thinkPHP基于DSN方式和数组传参的方式进行数据库连接的实现步骤与属性设置、控制器、模板使用等相关操作技巧,需要的朋友可以参考下

本文实例讲述了ThinkPHP连接数据库操作。分享给大家供大家参考,具体如下:

一 代码

1、完成入口函数的编写


<?php
define('THINK_PATH', '../ThinkPHP');    //定义ThinkPHP框架路径(相对于入口文件)
define('APP_NAME', 'App');       //定义项目名称
define('APP_PATH', './App');        //定义项目路径
require(THINK_PATH."/ThinkPHP.php");  //加载框架入口文件
App::run();               //实例化一个网站应用实例
?>

2、完成控制器的编写


<?php
header("Content-Type:text/html; charset=utf-8");  //设置页面编码格式
class IndexAction extends Action{
  public function index(){
    $db_dsn="mysql://root:root@127.0.0.1:3306/db_database30";    //定义DSN
    $db = new Db();                       //执行类的实例化
    $conn=$db->getInstance($db_dsn);               //连接数据库,返回数据库驱动类
    $select=$conn->query('select * from think_user');      //执行查询语句
    $this->assign('select',$select);       // 模板变量赋值
    $this->display();              // 指定模板页
  }
  public function type(){
    $dsn = array(
      'dbms'   => 'mysql',
      'username' => 'root',
      'password' => 'root',
      'hostname' => 'localhost',
      'hostport' => '3306',
      'database' => 'db_database30'
    );
    $db = new Db();
    $conn=$db->getInstance($dsn);              //连接数据库,返回数据库驱动类
    $select=$conn->query('select * from think_type');      //执行查询语句
    $this->assign('select',$select);       // 模板变量赋值
    $this->display('type');             // 指定模板页
  }
}
?>

3、完成模板编写


<!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>
<link href="__ROOT__/Public/Css/style.css" rel="external nofollow" rel="external nofollow" rel="stylesheet" type="text/css" />
</head>
<body>
<table width="405" border="1" cellpadding="1" cellspacing="1" bgcolor="#99CC33" bordercolor="#FFFFFF">
 <tr>
  <td colspan="3" bgcolor="#FFFFFF" class="title" align="center">用户信息</td>
 </tr>
 <tr class="title">
  <td bgcolor="#FFFFFF" width="44">ID</td>
  <td bgcolor="#FFFFFF" width="120">名称</td>
  <td bgcolor="#FFFFFF" width="223">地址</td>
 </tr>
 <volist name='select' id='user' >
 <tr class="content">
  <td bgcolor="#FFFFFF">&nbsp;{$user.id}</td>
  <td bgcolor="#FFFFFF">&nbsp;{$user.user}</td>
  <td bgcolor="#FFFFFF">&nbsp;{$user.address}</td>
 </tr>
 </volist>
</table>
</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>
<link href="__ROOT__/Public/Css/style.css" rel="external nofollow" rel="external nofollow" rel="stylesheet" type="text/css" />
</head>
<body>
<table width="405" border="1" cellpadding="1" cellspacing="1" bgcolor="#99CC33" bordercolor="#FFFFFF">
 <tr>
  <td colspan="3" bgcolor="#FFFFFF" class="title" align="center">类别输出</td>
 </tr>
 <tr class="title">
  <td bgcolor="#FFFFFF" width="44">ID</td>
  <td bgcolor="#FFFFFF" width="120">类别名称</td>
  <td bgcolor="#FFFFFF" width="223">添加时间</td>
 </tr>
 <volist name='select' id='type' >
 <tr class="content">
  <td bgcolor="#FFFFFF">&nbsp;{$type.id}</td>
  <td bgcolor="#FFFFFF">&nbsp;{$type.typename}</td>
  <td bgcolor="#FFFFFF">&nbsp;{$type.dates}</td>
 </tr>
 </volist>
</table>
</body>
</html>

二 运行结果

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

本文标题为:ThinkPHP连接数据库操作示例【基于DSN方式和数组传参的方式】

基础教程推荐