ホームページ バックエンド開発 PHPチュートリアル オンライン入札システムのPHP導入フレームワーク(1)_PHPチュートリアル

オンライン入札システムのPHP導入フレームワーク(1)_PHPチュートリアル

Jul 21, 2016 pm 04:10 PM
mysql php 1つ ページネーション オンライン 成し遂げる 見せる フレーム 親切 システム 記録

先ほど、mysql レコードのページング表示用のクラスを紹介しましたが、その使用例は示しませんでした。このクラスの使用法を説明するために作成したばかりのオンライン入札システム フレームワーク プログラムをコンパイルしました。オンライン入札の実施方法をみんなで話し合いましょう。

まず最初に断っておきますが、私は達人でも専門家でもありません、ただのファンですので、この番組には抜け道がたくさんあるはずですが、あえてそれを出したのは、本当に自由に楽しんでいただきたいと思っているからです。 PHP がもたらした幸福をみんなと共有しましょう。 (本当は、mysql対応のスペースを取得するために、さらにポイントを追加したいのですが^_^)


オークションシステムと一般の需給情報公開システムの最大の違いは2点だと思います。 1つは、新しい価格です。入札者が提示した金額は、速やかに商品価格に反映されなければなりません。また、入札終了後は期限が設けられている必要があります。そして最終落札者が発表されます。

他のものについてはまだ考えていません。専門家が紹介してくれるかもしれません。

したがって、需給情報公開システムをオークションシステムにすることは難しくないと思います。

まず、新しいバージョンの TViewPage クラスとデータベース構造を見てみましょう。

<?php
/**********************************************
TViewPage v 1.2

ページングMySQL データベースのレコードを表示するクラス

作成者: sharetop
電子メール: ycshowtop@21cn.com
時刻: 2000-8-31

[2000-9-6] 1.2
readlist() のバグを修正、検証しますオフセットがクラスに入れられること。
3 つの基本操作関数 add() delete() modify() を追加します。

このクラスはデータベースに接続する機能を提供していないため、対応するデータベースを外部で開く必要があります。
このクラスはレコードを表示する機能は提供せず、レコードをページ単位のResult二次元配列に読み込むだけです。
データの表示形式は外部でカスタマイズする必要があります。
**********************************************/
class TViewPage {

var $Table; //1ページあたりの表示行数

var $Offset; offset シフト量
var $Total; // レコードの総数
var $Number; // 読み取られた結果

var $TPages; var $ CPages; // 現在のページ番号

var $Condition; // where id='$id' のような条件を id 順に表示します desc
var $PageQuery // 渡されるパラメータのページ表示

/ /*** ***Constructor******************
//パラメータ: テーブル名、最大行数、オフセット

function TViewPage($TB,$ML ){
グローバル $offset;

$this->Table=$TB;
if(isset($offset)) $this->Offset=$offset; else $this->Offset =0;
$this->Condition=""
}


//********表示条件を設定します********** *
//例: where id=' $id' order by id desc
//要件は SQL 構文に準拠した文字列です (この文字列は SQL ステートメントの後に追加されます)

function SetCondition($s) {
$this->Condition=$s;
}

//******送信パラメータを設定します**********
//キーパラメータ名値パラメータ値
//例: setpagequery("id",$id); 渡されるパラメータが複数ある場合、この関数は複数回呼び出すことができます。

function SetPageQuery($key,$value){
$tmp[key]=$key; $tmp[value]=$value;
$this->PageQuery[]=$tmp; ********レコードの読み取り***************
//主な動作関数、指定された条件に従ってテーブルから対応するレコードを読み取ります
//値を返しますは 2 次元配列です。Result[レコード番号][フィールド名]

function ReadList() {
$SQL="SELECT Count(*) AS total FROM ".$this->Table." ".$this ->条件;

$result=mysql_query($SQL) または die(mysql_error());
$this->合計=$row[合計]; ($this->Total>0) { //条件 Condition
$SQL="SELECT * FROM ".$this->Table." ".$this->Condition
" LIMIT " に従います。 $this ->Offset." , ".$this->MaxLine

$result=mysql_query($SQL) または die(mysql_error());

$i=0;
while($row=mysql_fetch_Array($result)){
$this->Result[$i]=$row;
}
}
return $this->結果;
}


//*******新しいレコードを追加します************
//$str は、「'$id',' などの追加値です」 $name',' $class'"etc

function Add($str){

$SQL="INSERT INTO ".$this->Table." ;
mysql_query ($SQL) または die(mysql_error());

}

//**********レコードを削除************
//最初の呼び出し SetCondition( ) 条件を決定します。

function Delete(){
$SQL="DELETE FROM ".$this->Table." ".$this->Condition;
mysql_query($SQL) または die(mysql_error())
;
//********レコードの変更************
//$field フィールド名 $value 新しい値
//複数のフィールドを変更したい場合は、次のように呼び出すことができます機能を繰り返し実行します。

function Modify($field,$value){
$SQL="UPDATE FROM ".$this->Table." SET ".$field."=".$value." ".$this->条件;
mysql_query($SQL) または die(mysql_error())
}


//************ページ数を表示********** *******
//現在のページと総ページ数を表示

function ThePage() {
$this->TPages=ceil($this->Total/$this->MaxLine) ;
$this->CPages=$this->Offset/$this->MaxLine+1;
echo "ページ".$this->CPages."/".$this->TPages" page";
}

/ /**********ページめくりボタンを表示**********
//この関数は ThePage() 関数の後に呼び出す必要があります。 ! !
//ホームページ、次ページ、前ページ、次ページを表示し、渡すパラメータを追加

function Page() {
$next=$this->Offset+$this-; > MaxLine;
$prev=$this->オフセット-$this->MaxLine=($this->TPages-1)*$this->MaxLine; ($ this->PageQuery);
$strQuery="" //渡すパラメータ文字列を生成
for($i=0;$i<$k;$i++){
$strQuery.="&"; . $this->PageQuery[$i][key]."=".$this->PageQuery[$i][value]
}

if($this->Offset>=$this- > ;MaxLine)
echo "<A href=$PHP_SELF?offset=".$first.$strQuery.">ホームページ</A>|";
if($prev>=0)
echo "|";
if($next<$this->Total)
echo "
|";
if($this->TPages!=0 && $this->CPagesTPages)
echo "<A href=$PHP_SELF?offset=".$last.$strQuery.">最後のページ</A>" ;


//************************
ebid.sql ファイル (phpmyadmin を使用してエクスポートしました)

# phpMyAdmin MySQL-Dump
# http://www.htmlwizard.net/phpMyAdmin/
#
# ホスト: localhost データベース : ebid

# ----------------------- -- --------------------------------
# テーブル「返信」のテーブル構造
# ID、製品 ID、入札者、入札者メール、入札の連絡をお願い致します。

CREATE TABLE Reply (
id varchar(16) NOT NULL、
parentid varchar(16) NOT NULL、
buyer varchar(12) NOT NULL、
email varchar(32) NOT NULL、
price float(10,2)デフォルト '0.00' NOT NULL、
主キー (ID、価格)
);


# ---------------------------- ----------------------------
# テーブル「shop」のテーブル構造
# ID、商品名、紹介文、元の価格、マークアップ単位、終了時刻、入札数、現在価格、写真の有無

CREATE TABLE shop (
id varchar(16) NOT NULL,
name varchar(50) NOT NULL,
description text,
price float(10, 2) デフォルト '0.00' NOT NULL、
unit tinyint(2) unsigned NOT NULL、
endtime varchar(16) DEFAULT '0000-00-00 00:00' NOT NULL、
reply int(4) unsigned NOT NULL、
curprice float (10,2) DEFAULT '0.00' NOT NULL,
photo tinyint(1) unsigned NOT NULL,
PRIMARY KEY (id),
KEY kreply (reply)


); 設定ファイルは次のとおりです。
//** ************
//config.inc.php

<?php

$HOST="localhost" //ホスト名
$DATABASE="ebid"; ; //データベース名
$WARE_TABLE="shop" //製品テーブル
$USER="root" // Password

$PAGE_MAX_LINE =20; //ページごとに表示される行数

//データベースを開く
$LinkID=mysql_connect($HOST,$USER,$PASSWD)
mysql_select_db($DATABASE,$LinkID); (mysql_error());

?> 以下は商品とTOP10商品を表示する関数です
//*********************
//
<?php
include "config.inc.php ";
include "tview.class.php"; //クラスファイル


//*****製品一覧を表示****** *
function PrintList(){
global $view;

$ct=time();

//条件を設定する文! SQL 構文を満たす必要があります。入札が終了していない商品のみを表示します
$view->SetCondition("where endtime>'$ct' order by id desc");

//メンバー関数を呼び出してレコードを読み取ります
//Result$result[record] [数値] [フィールド名] は 2 次元配列です。
$result=$view->ReadList();

if($view->Number==0) {echo "gt; "; return;}

for($i=0;$i<$view->Number;$i++){
if(ceil($i/2)*2==$i) $bgc="#ffffff" ;
それ以外の場合 $bgc="#f3f3f3";
echo " ";
echo "
";
echo "</td>
";
echo date("Y-m-j 24:00:00",$result[$i][endtime]);
echo "</td> ¥";
echo $result[$i][curprice];
echo "</td> ";
echo $result[$i][reply];
echo "</td></tr>";
}
}

//*********显示最热的10条记录**********
function ListTopHot(){
global $view;

//同样先設置条件
$view->SetCondition("order by Reply desc");
//读记录
$result=$view->ReadList();

$k=(count($result)>10)? '10':(count($result));

for($i=0;$i<$k;$i++){
echo " ";
echo "";
echo "</td></tr>";
}

}


//*********显示最新10条记录***********
function ListTopNew(){
global $view;

$view->SetCondition("ID 説明による順序");
$result=$view->ReadList();

$k=(count($result)>10)? '10':(count($result));

for($i=0;$i<$k;$i++){
echo "";
echo "
";
echo "</td></tr>";
}
}


//**********<结束関数数定义,主程序体*************
//构造这个viewpage类,给出商品表及び每页显表示行数

$view=new TViewPage($WARE_TABLE,$PAGE_MAX_LINE);

?>

次の目的の js 関数数吧、很简单、就是打开一新窗口:
<script> <br>function showdetail(str){ <br>window.open(str,"newwin","top=20,left=20,width=600,height=400, <br>location=no,toolbar=no,status=no,resizable=いいえ、スクロールバー=はい"); <br>} <br></script> <br><br> <p align="left"><div style="display:none;"><span id="url" itemprop="url">http://www.bkjia.com/PHPjc/314261.html<span id="indexUrl" itemprop="indexUrl">www.bkjia.com<span id="isOriginal" itemprop="isOriginal">tru​​e<span id="isBasedOnUrl" itemprop="isBasedOnUrl">http://www.bkjia.com/PHPjc/314261.html<span id="genre" itemprop="genre">技術記事<span id="description" itemprop="description">前我给了一分页显示mysql记录的類,不使用使用例,现在,我整理了我刚写的一在在線竞拍系统框架程序,来说説明この類の使用方法... <div class="art_confoot"></script>

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

PHPとPython:2つの一般的なプログラミング言語を比較します PHPとPython:2つの一般的なプログラミング言語を比較します Apr 14, 2025 am 12:13 AM

PHPとPythonにはそれぞれ独自の利点があり、プロジェクトの要件に従って選択します。 1.PHPは、特にWebサイトの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンス、機械学習、人工知能に適しており、簡潔な構文を備えており、初心者に適しています。

PHPの現在のステータス:Web開発動向を見てください PHPの現在のステータス:Web開発動向を見てください Apr 13, 2025 am 12:20 AM

PHPは、現代のWeb開発、特にコンテンツ管理とeコマースプラットフォームで依然として重要です。 1)PHPには、LaravelやSymfonyなどの豊富なエコシステムと強力なフレームワークサポートがあります。 2)パフォーマンスの最適化は、Opcacheとnginxを通じて達成できます。 3)PHP8.0は、パフォーマンスを改善するためにJITコンパイラを導入します。 4)クラウドネイティブアプリケーションは、DockerおよびKubernetesを介して展開され、柔軟性とスケーラビリティを向上させます。

PHP:Web開発の重要な言語 PHP:Web開発の重要な言語 Apr 13, 2025 am 12:08 AM

PHPは、サーバー側で広く使用されているスクリプト言語で、特にWeb開発に適しています。 1.PHPは、HTMLを埋め込み、HTTP要求と応答を処理し、さまざまなデータベースをサポートできます。 2.PHPは、ダイナミックWebコンテンツ、プロセスフォームデータ、アクセスデータベースなどを生成するために使用され、強力なコミュニティサポートとオープンソースリソースを備えています。 3。PHPは解釈された言語であり、実行プロセスには語彙分析、文法分析、編集、実行が含まれます。 4.PHPは、ユーザー登録システムなどの高度なアプリケーションについてMySQLと組み合わせることができます。 5。PHPをデバッグするときは、error_reporting()やvar_dump()などの関数を使用できます。 6. PHPコードを最適化して、キャッシュメカニズムを使用し、データベースクエリを最適化し、組み込み関数を使用します。 7

PHP対その他の言語:比較 PHP対その他の言語:比較 Apr 13, 2025 am 12:19 AM

PHPは、特に迅速な開発や動的なコンテンツの処理に適していますが、データサイエンスとエンタープライズレベルのアプリケーションには良くありません。 Pythonと比較して、PHPはWeb開発においてより多くの利点がありますが、データサイエンスの分野ではPythonほど良くありません。 Javaと比較して、PHPはエンタープライズレベルのアプリケーションでより悪化しますが、Web開発により柔軟性があります。 JavaScriptと比較して、PHPはバックエンド開発により簡潔ですが、フロントエンド開発のJavaScriptほど良くありません。

MySQLの場所:データベースとプログラミング MySQLの場所:データベースとプログラミング Apr 13, 2025 am 12:18 AM

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

PHPの永続的な関連性:それはまだ生きていますか? PHPの永続的な関連性:それはまだ生きていますか? Apr 14, 2025 am 12:12 AM

PHPは依然として動的であり、現代のプログラミングの分野で重要な位置を占めています。 1)PHPのシンプルさと強力なコミュニティサポートにより、Web開発で広く使用されています。 2)その柔軟性と安定性により、Webフォーム、データベース操作、ファイル処理の処理において顕著になります。 3)PHPは、初心者や経験豊富な開発者に適した、常に進化し、最適化しています。

PHP:多くのウェブサイトの基礎 PHP:多くのウェブサイトの基礎 Apr 13, 2025 am 12:07 AM

PHPが多くのWebサイトよりも優先テクノロジースタックである理由には、その使いやすさ、強力なコミュニティサポート、広範な使用が含まれます。 1)初心者に適した学習と使用が簡単です。 2)巨大な開発者コミュニティと豊富なリソースを持っています。 3)WordPress、Drupal、その他のプラットフォームで広く使用されています。 4)Webサーバーとしっかりと統合して、開発の展開を簡素化します。

PHP対Python:コア機能と機能 PHP対Python:コア機能と機能 Apr 13, 2025 am 12:16 AM

PHPとPythonにはそれぞれ独自の利点があり、さまざまなシナリオに適しています。 1.PHPはWeb開発に適しており、組み込みのWebサーバーとRich Functionライブラリを提供します。 2。Pythonは、簡潔な構文と強力な標準ライブラリを備えたデータサイエンスと機械学習に適しています。選択するときは、プロジェクトの要件に基づいて決定する必要があります。

See all articles