ホームページ バックエンド開発 PHPチュートリアル Smarty+QUICKFORM 小規模デモ_PHP チュートリアル

Smarty+QUICKFORM 小規模デモ_PHP チュートリアル

Jul 21, 2016 pm 03:57 PM
smarty 会社 開発する モデル デモ 組み合わせる 必要

会社では SMARTY 開発モデルと組み合わせた Quickform を必要としているため、ここ数日間取り組んできました。Quickform は、フォーム コントロールと検証フォーム用の JS コードを迅速に生成できる PEAR クラス ライブラリです。これを手動で作成すると、JS と HTML を生成する方が手間がかかるのではないか? , しかし、OA のバックエンドなど、フォーム コントロールが多数ある場合、クイックフォームの利点が表示されます。クイックフォームを使用すると、コードが明確でメンテナンスが容易になるという特徴があり、大規模および中規模の開発に非常に適しています。さらに便利なのは、smarty で簡単に使用できることです ^_^ さっそくコードを見てみましょう。事前に PEAR のインストールを理解しておくのが最善です。http を参照してください。 ://hi.baidu.com/wanghaozi/blog/item/81cfb7003f973687e850cd3e.html。
会社が使用しているクイックフォームは独自に改良されているため、オンラインで見るものとは少し異なります。ここで著作権を説明するのは不便です。誰でも理解できるように、コアのコードを簡単に示します。 ご興味のある方は お友達このHAOHAPPYの記事を読むことができます:http://www.phpe.net/articles/418.shtml
[php]

/*
*著者: Hui Boss
* ページ: path.cfg.php
* 機能: システムパス設定
* 著作権: 自由にコピー^_^
*/

$global['path']['conf'] = $global ['path'][ 'root'] . 'conf/';//システム設定ファイルのパスを定義します
$global['path']['lib'] = $global['path']['root'] . 'lib/';/ /システム ライブラリ ファイルのパスを定義します

?>
[/php]
[php]

/*
*著者: Hui Boss
*ページ: Smarty.cfg。 php
*関数: Smarty 基本設定
*著作権: 自由にコピー^_^
*/

//テンプレートパスを定義
$global['smarty']['template_dir'] = $global['path'] ['root'] . 'lib /smarty/templates';
//テンプレートのコンパイルディレクトリを定義します
$global['smarty']['compile_dir'] = $global['path']['root'] ' lib/smarty/templates_c';
/ /smarty 構成フォルダーのパスを定義します
$global['smarty']['config_dir'] = $global['path']['conf'] 'lib/smarty/configs';
$ global ['smarty'] ['cache_dir'] Due Smartyエラー報告Disabled
$ global ['smarty'] ['debugging'] = false; caching'] = false;
//$global['smarty'] ['cache_lifetime'] = 6000;

//左右の境界文字を定義します
$global['smarty']['left_delimiter'] = ' <{';
$global['smarty']['right_delimiter'] = '}>';

?>
[/php]
[php]

/*
*著者: Hui Boss
*ページ: common.cfg.php
*機能: グローバル設定
*著作権: 自由にコピーしてください^_^
*/

$global['path']['root'] = dirname( __FILE__) . '/';//ルートディレクトリを設定します
require($global['path ']['conf'] . 'conf/path.cfg.php');

require($global['path' ]['conf'] . 'smarty.cfg.php');
//smarty クラス ライブラリが含まれています
require($global['path']['lib'] . 'smarty/libs/Smarty.class.php' );

//smarty 構成
$tpl = new Smarty();
$tpl- >template_dir = $global['smarty']['template_dir'];
$tpl->compile_dir = $global[' Smarty']['compile_dir'];
$tpl->config_dir = $global[' Smarty']['config_dir'];

$tpl->debugging = $global['smarty']['debugging' ];
$tpl->キャッシュ = $global['smarty']['caching' ];
$tpl->cache_lifetime = $global['smarty']['cache_lifetime'];

$tpl-> ;left_delimiter = $global['smarty']['left_delimiter'];
$tpl-> ;right_delimiter = $global['smarty']['right_delimiter'];
unset($global['smarty']);

ini_set('include_path', ini_get('include_path') .
PATH_SEPARATOR . $global[' path']['lib'] . 'pear/');//pear ライブラリ ファイルをロードします
?>
[/ php]
[php]

/*
*作者: Hui Boss
*ページ:index.php
*機能: UI
*著作権: 自由にコピーしてください^_^
*/

require_once ('common.inc.php');//グローバル設定をロードします

//クイックフォームクラスライブラリを含めます
require($global['path']['lib'] . 'pear/HTML/QuickForm.php');

$form = new HTML_QuickForm('changepwdform');//クイックフォーム インスタンスを生成します。パラメータはフォーム名です

/*
*フォーム要素の追加を開始します
*パラメータは次のとおりです: フォーム要素の種類、名前、(ボタンのラベルのテキスト) ), style
*/
$form->addElement('password','adminPwd', '','style="width:120px"');
$form->addElement('password','newPwd ','','style="width:120px"');
$form-> addElement('password','newPwd2','','style="width:120px"');
$form- >addElement('submit','btnSubmit','Change password','style="width :100px"');

//検証ルールを追加し、JS を自動生成します
$form->addRule('adminPwd' ,『パスワードを空にすることはできません! ','required','','client');
$form->addRule('newPwd','新しいパスワードを空にすることはできません!','required','','client');
$ form ->addRule('newPwd2','新しいパスワードをもう一度入力してください!','required','client');
$form->addRule(array('newPwd','newPwd2'),"Enter 2回 パスワードが一致しません!",'compare','','client');
$form->;//フォーム送信を無効にする

//フォームデータを配列に代入する
$tpl->assign('form_data',$form ->toArray());

//テンプレートを表示
$tpl->display('index.tpl');


?>
[/php]
テンプレートコード:

コードをコピー コードは次のとおりです:


> <{$form _ data.javascript} >

p< /p>
<{$form_data.attributes}> align="center" cellpadding="3" 3"
bgcolor="#F6F6F6" style="font-size:9pt" class="AddTable">

管理者パスワードの変更



< div align ="center">既存の管理者パスワード

; .newPwd.html}
td>
< /td>



なぜこのように複雑なパスが絶対パスを使用して定義されているのか疑問に思うかもしれません。これは最近、企業プロジェクトのニーズに合わせて調整されました (笑)。実際、これは大規模なプロジェクトをデプロイする場合に役立ちます。もちろん、ここでは簡単に紹介するだけなので、quickform や Smarty に触れたことのない初心者は混乱すると思います。興味があれば、さらに深く学習していただければ幸いです。効果を確認してください:

2 回見て、入力されたパスワードが同じかどうかを確認してください:
[php]
$form->addRule(array('newPwd','newPwd2'),"2 回入力されたパスワードは矛盾しています!",'compare','','client ');
[/php]
コードは簡潔で明瞭に見えますか?ははは、次は XAJAX と組み合わせたアプリケーションに適用されます。私の学習経験を引き続き共有していきますみんなで、ふふふ!




http://www.bkjia.com/PHPjc/317876.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/317876.html

技術記事

会社では SMARTY 開発モデルと組み合わせた Quickform を必要としているため、ここ数日間取り組んできました。Quickform は、フォーム コントロールと検証を迅速に生成できる PEAR クラス ライブラリです。



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

WeChat の「おやすみモード」は何をするのですか? WeChat の「おやすみモード」は何をするのですか? Feb 23, 2024 pm 10:48 PM

WeChat のサイレント モードとはどういう意味ですか? 現在、スマートフォンの人気とモバイル インターネットの急速な発展により、ソーシャル メディア プラットフォームは人々の日常生活に欠かせないものとなっています。 WeChat は中国で最も人気のあるソーシャル メディア プラットフォームの 1 つであり、ほとんどの人が WeChat アカウントを持っています。私たちは WeChat を通じて友人、家族、同僚とリアルタイムでコミュニケーションを取り、生活の瞬間を共有し、お互いの現在の状況を理解することができます。しかし、この時代では、特に集中力や集中力が必要な人々にとって、情報過多やプライバシー漏洩の問題にも必然的に直面します。

おすすめのAI支援プログラミングツール4選 おすすめのAI支援プログラミングツール4選 Apr 22, 2024 pm 05:34 PM

この AI 支援プログラミング ツールは、急速な AI 開発のこの段階において、多数の有用な AI 支援プログラミング ツールを発掘しました。 AI 支援プログラミング ツールは、開発効率を向上させ、コードの品質を向上させ、バグ率を減らすことができます。これらは、現代のソフトウェア開発プロセスにおける重要なアシスタントです。今日は Dayao が 4 つの AI 支援プログラミング ツールを紹介します (すべて C# 言語をサポートしています)。皆さんのお役に立てれば幸いです。 https://github.com/YSGStudyHards/DotNetGuide1.GitHubCopilotGitHubCopilot は、より少ない労力でより迅速にコードを作成できるようにする AI コーディング アシスタントであり、問​​題解決とコラボレーションにより集中できるようになります。ギット

iPhoneでサイレントモードが機能しない:修正 iPhoneでサイレントモードが機能しない:修正 Apr 24, 2024 pm 04:50 PM

おやすみモードで電話に応答することさえ、非常に煩わしい経験になる可能性があります。名前が示すように、おやすみモードでは、すべての着信通知と電子メール、メッセージなどからの警告がオフになります。これらのソリューション セットに従って問題を修正できます。解決策 1 – フォーカス モードを有効にする 携帯電話でフォーカス モードを有効にします。ステップ 1 – 上から下にスワイプしてコントロール センターにアクセスします。ステップ 2 – 次に、携​​帯電話の「フォーカスモード」を有効にします。フォーカス モードでは、電話機のサイレント モードが有効になります。携帯電話に着信通知が表示されることはありません。解決策 2 – フォーカス モード設定を変更する フォーカス モード設定に問題がある場合は、修正する必要があります。ステップ 1 – iPhone の設定ウィンドウを開きます。ステップ 2 – 次に、フォーカス モード設定をオンにします

どのAIプログラマーが一番優れているでしょうか? Devin、Tongyi Lingma、SWE エージェントの可能性を探る どのAIプログラマーが一番優れているでしょうか? Devin、Tongyi Lingma、SWE エージェントの可能性を探る Apr 07, 2024 am 09:10 AM

世界初の AI プログラマー Devin の誕生から 1 か月も経たない 2022 年 3 月 3 日、プリンストン大学の NLP チームはオープンソース AI プログラマー SWE-agent を開発しました。 GPT-4 モデルを利用して、GitHub リポジトリの問題を自動的に解決します。 SWE ベンチ テスト セットにおける SWE エージェントのパフォーマンスは Devin と同様で、平均 93 秒かかり、問題の 12.29% を解決しました。専用端末と対話することで、SWE エージェントはファイルの内容を開いて検索したり、自動構文チェックを使用したり、特定の行を編集したり、テストを作成して実行したりできます。 (注: 上記の内容は元の内容を若干調整したものですが、原文の重要な情報は保持されており、指定された文字数制限を超えていません。) SWE-A

Go 言語を使用してモバイル アプリケーションを開発する方法を学ぶ Go 言語を使用してモバイル アプリケーションを開発する方法を学ぶ Mar 28, 2024 pm 10:00 PM

Go 言語開発モバイル アプリケーション チュートリアル モバイル アプリケーション市場が活況を続ける中、ますます多くの開発者が Go 言語を使用してモバイル アプリケーションを開発する方法を検討し始めています。シンプルで効率的なプログラミング言語として、Go 言語はモバイル アプリケーション開発でも大きな可能性を示しています。この記事では、Go 言語を使用してモバイル アプリケーションを開発する方法を詳しく紹介し、読者がすぐに始めて独自のモバイル アプリケーションの開発を開始できるように、具体的なコード例を添付します。 1. 準備 始める前に、開発環境とツールを準備する必要があります。頭

ブルースタートラベル八尾はどこの会社ですか? ブルースタートラベル八尾はどこの会社ですか? Mar 22, 2024 pm 03:41 PM

「Blue Star Travel Ballad」は、最近プロモーション ビデオが公開されてから、ゲームの注目リストに載っています。「Blue Star Travel Ballad」がどこの会社で作られているのか、多くのプレイヤーが非常に興味を持っています。実際、これは上海の 2D メーカー Manjiu の新作です。以下、編集者が説明させていただきますので、ここではBlue Star Yuanluyao Game Companyの紹介をさせていただきますので、ぜひ一緒にご覧ください。ブルー スター トラベル ヤオの会社はどこですか? 回答: Manjiu Network によって設立されました。 1. まず、「ブルースタートラベルヤオ」はManju’s Big World RPGより発売されたゲームで、3月20日にプロモーションビデオが公開されました。 2. この製品のバージョン番号は 2023 年 10 月に取得されます。ゲームの商標と運営単位はどちらも という会社名で登録されており、後者は 2023 年 2 月に設立され、公式 Web サイトには本社がシンガポールにあることが示されています。 3. 今回公開された11分間のプロモーションビデオでは、

Android 開発に最適な Linux ディストリビューションはどれですか? Android 開発に最適な Linux ディストリビューションはどれですか? Mar 14, 2024 pm 12:30 PM

Android 開発は多忙で刺激的な仕事であり、開発に適した Linux ディストリビューションを選択することが特に重要です。数多くある Linux ディストリビューションの中で、Android 開発に最適なのはどれでしょうか?この記事では、この問題をいくつかの側面から検討し、具体的なコード例を示します。まず、現在人気のある Linux ディストリビューション (Ubuntu、Fedora、Debian、CentOS など) をいくつか見てみましょう。これらにはそれぞれ独自の利点と特徴があります。

Hands アプリはどこの会社のものですか? Hands アプリはどこの会社のものですか? Mar 13, 2024 am 11:10 AM

Hands-on はまったく新しいチャットおよびデート ソフトウェアですが、Hand-on-hand アプリはどの会社ですか?このソフトウェアは天津来福文化発展有限公司によって作成されました。Xiaomi Mall および Apple Mall からダウンロードできます。ハンズオンアプリ制作会社のご紹介では、その具体的な方法を以下で詳しく紹介していますので、ぜひご覧ください。 Qianshou アプリはどの会社ですか? 回答: 天津来福文化開発有限公司 詳細説明: ソフトウェアの公式 Web サイト https://www.qianshouapp.cn/ の下部に会社名が表示されます。ソフトウェアの紹介: 1. ユーザーの好みの条件に応じてフィルタリングすることができ、必要なオブジェクトをより速く見つけることができます。 2. ユーザーが必要なオブジェクトをより速く検索できるようになります。

See all articles