php4およびphp5のmysqlデータベース操作クラスをサポート
フロントエンドは PHP5 を使用していましたが、これを仮想ホストで実行するには、PHP4 に変更する必要があります。以前にこれらのライブラリ クラスを PHPCHIAN に投稿しました。アドレスは http://www.phpchina.com/bbs/viewthread.php?tid=5687&highlight= です。 (数日前にネットで検索したら、私の記事の多くが出典を明記せずに転載され、著作権が削除されていたことが分かり、とても腹が立ちました。)
昨日、データベース操作クラスを書き換えました。これは、zend フレームワークを単純化するときにたまたま使用されました。
代码如下:
/**
* ファイル名: DB_Mysql.class.php
* @package:phpbean
* @author :feifengxlq<[email]feifengxlq@gmail.com[/email]>
* @copyright :Copyright 2006 feifengxlq
* @license:version 1.2
* create:2006-5-30
* modify:2006-10-19 by feifengxlq
* description:the mysqlのインターフェース。
*
* 例:
* ////////////アクションの選択(最初のモード)////////////////// ////////////
$mysql=new DB_Mysql("localhost","root","root","root");
$rs=$mysql->query("select * from test");
for($i=0;$inum_rows($rs);$i )
$record[$i]=$mysql->seek($i);
print_r($record);
$mysql->close();
* ////////////アクションの選択(2 番目のモード)//////////////////////////// //
$mysql=new DB_Mysql("localhost","root","root","root");
$rs=$mysql->execute("select * from test");
print_r($rs);
$mysql->close();
* /////////////アクションの挿入////////////////////////////
$mysql=new DB_Mysql("localhost","root","root","root");
$mysql->query("insert into test(username) values('test from my DB_mysql')");
printf("%s",$mysql->insert_id());
$mysql->close();
*/
class mysql{
/* private: connectionパラメータ */
var $host="localhost";
var $database="";
var $user="root";
var $password="";
/* private: 構成パラメータ */
var $pconnect=false;
var $debug=false;
/* private: 結果の配列と現在の行番号 */
var $link_id=0;
var $query_id=0;
var $record=array();
/**
* construct
*
* @param string $host
* @param string $user
* @param string $password
* @param string $database
*/
function __construct($host="localhost",$user="root",$password="",$database="")
{
$this->set("host",$host);
$this->set("user",$user);
$this->set("パスワード",$パスワード);
$this->set("データベース",$database);
$this->connect();
}
/**
* このクラスのパラメータの値を設定します
*
* @param string $var
* @param string $value
*/
function set($var,$value)
{
$this->$var=$value;
}
/**
* mysql サーバーに接続し、データベースを選択します。
*
* @param string $database
* @param string $host
* @param string $user
* @param string $password
* @return link_id
*/
function connect($database="",$host="",$user="",$password="")
{
if(!empty($database))$this->set("database",$database);
if(!empty($host))$this->set("host",$host);
if(!empty($user))$this->set("user",$user);
if(!empty($password))$this->set("password",$password);
if($this->link_id==0)
{
if($this->pconnect)
$this->link_id=@mysql_pconnect($this->host ,$this->ユーザー,$this->パスワード);
else
$this->link_id=@mysql_connect($this->host,$this->user,$this->password);
if(!$this->link_id)
die("Mysql Connect Error in ".__FUNCTION__."():".mysql_errno().":".mysql_error());
if(!@mysql_select_db($this->database,$this->link_id))
die("Mysql Select database Error in ".__FUNCTION__."():".mysql_errno()." :".mysql_error());
}
return $this->link_id;
}
/**
* データベースに SQL をクエリします
*
* @param string $strsql
* @return query_id
*/
function query($strsql="")
{
if(empty($strsql)) die("Mysql Error :".__FUNCTION__."() strsql は空です!");
if($this->link_id==0) $this->connect();
if($this->debug) printf("デバッグクエリ sql:%s",$strsql);
$this->query_id=@mysql_query($strsql,$this->link_id);
if(!$this->query_id) die("Mysql query fail,Invalid sql:".$strsql.".");
return $this->query_id;
}
/**
* データベースに SQL をクエリしますが、query() メソッドとは異なります。
* このメソッドはレコード (配列) を返します。
*
* @param string $strsql
* @param string $style
* @return $record is a array()
*/
function Execute($strsql,$style="array")
{
$this->query($strsql);
if(!empty($this->record))$this->record=array();
$i=0;
if($style=="array"){
while ($temp=@mysql_fetch_array($this->query_id)) {
$this->record[$i]=$temp ;
$i ;
}
} else {
$ this-&gt; record [$ i] = $ temp;
$i ;
}
}
unset($i);
unset($temp);
$this-> レコードを返す;
}
/**
* seek ですが、mysql_data_seek と等しくありません。 このメソッドはリストを返します。
*
* @param int $pos
* @param string $style
* @return record
*/
関数 seek($pos=0,$style="array")
{
if(!@mysql_data_seek($ this->query_id,$pos))
die("Error in".__FUNCTION__."():can not seek to row ".$pos."!");
$result=@($style=="array")?mysql_fetch_array($this->query_id):mysql_fetch_object($this->query_id);
if(!$result) die("「.__FUNCTION__."(): データを取得できません!」);
$result を返す;
}
/**
* クエリの結果を無料
*
*/
function free()
{
if(($this->query_id)&($this->query_id!=0 ))@mysql_free_result($this->query_id);
}
/**
* 結果 (サイズ、幅) を評価
*
* @return num
*/
function affected_rows()
{
return @mysql_affected_rows($this->link_id);
}
function num_rows()
{
return @mysql_num_rows($this->query_id);
}
function num_fields()
{
return @mysql_num_fields($this->query_id);
}
function insert_id()
{
return @mysql_insert_id($this->link_id);
}
function close()
{
$this->free();
if($this->link_id!=0)@mysql_close($this->link_id);
if(mysql_errno()!=0) die("Mysql Error:".mysql_errno().":".mysql_error());
}
function select($strsql,$number,$offset)
{
if(empty($number)){
return $this->Execute($ strsql);
else{
return $this->Execute($strsql.' limit '.$offset.','.$number);
}
}
function __destruct()
{
$this->close();
$this->set("ユーザー","");
$this->set("ホスト","");
$this->set("パスワード","");
$this->set("データベース","");
}
}
?>
このベースでは、SIDU (select、insert、update、delete) という 4 つの基本操作を、Zend Framework の標準化されたモジュールとしてパッケージ化しています。了、懒的写本。):
クラス モジュール{
var $mysql;
var $tbname;
var $debug=false;
function __construct($tbname){
if(!is_string($tbname))die('モジュールにはテーブル名の引数が必要');
$this->tbname=$tbname;
$this->mysql=phpbean::registry('db');
}
function _setDebug($debug=true){
$this->debug=$debug;
}
function add($row){
if(!is_array($row))die('モジュールエラー:行は配列でなければなりません');
$strsql='insert into `'.$this->tbname.'`';
$keys='';
$values='';
foreach($row as $key=>$value){
$keys.='`'.$key.'`,';
$values.='''.$value.''';
}
$keys=rtrim($keys,',');
$values=rtrim($values,',');
$strsql.=' ('.$keys.') values ('.$values.')';
if($this->debug)echo '
'.$strsql.'
';
$this->mysql->query($strsql);
return $this->mysql->insert_id();
}
function query($strsql){
return $this->mysql->Execute($strsql);
}
function count($where=''){
$strsql='select count(*) as num from `'.$this->tbname.'` ';
if(!empty($where))$strsql.=$where;
$rs=$this->mysql->Execute($strsql);
return $rs[0]['num'];
}
function select($where=''){
$strsql='select * from `'.$this->tbname.'` ';
if(!empty($where))$strsql.=$where;
return $this->mysql->Execute($strsql);
}
function delete($where=''){
if(empty($where))die('エラー: 削除メソッドには条件が必要です!');
return $this->mysql->query('delete from `'.$this->tbname.'` '.$where);
}
function update($set,$where){
if(empty($where))die('エラー: 更新メソッドには条件が必要です!');
if(!is_array($set))die('エラー: セットは配列である必要があります!');
$strsql='update `'.$this->tbname.'` ';
//セットの文字列を取得します
$strsql.='set ';
foreach($set as $key=>$value){
$strsql.='`'.$key.'`=''.$value.'',';
}
$strsql=rtrim($strsql,',');
return $this->mysql->query($strsql.' '.$where);
}
function detail($where){
if(empty($where))die('エラー:where を空にするべきではありません!');
$rs=$this->mysql->query('select * from `'.$this->tbname.'` '.$where);
return $this->mysql->seek(0);
}
}
?>

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











MySQLはオープンソースのリレーショナルデータベース管理システムであり、主にデータを迅速かつ確実に保存および取得するために使用されます。その実用的な原則には、クライアントリクエスト、クエリ解像度、クエリの実行、返品結果が含まれます。使用法の例には、テーブルの作成、データの挿入とクエリ、および参加操作などの高度な機能が含まれます。一般的なエラーには、SQL構文、データ型、およびアクセス許可、および最適化の提案には、インデックスの使用、最適化されたクエリ、およびテーブルの分割が含まれます。

データベースとプログラミングにおけるMySQLの位置は非常に重要です。これは、さまざまなアプリケーションシナリオで広く使用されているオープンソースのリレーショナルデータベース管理システムです。 1)MySQLは、効率的なデータストレージ、組織、および検索機能を提供し、Web、モバイル、およびエンタープライズレベルのシステムをサポートします。 2)クライアントサーバーアーキテクチャを使用し、複数のストレージエンジンとインデックスの最適化をサポートします。 3)基本的な使用には、テーブルの作成とデータの挿入が含まれ、高度な使用法にはマルチテーブル結合と複雑なクエリが含まれます。 4)SQL構文エラーやパフォーマンスの問題などのよくある質問は、説明コマンドとスロークエリログを介してデバッグできます。 5)パフォーマンス最適化方法には、インデックスの合理的な使用、最適化されたクエリ、およびキャッシュの使用が含まれます。ベストプラクティスには、トランザクションと準備された星の使用が含まれます

Apacheはデータベースに接続するには、次の手順が必要です。データベースドライバーをインストールします。 web.xmlファイルを構成して、接続プールを作成します。 JDBCデータソースを作成し、接続設定を指定します。 JDBC APIを使用して、接続の取得、ステートメントの作成、バインディングパラメーター、クエリまたは更新の実行、結果の処理など、Javaコードのデータベースにアクセスします。

WebアプリケーションにおけるMySQLの主な役割は、データを保存および管理することです。 1.MYSQLは、ユーザー情報、製品カタログ、トランザクションレコード、その他のデータを効率的に処理します。 2。SQLクエリを介して、開発者はデータベースから情報を抽出して動的なコンテンツを生成できます。 3.MYSQLは、クライアントサーバーモデルに基づいて機能し、許容可能なクエリ速度を確保します。

DockerでMySQLを起動するプロセスは、次の手順で構成されています。MySQLイメージをプルしてコンテナを作成および起動し、ルートユーザーパスワードを設定し、ポート検証接続をマップしてデータベースを作成し、ユーザーはすべての権限をデータベースに付与します。

Laravelは、Webアプリケーションを簡単に構築するためのPHPフレームワークです。次のような強力な機能を提供します。インストール:Laravel CLIを作曲家にグローバルにインストールし、プロジェクトディレクトリにアプリケーションを作成します。ルーティング:ルート/web.phpのURLとハンドラーの関係を定義します。ビュー:リソース/ビューでビューを作成して、アプリケーションのインターフェイスをレンダリングします。データベース統合:MySQLなどのデータベースとのすぐ外側の統合を提供し、移行を使用してテーブルを作成および変更します。モデルとコントローラー:モデルはデータベースエンティティを表し、コントローラーはHTTP要求を処理します。

Reactの主な機能には、コンポーネント思考、国家管理、仮想DOMが含まれます。 1)コンポーネント化のアイデアにより、UIを再利用可能な部分に分割して、コードの読みやすさと保守性を向上させることができます。 2)状態管理は、状態および小道具を通じて動的データを管理し、変更を変更しますUIの更新をトリガーします。 3)仮想DOM最適化パフォーマンス、メモリ内のDOMレプリカの最小操作の計算を通じてUIを更新します。

MySQLをエレガントにインストールするための鍵は、公式のMySQLリポジトリを追加することです。特定の手順は次のとおりです。MYSQLの公式GPGキーをダウンロードして、フィッシング攻撃を防ぎます。 mysqlリポジトリファイルを追加:rpm -uvh https://dev.mysql.com/get/mysql80-community-rease-el7-3.noarch.rpm update yumリポジトリキャッシュ:yumアップデートインストールmysql:yumインストールmysql-server startup mysql sportin
