我正在创建一个 Web 应用程序并遇到以下问题。
在我的应用程序中,用户在单个页面中工作,他们在画布上绘制。有一个名为“保存”的按钮。这将获取用户 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 请求确实将这三个值发送到 PHP 脚本,然后成功地在数据库中创建了一个新文档,我现在需要做的是将应用程序模式从保存新文档更改为编辑以前保存的文档。这意味着当用户再次保存时,他们将写入同一行,覆盖文档的先前版本。
当我将数据发送到它时,write.php
它确实将数据写入数据库并查询数据库以获取该插入的文档并检索其唯一的文档 ID。使用该 ID,应用程序可以选择该文档并覆盖它。要从查询中检索文档 ID,我使用以下代码write.php
写.php
$_SESSION['DOCUMENT_ID'] = $DOCUMENT_ID;
此 $DOCUMENT_ID 是从SELECT
查询中检索到的文档 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.
};
我应该如何将从 PHP 查询脚本检索到的数据发送到应用程序,因为$_SESSION
这里似乎不起作用。
感谢您的任何反馈。