2017-06-15 1 views
0

[リンクの説明を入力してください] [1]のドキュメントにしたがってphp-cpp拡張を実装しました。PHP-CPPの拡張機能で、ページアセスの変数の値を保持

CPPコードは、(リンクリストの)タイプNODEのグローバル変数(ルート)を持つ1つのファイルです。 2つの関数があります。

  1. rootで参照されるリストにノードを追加するには。
  2. Php :: outを使用して印刷されるリスト内の要素を表示する。

私のindex.phpには、数字を追加するボタン付きの入力ボックスが含まれています。 追加ボタンを押すと、追加ボックスの値がCPP拡張機能の追加機能を呼び出すphpファイルに送信されます。 別のボタンは、リスト内のノードを同じページに表示するビューです。

私は根がページビュー間でその値を保持しなければならないことを期待:私は何を期待

。 つまり、index.phpを読み込んでリストに数値を追加し、別のページからリストを表示しようとすると、最初のページから挿入された要素が表示されます。これは、ページを読み込もうとしているページやブラウザやマシンから発生します。 ソースからの追加は、すべてのページで表示する必要があります。何が起こっている

  1. 私は新しいタブやビューを開いたときに時々私は時々空のリストが印刷された以前の値を見ることができます。
  2. 新しいブラウザを開いた場合、前の値は間違いなく失われます。
  3. タブがロードされて空のリストが表示され、このページから値を入力すると、以前に開いたタブはすべて元の値を失い、この値が表示されます。
  4. タブを開いたままにして表示すると、いくつかのタブは空の値を表示し、いくつかはランダムな値を表示します(値を表示するとすべてのタブにその値が表示されます)。

ルート要素は常にリストのデータが複数のページビュー間で、失われないことを同じリストを指す、となるように、私は何をすべきかを提案してください。

答えて

0

ほとんどの場合、あなたのPHPスクリプトは、1つまたは複数の一時的なPHPインタープリタプロセスを起動することによってサーバー上で解釈されます。これらのプロセスはそれぞれ独自のグローバル変数を持ちます。プロセスが終了すると、そのグローバル変数の内容は失われます。

可変長の値を長期間保持する場合は、ある種のデータベースに保存する必要があります。 SQlとNO-SQL DBを扱うPHPツールはたくさんあります。

+0

各リクエストで行う必要がある作業が重い処理を必要とするため、複数のDB参照によってオーバーヘッドが増加するため、DBを使用したくありません。このため、検索時間が非常に短くなるように、CPPのBST内にリンクリストを実装したいと考えています。また、CPPはそれをより速くするでしょう。しかし、複数のページビューでツリーの参照を保持することはできません。 – user3396714

関連する問題