検索
ホームページphp教程php手册PHP アドバンスト: 無制限の分類を実現する (3)

3. プログラム制御
-------------------------------------- --- ---------------

このステップは、無制限の分類を実装する上で最も複雑で面倒な作業です。 まず、完了する必要があるステップを見てみましょう:

1) カテゴリを作成してアップロードします
2) 情報のアップロードを作成します
4) クエリ機能を処理します
5) 編集および削除機能を処理します。
カテゴリの編集と削除には整合性の問題が含まれるため、これらの 5 つのステップのうち最も難しいのは 5 番目のステップです。

次に、php のプログラム制御を 1 つずつ説明します:

1) カテゴリのアップロードを作成します

この機能を導入する前に。 、explode( ) を紹介しましょう。この関数は文字列処理関数であり、文字列を分解するために使用されます。例:

「0:1:2:3:4」の数値を分解します

$val= '0:1: 2:3:4';
$rid=explode(":",$val);

explode() 関数によって処理された後、$val 内のすべての数値が $rid に分解されます。配列を引用したい場合は、単に Print: echo '$rid[0],$rid[1],$rid[2]..."; 以上です。explode() 関数は、分類プロセス全体を説明します。それでは、現在の分類のプログラム制御を開始しましょう

合計分類は 0 であると仮定でき、すべての分類はその子孫分類になります。データベースに保存されます:

| rout_id |

システム 0:1 | rout_char
2 | Linux| 0: 1:2 | System: Linux
これは、フォーラムのコードと非常によく似ています。カテゴリの ID を uid に入力し、親カテゴリの uid を入力します。コードを見てみましょう:


....
....

//デフォルトページ
if (empty($func)) $func=='showtype' ;

//親カテゴリのuidを設定します
if (empty($uid)) $uid=0; ******************** *****************************
if ($func=='save'):

$fields = "";
$ 値 = "";

if ($id!="") {
$fields .= ",id" ;
$values.=",$id";

if ($uid!="" ) {
$fields.= ",$uid";
if ($type!="") {
$fields .= ",type";
$values .=",'$type'"
}

if ($route_id=="") {

//親カテゴリのroute_idを取得します
if ($uid!=0) {
$result = mysqlquery(" select * from type where id=$uid");
$route_id=mysql_result($result,0," Route_id");
} else {
$routr_id='0';
}
$fields .= ",route_id ";
//独自のroute_idを作成する
$route_id="$route_id:$id";
$values .=",'$route_id'";
}

//独自のroute_charを作成します
if ($route_char! ="") {
$fields .= ",route_char"; type";
$values.=",'$route_char'";
} else {
$fields .= " ,route_char";
$route_char=$type;
$values.=",'$route_char'";
}

$fields = substr($fields,1,strlen($fields)-1);
$values = substr($values,1,strlen($values)-1);

$result( "タイプ ($fields) 値 ($values) に挿入"); /* 保存終了 */


//カテゴリアップロード********** **************************** ********
if ($func=='createtype'):

//独自の ID を取得します
$result = mysqlquery("select * from type order by
id desc");
if (!empty($num)) {
$cat = mysql_result($result,0,"id");
} else {
$cat=0;
}

// 分類のステータスを決定する
if ($uid != 0) {
$result=mysql_query(" select * from type where id=$uid");
$type=mysql_result($result,0,"type");
$route_char=mysql_result($result,0,"route_char");
} else {
$ type='親カテゴリ';
echo "

";

echo "Category:$type";
echo " カテゴリを作成します: ";

echo "gt;";
$cat =$cat+1;
echo "";
echo "";
echo "" ;
echo " ";echo "";
echo "
";
終わり; /* end createtype */

//显示分类************************************** **********
if ($func=='showtype'):

echo "";

//分別状態判断
if ($uid!=0) {
$result=mysql_query("select * from type where id=$uid");
$type=mysql_result($result,0,"type");
} else {
$type='父分类';
}

echo "" ;

echo "";

$result=mysql_query("select * from type where uid=$uid");
$num=mysql_numrows($result);

if (!empty($num)) {
for ($i=0;$i
$id=mysql_result($result,$i,"id");
$type=mysql_result($result,$i,"type");

echo "";
}
}

echo "
创建分类
$type
";
echo "$type";
echo "
";
終わり; /* showtype の終了 */
....
....

?>



声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

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

SublimeText3 英語版

SublimeText3 英語版

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

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール