検索
ホームページWeChat アプレットWeChatの開発WeChat開発のためのデータベース運用

WeChat開発のためのデータベース運用

May 15, 2017 pm 01:24 PM
データベース操作

この記事では主にWeChatパブリックプラットフォーム開発のデータベース運用に関する関連情報を紹介しますので、必要な方は参考にしてください

1.はじめに

そこにあるAPIを呼び出すだけで機能開発が完了します。データベース操作ではありません。その後の高度な機能の開発ではデータベースを使用する必要があるため、この記事では読者の参考のためにMySQLデータベースの操作を簡単に紹介します。

2. アイデア分析

Baidu Developer Center は、強力なクラウド データベース (MySQL、MongoDB Redis を含む) を提供します。このチュートリアルでは、誰もが使い慣れている MySQL データベースの分析を実行します。 WeChatとデータベースの連携を実現するデモ。

BAE アプリケーションでクラウド データベースを使用するのは非常に簡単です。データベース リスト内の名前は、データベースに接続するときの dbname です。ユーザー名、パスワード、接続アドレス、ポートは、アプリケーションの環境変数を通じて取得されます。

標準の PHP Mysql または PHP Mysqli 拡張機能を使用してデータベースにアクセスできます。これら 2 つの拡張機能は BAE の PHP ですでに提供されており、アプリケーションで直接使用できます。

3. BAE 3.1 Baidu Developer Center -> クラウド環境 -> MySQL (クラウド データベース) にログインします。 > ;

データベースの作成

3.2 データベースの作成

注:

各アプリケーションには 1G の無料割り当てを享受できるデータベースが 1 つだけあり、他のデータベースには無料割り当ての割引は適用されません。この特典は、無料割り当てを使用したデータベースが削除された場合にのみ再度使用できます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 操作

データベースとデータ テーブルの作成はここで終了します。コードは、詳細を説明するために以下に記述されます。データベースとデータテーブルの使用。

4. 公式サンプル (PHP MySQL)

BAE BAE が提供する公式デモ (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.

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操作のテスト

テストコード:

<!--?php
 
require_once "MySQLi_BAE.class.php";
 
$mysqli_BAE=new MySQLi_BAE();
 
//**************dql******************
$sql="select * from test_mysql";
 
$res=$mysqli_BAE--->execute_dql($sql);
 
while($row=$res->fetch_row()){
   
  foreach($row as $key=>$val){
    echo "$val--";
  }
  echo &#39;
&#39;;
}
 
$res->free();
?>

テスト結果:

10. WeChat とのインタラクションを実装する ( Mysqli 拡張機能)

10.1 事前操作A. MySQLi_BAE.class.php ファイルを導入します

//データベース関数ファイル require_once "MySQLi_BAE.class.php" を導入します

B.

オブジェクトをインスタンス化します

public functionconstruct( } ,'$keywords[1]','$keywords[2]','$nowtime')";$res = $this->mysqli_BAE->execute_dml($insert_sql);

0 テスト結果:。 10.3 テスト照会操作

テストコード:

$ select_sql = "select * from test_mysql where from_user = '$ Fromusername'" "; AE-& GT ;execute_dql($select_sql);$rows=$select_res ->fetch_array(MYSQLI_ASSOC);

テスト結果:

10.4 テスト更新操作

テストコード:

$update_sql="UPDATE test_mysql SET パスワード= '$new_password' WHERE from_user='$fromUser名前」 ;

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

テスト結果:

10.5 テスト削除操作

テストコード:

$delete_sql="テストから削除_mysql どこにfrom_user='$fromUsername'";

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

テスト結果:

WeChat との対話テストは成功しました。

【関連推奨事項】

1.

特別な推奨事項

:

「php Programmer Toolbox」V0.1バージョンのダウンロード

2. WeChatパブリックアカウントプラットフォームのソースコードのダウンロード3.接続王 v3.4.5 アドバンス ビジネス バージョン WeChat ルービック キューブ ソース コード

以上がWeChat開発のためのデータベース運用の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール