首頁 微信小程式 微信開發 微信開發資料庫操作

微信開發資料庫操作

May 15, 2017 pm 01:24 PM
資料庫操作

這篇文章主要介紹了微信公眾平台開發資料庫操作的相關資料,需要的朋友可以參考下

一、簡介

前面講解的功能開發都是簡單的呼叫API 完成的,沒有對資料庫進行操作。在接下來的進階功能開發中,需要使用到資料庫,所以在這篇中,將對MySQL 資料庫的操作做一下簡單的介紹,以供讀者參考。

二、思路分析

百度開發者中心提供了強大的雲端資料庫(包括MySQL, MongoDB, Redis),在這一節教學中,我們將對大家比較熟悉的MySQL 資料庫進行操作演示,實現微信與資料庫的交互。

在BAE應用程式中使用雲端資料庫十分簡單,資料庫清單中的名稱即是連接資料庫時的dbname。使用者名稱、密碼、連接位址和連接埠在應用程式中透過環境變數取出。

可使用標準的PHP Mysql 或PHP Mysqli 擴充存取資料庫,BAE的PHP中已提供這兩個擴展,應用可直接使用。

三、建立BAE MySQL資料庫

#3.1 登陸百度開發者中心-> 管理中心-> 選擇應用程式-> 雲環境->服務管理-> MySQL(雲端資料庫) -> 建立資料庫

3.2 建立資料庫

#注意:每個應用程式有且只有一個資料庫享有1G免費配額,其餘資料庫皆不享有免費配額優惠。只有將已使用免費配額的資料庫刪除,才能再次使用此優惠。

3.3 建立成功

在這裡可以看到資料庫的名稱,也就是dbname,後面會被使用到。

點選 “phpMyadmin” 存取資料庫。

3.4 phpMyadmin介面

新資料表,輸入表名及欄位數,點選 「執行」 建立表格。

3.5 建立表格

輸入欄位名稱及欄位類型,輸入完畢後,點選下方的「儲存」,完成表格的建立。

3.6 建立完成

修改id 欄位為主鍵並新增AUTO_INCREMENT;修改from_user 欄位為唯一(UNIQUE),完成表格的修改。

建表作業也可以使用下列SQL語句完成:

CREATE TABLE IF NOT EXISTS `test_mysql`
 ( `id` int(11) NOT NULL AUTO_INCREMENT,
 `from_user` varchar(40) DEFAULT NULL, 
`account` varchar(40) DEFAULT NULL, 
`password` varchar(40) DEFAULT NULL,
 `update_time` datetime DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY 
`from_user` (`from_user`));
登入後複製

phpMyAdmin 操作

資料庫及資料表的建立到此結束,以下將編寫程式碼對資料庫及資料表的使用做詳細講解。

四、官方範例(PHP MySQL)

BAE 官方提供的demo(PHP MySQL)範例如下:

mysql/basic.php 文件內容

<!--?php
 
require_once &#39;includes/configure.php&#39;;
 
class MySQLi_BAE{
 
  private $mysqli;
  private $host;
  private $user;
  private $password;
  private $port;
  private $database;
 
  //在类之外访问私有变量时使用
  function get($property_name){
    if(isset($this--->$property_name)){
      return($this->$property_name);
    }else{
      return(NULL);
    }  
  }
 
  function set($property_name, $value){
    $this->$property_name=$value;
  }
 
  function construct(){
 
    /*从平台获取查询要连接的数据库名称*/
    $this->database = MYSQLNAME;
 
    /*从环境变量里取出数据库连接需要的参数*/
    $this->host = getenv(&#39;HTTP_BAE_ENV_ADDR_SQL_IP&#39;);
    $this->user = getenv(&#39;HTTP_BAE_ENV_AK&#39;);
    $this->password = getenv(&#39;HTTP_BAE_ENV_SK&#39;);
    $this->port = getenv(&#39;HTTP_BAE_ENV_ADDR_SQL_PORT&#39;);
 
    $this->mysqli = new mysqli($this->host, $this->user, $this->password, $this->database, $this->port);
    if($this->mysqli->connect_error){
      die("Connect Server Failed:".$this->mysqli->error);
    }
     
    $this->mysqli->query("set names utf8");
  }
 
  //dql statement
  function execute_dql($query){
     
    $res = $this->mysqli->query($query) or die("操作失败".$this->mysqli->error);
    return $res;
     
    //$this->mysqli->close();
  }
 
  //dml statement
  function execute_dml($query){
     
    $res = $this->mysqli->query($query) or die("操作失败".$this->mysqli->error);
     
    if(!$res){
      return 0;//失败
    }else{
      if($this->mysqli->affected_rows > 0){
        return 1;//执行成功
      }else{
        return 2;//没有行受影响
      }
    }
   
    //$this->mysqli->close();
  }
}
?>
登入後複製

九、測試類別的使用

9.1 測試DML操作

測試程式碼:

<!--?php
 
require_once "MySQLi_BAE.class.php";
 
$mysqli_BAE=new MySQLi_BAE();
 
 
//**************dml*******************
$sql="insert into test_mysql (from_user, account, password, update_time) values(&#39;David&#39;,&#39;860510&#39;, &#39;abcabc&#39;, &#39;2013-09-27 17:14:28&#39;)";
 
//$sql="update test_mysql set account = 860512 where account = 860510";
 
//$sql="delete from test_mysql where account = 860512";
 
$res=$mysqli_BAE--->execute_dml($sql);
 
if($res==0){
  echo "执行失败";
}elseif($res==1){
  echo "执行成功";
}else{
  echo "没有行数影响";
}
?>
登入後複製

測試結果:

9.2 測試DQL運算

測試程式碼:

測試結果:

十、實作與微信的互動(Mysqli 擴充)

10.1 前置運算

A. 引入MySQLi_BAE.class.php 檔案###### //引入資料庫函數檔require_once "MySQLi_BAE.class.php";######B.實例化###物件#########public function construct(){ $this->mysqli_BAE =new MySQLi_BAE();}######10.2 測試插入操作#######測試程式碼:######$insert_sql="INSERT INTO test_mysql(from_user, account, password, update_time) VALUES( '$fromUsername',######'$keywords[1]','$keywords[2]','$nowtime')";$res = $this->mysqli_BAE->execute_dml($insert_sql );###

測試結果:

10.3 測試查詢操作

測試程式碼:

$select_sql="SELECT * FROM test_mysql WHERE from_user ='$fromUsername'";

$select_res=$this->mysqli_BAE->execute_dql($select_sql);$rows=$select_res->fetch_array(MYSQLI_相信測試結果:

10.4 測試更新操作

#測試程式碼:

$update_sql="UPDATE test_mysql SET password='$new_password' WHERE from_user='$fromUsername'";

$res = $this->mysqli_BAE->execute_dml($update_sql);

測試結果:

10.5 測試刪除操作

測試程式碼:

$delete_sql="DELETE FROM test_mysql WHERE from_user='$fromUsername'";

#$res = $this->mysqli_BAE->execute_dml($delete_sql);

測試結果:

與微信交互測試成功。

【相關推薦】


1.

特別推薦「php程式設計師工具箱」V0.1版本下載2.

微信公眾號平台原始碼下載

#3. 

微信人脈王v3.4.5高階商業版微信魔術方塊原始碼

以上是微信開發資料庫操作的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

php如何使用CodeIgniter4框架? php如何使用CodeIgniter4框架? May 31, 2023 pm 02:51 PM

PHP是一種非常流行的程式語言,而CodeIgniter4是一種常用的PHP框架。在開發Web應用程式時,使用框架是非常有幫助的,它可以加速開發過程、提高程式碼品質、降低維護成本。本文將介紹如何使用CodeIgniter4框架。安裝CodeIgniter4框架CodeIgniter4框架可以從官方網站(https://codeigniter.com/)下載。下

如何使用寶塔面板進行MySQL管理 如何使用寶塔面板進行MySQL管理 Jun 21, 2023 am 09:44 AM

寶塔面板是一種功能強大的面板軟體,它可以幫助我們快速部署、管理和監控伺服器,尤其是經常需要進行網站搭建、資料庫管理以及伺服器維護的小型企業或個人用戶。在這些任務中,MySQL資料庫管理在許多情況下都是一個重要的工作。那麼如何使用寶塔面板進行MySQL管理呢?接下來,我們將逐步介紹。第一步:安裝寶塔面板在開始使用寶塔面板進行MySQL管理之前,首先需要先安裝寶塔面

如何使用PHP腳本在Linux環境下進行資料庫操作 如何使用PHP腳本在Linux環境下進行資料庫操作 Oct 05, 2023 pm 03:48 PM

如何使用PHP在Linux環境下進行資料庫操作在現代web應用程式中,資料庫是必不可少的組成部分。 PHP是一種流行的伺服器端腳本語言,它可以與各種資料庫互動。本文將介紹如何在Linux環境下使用PHP腳本進行資料庫操作,並提供一些具體的程式碼範例。步驟1:安裝必要的軟體和依賴項在開始之前,我們需要確保在Linux環境下安裝了PHP和相關的依賴項。通常情況下

如何使用thinkorm來提高資料庫操作效率 如何使用thinkorm來提高資料庫操作效率 Jul 28, 2023 pm 03:21 PM

如何使用thinkorm來提高資料庫操作效率隨著互聯網的迅速發展,越來越多的應用程式需要進行大量的資料庫操作。在這個過程中,資料庫操作的效率問題就變得特別重要。為了提高資料庫操作效率,我們可以使用thinkorm這個強大的ORM框架來進行資料庫操作。本文將介紹如何使用thinkorm來提高資料庫操作效率,並透過程式碼範例來說明。一、什麼是thinkormthi

MySQL中如何使用FULL OUTER JOIN函數取得兩個表的並集 MySQL中如何使用FULL OUTER JOIN函數取得兩個表的並集 Jul 26, 2023 pm 05:45 PM

MySQL中如何使用FULLOUTERJOIN函數取得兩個表的並集在MySQL中,FULLOUTERJOIN函數是一種融合內連接和外連接的功能強大的連接操作。它可以用來取得兩個表的並集,即將兩個表中的所有資料合併為一個結果集。本文將介紹FULLOUTERJOIN函數的用法,並提供一些範例程式碼以幫助讀者更好地理解。 FULLOUTERJOIN函數

使用PDO進行資料庫操作:PHP的一個更好的方式 使用PDO進行資料庫操作:PHP的一個更好的方式 Jun 21, 2023 pm 01:36 PM

使用PDO進行資料庫操作:PHP的一個更好的方式在Web開發中,使用資料庫進行資料儲存、管理和查詢是非常常見的。而PHP作為一種廣泛應用於Web開發的語言,自然也提供了豐富的資料庫操作方式。在PHP中,可以使用MySQLi、PDO以及其他擴充程式庫來進行資料庫操作。其中,PDO是一種非常常用的資料庫操作方式,相較於其他方式有較多的優點。本文將介紹什麼是PDO,以

如何在Symfony框架中使用Doctrine ORM進行資料庫操作 如何在Symfony框架中使用Doctrine ORM進行資料庫操作 Jul 29, 2023 pm 04:13 PM

如何在Symfony框架中使用DoctrineORM進行資料庫操作引言:Symfony框架是一個流行的PHP框架,它提供了許多強大的工具和元件,用於快速而簡單地建立Web應用程式。其中一個關鍵的元件是DoctrineORM,它提供了一種優雅的方式來處理資料庫操作。本文將詳細介紹在Symfony框架中如何使用DoctrineORM來進行資料庫操作。我們將

PHP後台設計:資料庫操作與資料互動實踐 PHP後台設計:資料庫操作與資料互動實踐 Jan 19, 2024 am 10:31 AM

在開發一個網站、應用程式或系統時,資料庫的操作和資料的互動是必不可少的。而PHP作為一種常用的後台開發語言,其資料庫操作和資料互動能力也是非常強大的。本文將介紹一些PHP常用的資料庫操作函數以及資料互動的實務。同時,我們將結合程式碼範例來講解這些操作和實踐,方便讀者更好地理解和應用。一、資料庫連接在進行資料庫操作前,首先需要連接到資料庫。在PHP中,我們可以使用

See all articles