Webアプリケーションを作成していますが、次の問題があります。
私のアプリケーションでは、ユーザーは1つのページ内で作業しており、キャンバスに描画します。「保存」というボタンが1つあります。これにより、ユーザーIDと、キャンバスで作成したものがすべて取得され、データベースに送信されます。これはすべて正常に機能します。保存機能はこれを再構成します:
$.ajax({
url: "/database/write.php",
type: "POST",
data: {
docName: name,
docData: document_Data,
docMode: "new"
},
success: function(html) {
alert("Successfully Saved NEW document");
set_Mode();
},
});
上記のAJAXリクエストは3つの値をPHPスクリプトに送信し、PHPスクリプトはデータベースに新しいドキュメントを正常に作成します。次に行う必要があるのは、アプリケーションモードを新しいドキュメントの保存から以前に保存したドキュメントの編集に変更することです。これは、ユーザーが再度保存すると、同じ行に書き込み、以前のバージョンのドキュメントを上書きすることを意味します。
データをに送信するwrite.php
と、DBにデータが書き込まれ、挿入されたドキュメントをデータベースに照会して、一意のドキュメントIDを取得します。そのIDを使用すると、アプリケーションはそのドキュメントを選択して上書きできます。クエリからドキュメントIDを取得するには、次のコードを使用します。write.php
write.php
$_SESSION['DOCUMENT_ID'] = $DOCUMENT_ID;
SELECT
この$DOCUMENT_IDは、クエリから取得したドキュメントIDです。その後、スクリプトは終了し、制御をメインのアプリケーションページに戻します。
アプリケーションページに戻って、値を取得しようとしましたが、機能していないようです。$_SESSION
ユーザーが最初にアプリケーションにアクセスしたときに設定された値( )を取得できますid
が、現在はwrite.php
(DOCUMENT_ID
)ページで設定された値を取得できます。たとえば、以下は、AJAXリクエストが成功した後に呼び出される関数を示しています。
function set_Mode()
{
var PHPvar_01 = <?php echo($_SESSION['id']); ?>;
alert(PHPvar_01); //WORKS FINE
var PHPvar_02 = <?php echo($_SESSION['DOCUMENT_ID']); ?>;
alert(PHPvar_02); //DOES NOT WORK.
};
$_SESSION
ここでは機能していないように見えるため、PHPクエリスクリプトから取得したデータをアプリケーションに送信するにはどうすればよいですか。
フィードバックをありがとうございます。