我正在創建一個應用程序,用戶在畫布上繪製形狀,然後從數據庫中保存並檢索它們。保存部分工作正常,但現在儘管我試圖加載這個XML內容,那是麻煩開始的地方。PHP似乎不能很好地使用XML字符串進行播放?
首先,用戶有一個他們已經創建的文檔列表,當點擊它時,它會將該文檔加載到應用程序中,我使用以下代碼,首先是一個JavaScript函數,它接收文檔的ID,然後發送它到一個PHP腳本,它從數據庫中檢索文檔數據。 PHP腳本比加載文件數據變爲$_SESSION['data']
變量。完成後,它返回到將用戶重定向到應用程序頁面的JavaScript函數。
function loadDocument(docID){
$.ajax({
url: "load_a_document.php",
type: "POST",
data: {
documentID: docID,
},
success: function(data)
{
alert(data); //THIS DISPLAYS THE XML WITH NO PROBLEMS???
window.location = "application.php";
}
});
};
的PHP查詢數據庫,並retreives文件的名稱和XML內容,它就會做到這一點:
$_SESSION['document_Name'] = $doc_NAME;
$_SESSION['document_XML'] = $doc_DATA;
echo($_SESSION['document_XML']); //this is 'data' on the ajax success call
現在,當PHP完成它呼應了PHP的背景下,這顯示了在成功提示框中:{}的AJAX沒有問題。現在只需要用戶的實際應用程序,它開始像這樣:
<?php
session_start();
$document_Name = $_SESSION['document_Name'];
$document_Data = $_SESSION['document_XML'];
?>
<script>
alert(" <?php echo $document_Name; ?> "); //WORKS FINE
alert(" <?php echo $_SESSION['document_Name']; ?> ") //WORKS FINE
//alert(" <?php echo $document_Data; ?> "); //STOPS THE PAGE LOADING
//alert(" <?php echo $_SESSION['document_XML']; ?> ") //STOPS THE PAGE LOADING
</script>
抓取前兩個項目,不存在任何問題,只要XML數據是打印機那麼他們是一個真正的問題。我不明白爲什麼loadDiagram()
可以alert ()
XML但我的應用程序頁面不能。數據是否已被破壞?
感謝您的任何反饋意見。
+1總是檢查您的*生成的JavaScript源代碼*是否有效和/或有意義。 – deceze