アフィリエイト広告を利用しています
検索
<< 2024年11月 >>
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
最新記事
タグクラウド
カテゴリーアーカイブ
ファン
最新コメント
プロフィール
ゼロから始めるシステム開発さんの画像
ゼロから始めるシステム開発
 こんにちは!ナビゲータのEVEです。各種研究室を用意し、次期EVEシステムを製造しようと日々頑張っています。現在一番力を入れているのが、資金調達です。このブログもその一環ですので、ご協力いただければ嬉しいです。
プロフィール

2023年03月29日

仕様の再検討〜Prototype EVE〜 [プログラム研究室]


 こんにちは!
 ナビゲータのEVEです。
 
 昨日の問題点を受けて、本日Prototype EVEシステムの仕様について再検討を行いました。

[仕様の再検討]
 昨日、New Prototype EVEをの仕様の再検討をするという話をしましたが、そちらは、しなくていいようです。仕様の再検討が必要なのは、Prototype EVEの方・・・。
 再検討の結果としては、

1つのインスタンスで処理を完結する

 DB関連クラスの中には、データベースに関する基本的な機能が全て入っています。そのため、一度インスタンスを作成すれば、そのインスタンスでデータベースに関する操作を一通りすることができます。そのインスタンスを、昨日お話しした通り、サーバーサイト変数に設定し、プログラム内で共有します。
 以上の考えに則って作成したのが、下記のプログラムです。本日は、Insertだけ作成してみました。もしかして、考えが変わった、足りないなどがあったら、本日中に追加・修正します。もし、考えに変わりがなければ、トランザクション、コミット、ロールバック関数を作成後、明日から試験に入りたいと思います。



/*************************************************
*【メソッド名】DBinsert 関数(Prototype EVE)
*【 引 数 】
* p_sub 種別
* p_table テーブル名
* p_item 項目名(配列)
* p_data 入力データ(配列)
*【返 却 値】
* 正常時:""
* 異常時:""以外
*【製 造 者】EVE
*【製造年月日】2005年02月20日
*【更新年月日】2023年03月29日
*【リリース日】
*【バージョン】
*【 概 要 】
* [2023/03/29]
* レコードを追加する
*************************************************/

function gb_dbinsert($p_table,$p_item,$p_data ) {
//変数定義
$rtn = ""; //返却値
$db = ""; //コネクトインスタンス

//引数の入力データチェック
//テーブル名を確認する

if ( $p_table != "" ) {
//テーブル名が設定されていない場合
return "テーブル名が設定されていません。";
}
//項目数とデータの数を比較する
if ( count($p_item) != count( $p_data ) ) {
//違いがあった場合エラーメッセージを返却地にセットする
return "カラムとデータに不整合があります。";
}

//サーバーサイト変数の判定を行う
if (session_id()) {
//セッションIDが設定されている場合
//コネクトインスタンスを取得する

$db = $_SESSION['db'] ) {
} else {
//セッションIDが設定されていない場合
//セッションを開始する

session_start();
}

//コネクトインスタンスの判定を行う
if ( $db == "" ) {
//コネクトインスタンスが設定されていない場合
//インスタンス作成

$db = new getInfDB(db,host,'utf8',user,pass);
}

//データベースの登録の初期設定を行う
//SQLを実行する

$rtn = $db->recInsert($p_table,$p_item,$p_data);

//返却値を設定する
if ( $rtn == false ) {
//サーバーサイト変数を削除する
unset($_SESSION("db"));
//返却値が異常の場合
$rtn = $db->getErrorMessage();
} else {
//インスタンスをサーバーサイト変数として設定する
$_SESSION['db'] = $db;
}

//返却値の返却
return $rtn;
}



 以上のプログラムは、テキストエディタでプログラミングしたばかりのもので、デバックも何もしていません。多分、動かないと思います。こんな感じで作成してるんだな〜♪っぐらいに見てください。

[あとがき]
 やっと、頭の中がすっきりしました。方針がほぼきまり、いけそうだといった印象を持つことができました。
 方針が決まらないと、もんもんとしてしまい、なかなか、他の作業が手がつかないので、ひと段落です。ただ、デバックしてみないと最終的にはわかりませんが(笑)。

 うまくいくといいな〜♪

 では、また!!!
タグ:php
この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバックURL
https://fanblogs.jp/tb/11922541
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック