ホームページ  >  記事  >  バックエンド開発  >  PHPエントリーページでデータベースから動的にデータを抽出する実装

PHPエントリーページでデータベースから動的にデータを抽出する実装

WBOY
WBOYオリジナル
2016-07-29 08:34:21703ブラウズ

概要: PHP を使用して動的 Web ページを作成する場合、サーバーに送信する前に、現在のページでユーザーが入力したフィールドの値に基づいて、PHP がデータベースから他の関連フィールドの値を即座に取得できるようにします。現在のページに表示します。これは開発上の困難なプログラムです。この記事では、この困難を解決するために、php と javascript という 2 つの HTML 埋め込み言語を賢く組み合わせる方法を、具体例を用いて詳しく紹介します。
キーワード: php、動的、html。
今日のウェブサイトは、静的な情報を提供する以前の形式から、動的な情報サービスを提供するインタラクティブな方法に発展しました。ウェブによる情報サービスの形態は、顧客への情報提供と、顧客が提出した情報の記録の2点に集約されます。この 2 つのサービスを提供するためには、ユーザーが自社 Web サイト上の膨大な情報の中から欲しい情報をいかに素早く取り出すことができるか、また、ユーザーが投稿した情報を効率的に記録し、容易に利用できるようにするかという課題が解決されなければなりません。今後のユーザー検索。これらの問題は、Web サイトにデータベースのサポートを追加することで解決できます。
PHP はさまざまなデータベースを適切にサポートしており、PHP スクリプトは HTML ドキュメントに直接埋め込まれているため、非常に使いやすいです。したがって、PHP はインターネット上で最も人気のあるサーバーサイド組み込み言語の 1 つです。さらに、ASP などの他のサーバー側スクリプト言語と比較して、PHP は無料でオープン ソースであり、クロスプラットフォーム サポートを提供しているため、Web ページ作成者は今日のネットワークのさまざまな異種ネットワーク環境に簡単に適応できます。強力な動的 Web ページをすばやく簡単に作成できます。ただし、PHP はサーバー側に埋め込まれているため、より直観的に理解すると、PHP ステートメントはサーバー上で実行され、現在のページのコンテンツが送信されたときにのみ受信して処理されます。また、顧客の現在のページに入力されたフィールドの値に基づいて、必要なコンテンツがライブラリから動的に抽出される場合、PHP は無力です。たとえば、いくつかの「仕入先情報」エントリを含む「発注契約」入力ページを顧客に提供したい場合、各仕入先の詳細情報が事前に「販売者」辞書テーブルに入力されている必要があります。顧客が現在のページで「サプライヤー」を選択すると、「口座開設銀行、口座番号、住所、電話番号など」などのサプライヤーの情報の一部がすぐに「マーチャント」辞書から抽出されて表示されます。現在のページでお客様が直接使用するか、変更することができます。このような要件は、pb や vb などのビジュアル プログラミング言語を使用して簡単に実装できますが、pb や vb は動的 Web ページの作成には適していませんが、サーバー側の埋め込みのため、php は動的 Web ページの作成には適しています。前ページの変数値の取得が間に合わないため、上記の要件を達成することが困難です。プログラミングの過程で、私は PHP と JavaScript を巧みに組み合わせて、この困難を解決しました。
これも埋め込みステートメントであることはわかっていますが、JavaScript は PHP 言語とは異なります。 PHP はサーバー側の埋め込みであり、JavaScript はクライアント側の埋め込みであるため、両方の JavaScript ステートメントはクライアントのブラウザ上で実行され、JavaScript が現在のページの変数値を時間内に取得できるかどうかが判断されますが、直接取得することはできません。サーバー側のデータベースを操作します。したがって、この 2 つを組み合わせて強力な動的な Web ページを作成することは完璧にマッチします。説明の便宜上、以下では、辞書テーブルから選択されたサプライヤーのアドレスのみを例として、具体的な方法を説明します。複数のフィールドを取り出す必要がある場合も同様の方法ですが、JavaScript関数を使用して文字列から1つずつ取り出す場合はさらに注意が必要です。
1. php 関数を作成します
この関数の機能は、「販売者」辞書テーブルから修飾されたすべての「サプライヤー情報」を取り出し、文字列変数 $khsz に格納することです。
function khqk_tq($questr){
global $dbconn;
$dbq_resl=sybase_query($questr,$dbconn); //Sybase が実行するクエリ文字列を送信します。 R $ dbq_rows = sybase_num_rows ($ dbq_resl); // 戻り値の数。
$j=0;
for ($i=0;$i $k[]=sybase_result($dbq_resl,$i,"kh_id"); //ユーザーが選択したサプライヤー番号を取得します。
$add=sybase_result($dbq_resl,$i,"address"); // サプライヤーのアドレスを取得します。 ️ if ($add= =""): $khsz= $khsz.$k[$j]."|".$k[$j+1]."|"; // 各フィールドの値を変数に接続します。 $khsz を区切り文字として「|」を使用して長い文字列を形成します。cusingを使用して - を使用します。 JavaScript 関数を作成します
この関数の機能は、文字列からの kh_id 値に基づいてサプライヤーのアドレスを検索し、それを HTML ファイルに埋め込むことです。
3. HTML で 2 つを組み合わせて相互に使用します
$khinfo="select kh_id,address from kh where co_id=$s_coid and type='g' order by kh_id";
//サプライヤー情報を取得する SQL ステートメントは次のとおりです。変数 $khinfo に格納されます。
$k=khqk_tq($khinfo); //php 関数を呼び出し、返された文字列値を変数 $k に代入します。

注文契約管理<タイトル></head> <br><body style="background-color: ivory"> <br><table align= center border=1 cellpadding=0 cellpacing=0 width="90%" style="font-size: 10pt"> <br> <br> <tr> <br> <td>契約番号</td><td><入力name=htbh size=15></td> <br> <td>契約概要</td><tdcolspan=5><input name=htgs size=53></td> > JavaScript関数。 ️ユーザーが選択できるように、条件を満たすすべてのサプライヤー名をドロップダウン リスト ボックスに入力します。ここで、 prt_sele はカスタム PHP 関数です。 <br> <td>Address</td> <br> <tdcolspan=3><input type=text name=address size=34 ></td> //JavaScript 関数をトリガーした結果、アドレス変数 値を取得してページに表示します。 <br> 上記のコードのシステム環境は、Linux オペレーティング システム、sybase データベース、Web サーバーは Apache、php4 プログラム インターフェイスです。 PHP と JavaScript を組み合わせた上記のプログラム開発アイデアは、私たちが開発した複数の動的 Web ページにうまく適用されています。 <br> <br> 以上、PHPエントリーページでデータベースから動的にデータを抽出する実装を内容も含めて紹介しましたが、PHPチュートリアルに興味のある方の参考になれば幸いです。 <br> <br> <br></p></div><div class="nphpQianMsg"><div class="clear"></div></div><div class="nphpQianSheng"><span>声明:</span><div>この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。</div></div></div><div class="nphpSytBox"><span>前の記事:<a class="dBlack" title="PHP のインストール PHP インストール ガイド: よくある質問 (3)" href="http://m.php.cn/ja/faq/321025.html">PHP のインストール PHP インストール ガイド: よくある質問 (3)</a></span><span>次の記事:<a class="dBlack" title="PHP のインストール PHP インストール ガイド: よくある質問 (3)" href="http://m.php.cn/ja/faq/321028.html">PHP のインストール PHP インストール ガイド: よくある質問 (3)</a></span></div><div class="nphpSytBox2"><div class="nphpZbktTitle"><h2>関連記事</h2><em><a href="http://m.php.cn/ja/article.html" class="bBlack"><i>続きを見る</i><b></b></a></em><div class="clear"></div></div><ins class="adsbygoogle" style="display:block" data-ad-format="fluid" data-ad-layout-key="-6t+ed+2i-1n-4w" data-ad-client="ca-pub-5902227090019525" data-ad-slot="8966999616"></ins><script> (adsbygoogle = window.adsbygoogle || []).push({}); </script><ul class="nphpXgwzList"><li><b></b><a href="http://m.php.cn/ja/faq/1.html" title="cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法" class="aBlack">cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/ja/faq/1.html" title="cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法" class="aBlack">cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/ja/faq/1.html" title="cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法" class="aBlack">cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/ja/faq/1.html" title="cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法" class="aBlack">cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/ja/faq/2.html" title="正規表現内のすべての式記号 (概要)" class="aBlack">正規表現内のすべての式記号 (概要)</a><div class="clear"></div></li></ul></div></div><ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5902227090019525" data-ad-slot="5027754603"></ins><script> (adsbygoogle = window.adsbygoogle || []).push({}); </script><footer><div class="footer"><div class="footertop"><img src="/static/imghwm/logo.png" alt=""><p>福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!</p></div><div class="footermid"><a href="http://m.php.cn/ja/about/us.html">私たちについて</a><a href="http://m.php.cn/ja/about/disclaimer.html">免責事項</a><a href="http://m.php.cn/ja/update/article_0_1.html">Sitemap</a></div><div class="footerbottom"><p> © php.cn All rights reserved </p></div></div></footer><script>isLogin = 0;</script><script type="text/javascript" src="/static/layui/layui.js"></script><script type="text/javascript" src="/static/js/global.js?4.9.47"></script></div><script src="https://vdse.bdstatic.com//search-video.v1.min.js"></script><link rel='stylesheet' id='_main-css' href='/static/css/viewer.min.css' type='text/css' media='all'/><script type='text/javascript' src='/static/js/viewer.min.js?1'></script><script type='text/javascript' src='/static/js/jquery-viewer.min.js'></script><script>jQuery.fn.wait = function (func, times, interval) { var _times = times || -1, //100次 _interval = interval || 20, //20毫秒每次 _self = this, _selector = this.selector, //选择器 _iIntervalID; //定时器id if( this.length ){ //如果已经获取到了,就直接执行函数 func && func.call(this); } else { _iIntervalID = setInterval(function() { if(!_times) { //是0就退出 clearInterval(_iIntervalID); } _times <= 0 || _times--; //如果是正数就 -- _self = $(_selector); //再次选择 if( _self.length ) { //判断是否取到 func && func.call(_self); clearInterval(_iIntervalID); } }, _interval); } return this; } $("table.syntaxhighlighter").wait(function() { $('table.syntaxhighlighter').append("<p class='cnblogs_code_footer'><span class='cnblogs_code_footer_icon'></span></p>"); }); $(document).on("click", ".cnblogs_code_footer",function(){ $(this).parents('table.syntaxhighlighter').css('display','inline-table');$(this).hide(); }); $('.nphpQianCont').viewer({navbar:true,title:false,toolbar:false,movable:false,viewed:function(){$('img').click(function(){$('.viewer-close').trigger('click');});}}); </script></body></html>