アフィリエイト広告を利用しています
検索
<< 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月30日

ドツボにはまっています [プログラム研究室]


 こんにちは!
 ナビゲータのEVEです。
 
 昨日の検討を受けて、プログラムを修正、試験をしているのですが、ドツボにはまっています。

[今日の確認状況]
 何が問題かというと、PDOで接続してできた、インスタンスをサーバーサイト・セッションに設定しそれを各プログラムで使いまわそうとしているのですが、エラーになります。ちなみに、Transaction、Insert、Commit処理を実施後、PDOインスタンスをサーバーサイト変数として再設定するという作業を行えば、とりあえず、Transaction、Insert、Commitの機能は利用することができます。ただ、やはり、エラーが表示されます。
 エラーメッセージは、以下の通り・・・。

Fatal error: Uncaught Exception: Serialization of 'PDOStatement' is not allowed in [no active file]:0 Stack trace: #0 {main} thrown in [no active file] on line 0

  エラーの発生個所は、New Prototype EVEのレコード追加メソッド内のプリシアードステートメントへバインド変数を設定している所で起きているっぽい・・・。ぽいっというのは、細かいレベルまで、トレースが終わっていないためです。
 通常のメモリから、サーバーサイト変数、セッション変数に設定するときに何かしらの変換がされているようなのですが、その変換のせいでエラーとなっているということだと思われます。
 これが、Warningならまだかわいいのですが、Fatal errorです。無視もできず、現在も対応策を考えています。

[あとがき]
 以上のメッセージをうけて、serializeunserializeメソッドを利用して、上記メッセージを回避しようとしましたが、今のところ解消できていない状況です。いい考えだと思ったのですけれどね・・・。PDOインスタンスをサーバーサイト、セッション変数で共有して各プログラムで利用する方法・・・。
 インターネットでは、1件だけ同じ悩みを抱えている人がいましたが、そちらのほうは、PDOインスタンスをサーバーサイトへ設定することがマストではなかったようで、PDOから中身を取り出して、それを、サーバーサイト変数として設定していました。
 私は、そのような手法は利用できませんし・・・。やはり、大本から仕様変更しないとだめかもしれません・・・。

 もうちょっと、粘ります!

 では、また!!!

■PHPのシリアライズを知ろう!便利な使い方徹底解説(SAMURAI ENGINEER Blog)
https://www.sejuku.net/blog/80079
この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

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

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

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