オラクルでは、PHP(58)を学ぶために私に従ってください

ログインロゴ

通常は、現在ログオンしているユーザー保存する必要が管理者)機能情報を!

 

では メモリあなたが旗をログインしたときに、現在の管理者が中に格納されている情報取得するセッションでは

戻る/ AdminController-> checkAction();

 

 

バックが必要/ AdminModel->チェック()メソッドは、情報が管理者のために返される合法的なケース):

 

 

バック/ PlatformControllerで- > _ checkLogin( )での検証管理者かどうか、ログイン、使用の管理インデックス:

 

出口は破壊もサインです。

戻る/ AdminController-> LogoutActionは();

 

 

 

ページは、管理者の情報を取得することができます:

戻る/のtop.html、ディスプレイこんにちは 管理

 

 

shop34-19- 追加するアイテム

機能追加商品フォームを

index.phpを?P =バック&C =製品&Aは=追加

コントローラのアクション:

商品のコントローラクラス

アプリケーション/バック/コントローラ/ GoodsController.class.php

 

addAction()

 

モデル:

ビューテンプレート

ビュー層の増加テンプレートを:

アプリケーション/バック/ビュー/ goods_add.html

それは、対応する必要が JSを

 

一部残し、タブ、およびフォーム要素を:

 

 

サプリメント

[編集]メニュー menu.htmlテンプレート、アクション要求を追加します。

戻る/ビュー/ menu.html

 

機能:処理製品はデータを追加します

index.phpを?P =バック&C =製品&A =挿入

コントローラ- アクション

戻る/ GoodsController-> insertAction();

提出のチェックボックス時間:

もし:チェックした場合、それはある値の属性

場合はチェックしない:フォームが用意されていません。そのポストデータ(_POST ない要素)

 

推奨

使用した命名アレイモード、及びデータテーブルに挿入する必要がある値

 

治療

 

 

)(insertActionを達成します。

 

モデル

商品のため、テーブルの作成オペレーティングモデルを:

アプリケーション/バック/モデル/ GoodsModel.class.php

 

フォーマット文字列:

sprintfは()することができます完了のためのフォーマット文字列:

sprintf(フォーマットフォーマットに必要なデータ

 

 

ヒント:データ参加 SQLの実行、我々は予防しなければならないSQLのエスケープを使用し、注入を!

この時点で、モデルレベルで、私たちは、アレイ内のすべてのデータを、バッチエスケープ提供できる機能を:

ベースモデルには、メソッドを追加します。

escapeStringAll();

 

 

あなたはする必要があるメソッドを呼び出します。

戻る/ GoodsModel-> insertGoods()

 

ビュー- テンプレート

 

補足

商品一覧

 

 

 

shop34-20- テーブルプレフィックス処理

モデル- プレフィックス処理

実際のテーブル名  =接頭辞(プロジェクト)  +論理テーブル名(機能)

プレフィックス:設定ファイル経由で設定。

コンフィグ/ application.config.php

 

ロジックテーブル名モデルクラス自体に決定。

Modelクラス増加したプロパティ: _logic_table

 

 

ワンピース一緒に実際のテーブル名を:

ベーシックモデルでは、初期化の増加本物のオペレーティングテーブル名を:

 

テーブル名バッククォートパッケージ!

 

インスタンス化時にオブジェクトモデル、実際のテーブル名の初期化の完了:

財団のモデルの構築方法:

 

 

使用する実際のテーブル名を:

モデルでは、パッチワークの SQL文使用して $この- > _テーブル:

 

 

shop34-21- ファイルアップロードツール

ファイルのアップロード

アップロード

送信されたサーバ側へのブラウザ。

リクエスト:

データからの送信サーバーへのブラウザの終わり。

 

目に見えます

アップロードは、ブラウザがサーバプロセスに要求を行うに起こりました。

 

ファイルはのために、ブラウザが懸念され、データのみの特殊なタイプの形態です。

 

ブラウザの形式のデータの2種類:種類。

1、  文字列型。バイトストリーム符号化)

2、ファイルタイプ。二値化)

(ヒントファイルは、形式のデータである一部)。

 

送信フォームは、データの形式で自動的にブラウザは、サーバに送信し、ファイルタイプが含まれますされています。

 

サーバの角度:

ブラウザのインタビューで要求、フォームを処理のデータ。

異なるタイプのデータ(2 種類)、使用した異なるアプローチ:

図1に示すように、  文字列型の中に格納されているの$ _POST変数(メモリ)で

2、ファイルの一時ディレクトリのアップロードに保存されているタイプのデータ、。

 

 

フォームの提出の時間をブラウザは、フォーム内のデータがあるとの見方デフォルトとなる文字列(偶数とタイプのファイルのファイルドメインを経由フォーム増加財産上の形式のデータの型が文字列を持っているだけではなく、ブラウザに指示します。

フォームにenctype =」multipart / form-データ」

 

 

PHPのフォームデータファイルの種類を受け取った後、サーバー:

ファイルをアップロードするには、一時ディレクトリに保存されますつまり、一時ファイル、有効な有効期間内のスクリプト。

PHPによるさんphp.iniの設定

 

デフォルトのサーバー・オペレーティング・システムの一時ディレクトリの。

 

 

必要と永続ストアをアップロードする一時ファイルを!するために指定された場所に移動)

機能

Move_uploaded_file(アップロード一時アドレス、宛先アドレス)。

完成

する必要が使用 $ _FILESの配列を仮のアドレスを含む情報の一時ファイルのアップロードを、保存し、!

 

一時ファイルのアップロードがある 5つのメッセージ、名前:元のファイルタイプの:タイプ、tmp_name 、一時アドレス、エラー:エラーとエラーの種類がある場合は、サイズ:サイズが。

 

 

典型的なコードをアップロード

することで、ファイルの属性情報の判断、ファイルが利用可能であるか否かを判断します!

 

タイプ:表現  2 種類:

拡張子ファイルシステムは、プログラムがファイルを識別します。

MIME (多目的インターネットメール拡張):トランスポートネットワークリソース、表現を使用するリソースタイプ。

テキスト/ HTML; 画像/ PNG

 

 

拡張インターセプト:

$ファイル= 'xyzpng';

エコーstrrchr($ファイル、 '');

// 文字列の位置にあるサブストリングの最後に出現し、文字列の末尾から取るべき位置を見つけます。

 

 

 

Array_merge()配列マージ

array_unique()を除去するために二連で配列要素の値を

 

名前を変更したファイルを:

使用する元の名前を。重複名、特殊文字は 持っていない論理的な意味を)

名前付き uniqid();

Uniqidは()も一意の文字列のプレフィックスを生成し、設定することができました。

 

 

 

タイプ検出:

サフィックス MIME

以上の2つの値は、ブラウザのリクエストにより提供されています。

必要サーバ PHP自体完全な MIMEの検出を:

必要な PHPの拡張:  のFileInfo  完全なファイルへの検出情報。

それは提供して二組のオブジェクト指向構文と機能を:

使用オブジェクト指向構文それ:

開き、この拡張機能を:

 

Apacheの再起動

 

 

 

 

分子ディレクトリアップロードされたファイルを格納するための

原理:ビジネス・ロジック。ファイルの数。よると、時間

MKDIR(ディレクトリアドレス)を作成するディレクトリを

Is_dir(ディレクトリアドレス)を検出ディレクトリを

 

取得するには日付()日付と時刻を

 

 

 

 

プロジェクトが使用します

アップロードツールのカテゴリを

 

完全に自動的にロード:

 

 

製品の追加使用を:

戻る/ GoodsController-> insertAction();

 

モデル、処理 goods_image_ori:

戻る/ GoodsModel-> insertGoods();

 

変更し、それはファイルをアップロードし、設定することができるようにフォームをファイル、フォーム要素をから名前。

戻る/ IEW / goods_add.html

 

おすすめ

転載: www.cnblogs.com/RighTgraM/p/10971461.html