簡體   English   中英

將XML發布到PHP以使用XMLHttpRequest或Ajax針對xsd進行驗證?

[英]Post xml to PHP for validation against xsd with XMLHttpRequest or Ajax?

我有一個Flash應用程序,可將xml發布到php頁面,該頁面可針對xsd模式進行驗證。 我正在嘗試從html頁面執行相同的操作。 我正在使用XMLHttpRequest或jquery的ajax調用,但是我一直在解決相同的問題。 “文檔沒有文檔”或“ access-control-allow-origin”標題問題。我可以修復其中一個,但不能修復。

我的PHP頁面如下所示:

function libxml_append_errors() { 
    global $returnXML, $errors;
    $e = libxml_get_errors(); 
    foreach ($e as $error) { 
        $en = $returnXML->createElement("error", trim($error->message)); 
        $en->setAttribute('line',$error->line);
        $errors->appendChild($en);
    } 
    libxml_clear_errors(); 
} 

libxml_use_internal_errors(true); 


$xml = new DOMDocument();
$contents = $HTTP_RAW_POST_DATA;
$xml->loadXML($contents);


$returnXML = new DOMDocument("1.0", "utf-8");
$rootNode = $returnXML->createElement("result");
$returnXML->appendChild($rootNode);

$errors = $returnXML->createElement("errors");

if (!$xml->schemaValidate('muffin_dumplings.xsd')) 
{   
    libxml_append_errors(); 
} 
$rootNode->appendChild($errors);
echo $returnXML->saveXML(); 

無論哪種方式,我都希望找回帶有任何驗證錯誤的xml或與Flash相同的簡單的空錯誤xml節點。

如果有人在乎,這就是答案。 當您發布到PHP時,具有正確的標題,並且正在使用ajax,則需要傳遞內容類型。 然后就可以了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM