用thinkphp連線mysql資料庫

魔豆發表於2016-10-15

一、設定mysql資料庫的引數

thinkphp\Application\Home\Conf\config.php

<?php
return array(
    //'配置項'=>'配置值'
        'DB_TYPE'               =>  'mysql',     // 資料庫型別
        'DB_HOST'               =>  'localhost', // 伺服器地址
        'DB_NAME'               =>  'mydb',          // 資料庫名
        'DB_USER'               =>  'root',      // 使用者名稱
        'DB_PWD'                =>  '123',          // 密碼
        'DB_PORT'               =>  '3306',        //
        'DB_PREFIX'             =>  '',    // 資料庫表字首
        'DB_PARAMS'              =>  array(), // 資料庫連線引數
        'DB_DEBUG'              =>  TRUE, // 資料庫除錯模式 開啟後可以記錄SQL日誌
        'DB_FIELDS_CACHE'       =>  true,        // 啟用欄位快取
        'DB_CHARSET'            =>  'utf8',      // 資料庫編碼預設採用utf8
        'DB_DEPLOY_TYPE'        =>  0, // 資料庫部署方式:0 集中式(單一伺服器),1 分散式(主從伺服器)
        'DB_RW_SEPARATE'        =>  false,       // 資料庫讀寫是否分離 主從式有效
        'DB_MASTER_NUM'         =>  1, // 讀寫分離後 主伺服器數量
        'DB_SLAVE_NO'           =>  '' // 指定從伺服器序號
);

 

二、編寫連線資料庫的程式碼

本示例是查詢city表的第一行記錄的cityname欄位,然後將cityname欄位的內容顯示在頁面上

thinkphp\Application\Home\Controller\Demo1Controller.class.php

<?php
namespace Home\Controller;
use Think\Controller;

class Demo1Controller extends Controller {
    public function index(){
            $city = M("city")->select();
            $this->assign('cityname',$city[0]['cityname']);
            $this->display();
        }
}

 

thinkphp\Application\Home\View\Demo1\index.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
Hello,{$name}!
</body>
</html>

 

三、查詢一個表,並且顯示錶中的資料

thinkphp\Application\Home\Controller\Demo1Controller.class.php

<?php
namespace Home\Controller;
use Think\Controller;

class Demo1Controller extends Controller {
    public function index(){
        $user = M("city")->select(); 
        $this->assign('list',$user);       
        $this->display();
    }
}

 

thinkphp\Application\Home\View\Demo1\index.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Demo1</title>
</head>
<body>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
  <tr>
      <td>序號</td>
    <td>城市</td>
    <td>省會</td>
    <td>描述</td>
  </tr>
  <foreach name="list" item="item" key="index">
  <tr>
      <td>{$index+1}</td>
    <td>{$item.cityname}</td>
    <td>{$item.province}</td>
    <td>{$item.citydesc}</td>
  </tr>
  </foreach>
</table>
</body>
</html>

foreach是thinkphp內建的標籤

 

四、將從資料庫中查詢中的資料以json的格式返回

<?php
namespace Home\Controller;
use Think\Controller;

class Demo1Controller extends Controller {
    
    public function data(){
        $subject = M("tbsubject")->field('id,subjectname')->select();
    
        $this->ajaxReturn($subject,'JSON');
    }
}

 

相關文章