PHPShop.CMS Freeのモジュールの作成-つまずき(パート2)

PHPShop.CMS Freeをサイトビルダーとして使用して、Web開発者向けの有用なヒントを公​​開しています。 この記事では、GUIインターフェースの複雑さを分析し、デバッグパネルを操作します。

GUIインターフェース

フレームワークPHPShopとその使用の微妙なポイント。

プライマリフォームローダーの指定

多くの場合、管理部のインターフェースを作成する開発者は、既存のものをコピーしてファイルを作成します。その理由はわかりません。

//     $PHPShopGUI->setAction($_GET['id'],'actionStart','none'); //   $PHPShopGUI->getAction(); 

トリックは、ロード時に$ _GET ['id']がフォームに渡される場合、メソッド$ PHPShopGUI-> setAction($ _ GET ['id']、 'actionStart'、 'none')が使用されることです。 フォームにパラメーターがない場合は、setLoader()メソッドが使用されます。

 //     $PHPShopGUI->setLoader($_POST['editID'],'actionStart'); //   $PHPShopGUI->getAction(); 


setLoader()の最初の引数として$ _POST ['editID']があります。これは、$ _POST ['editID']が未定義の場合、2番目の引数で指定されたactionStart関数が実行される依存マーカーとして機能します。

そして、$ _POST ['editID']が設定されている場合、同じファイルにあるはずのactionInsert()関数を実行します。 actionInsertアクションの宣言は、フォームに次の行を含めることにより、actionStart()関数で発生します。

 $ContentFooter=$PHPShopGUI->setInput("submit","editID","","right",70,"","but","actionInsert"); $PHPShopGUI->setFooter($ContentFooter); 

この挿入は[OK]ボタンをグラフィカルに表示し、クリックするとactionInsert()関数が実行されます。

デバッグ

デバッグには、有用な情報が表示されるPHPShopDebugデバッグパネルが使用されます。

ナビゲーションデータの取得


画像

どのデータが何をどのように使用するのかを理解するために、デバッグパネルにリクエストメニューがあります。 クリックして完全な出力を表示することで、使用する有用なデータと変数名が得られます。次に例を示します。

 GLOBALS['SysValue']['nav']: Array ( [truepath] => /price/ [path] => price [nav] => [name] => [id] => [page] => [querystring] => debug=request [query] => Array ( [debug] => request ) [longname] => /price/ [url] => /price/ ) 

たとえば、変数$ GLOBALS ['SysValue'] ['nav'] [path]には、価格セクションの住所などが含まれます。

デバッグパネルを有効にするには、パラメーター[my] debug = "true"を設定します。 config.ini構成ファイル内

通知を非表示(通知のデバッグ)

多くの場合、ローカルサーバーとホストは、PHPのすべてのデバッグメッセージを表示するオプションを楽しんでいます。 これは非常に不便であり、新参者はエラーの数に打ちのめされますが、これらはエラーではなく、開発者向けのデバッグメッセージです。 単なる人間にとって、彼らはヤギの第五の脚のようなものです。 もちろん、.htaccessファイル内のすべてのエラーを削除できますが、デバッグはより困難になります。

この問題を解決するために、PHPエラーを管理して独自のハンドラーを割り当てることができるエラーログモジュールがあります。 すべてのエラーはモジュールデータベースに書き込まれ、分析に使用できます。 モジュールデータベースに特定のイベントを記録するには、次のレコードを使用します。

 trigger_error(" ", E_USER_NOTICE); 

エラーログは、PHPShop.CMS Freeに含まれています。 モジュールのエラー出力レベルの最適な設定は、すべてのエラーの出力をブロックすることです。一方、すべてのエラーとデバッグはデータベースに書き込まれ、サイトの一般ユーザーを怖がらせません。

次のパートでは、サンプルモジュールを例として使用して、統合開発環境PHPShop IDEのインターフェースから新しいモジュールを作成する方法を調べます。

PS 最後のレッスンの経験から、多くの人がパート1を好まなかったことがわかりました。 質問や情報の誤解がある場合は、コメントでそれらを表現してください。 質問するものがない場合は、マイナスするだけでなく、ビジネスに取り掛かり、「生きているカルマ」を台無しにしないでください。

Source: https://habr.com/ru/post/J129157/


All Articles