我的任务是修改一个页面,以便它接受上传的文件并解析该文件的内容以以特定格式显示它。
我有解析文件的代码 - 但目前它读取服务器上的静态文件并将其作为字符串读取。相反,我希望文件的内容在上传后填充字符串。
使用 PHP/JS 完成此任务的最佳方法是什么。如果可能的话,我宁愿完全不使用 PHP,但如果我必须这样做也没关系。
也欢迎其他选择。
谢谢
编辑:
谢谢 - 我会尽快发布代码,因为我还没有对其进行一些更改。
这可能是一个愚蠢的问题,但我不熟悉 AJAX。
文件是否必须上传到任何位置,或者可以临时存放在变量中。
我需要使用的文件是
http://distributome.avinashc.com/howardL/scripts/distributeome.js
特别是 xmlDoc = xmlhttp.responseXML;
我正在使用操作打开文件“Distributome.xml”
xmlhttp.open("GET","Distributeome.xml",false);
相反,我想使用用户上传的一个(或两个)XML 文件来填充它。
作为任务的另一部分;我需要使用两个文件,以便它们包含不同的数据;所以现在我只是在我评论的行中附加这两个文件。
编辑:
{
/*
Split into distributions and relations - but append them
xmlhttp.open("GET","Distributome.xml",false);
xmlhttp.send();
if (!xmlhttp.responseXML.documentElement && xmlhttp.responseStream)
xmlhttp.responseXML.load(xmlhttp.responseStream);
xmlDoc = xmlhttp.responseXML;
xmlhttp.open("GET","Distributome-references.xml",false);
xmlhttp.send();
if (!xmlhttp.responseXML.documentElement && xmlhttp.responseStream)
xmlhttp.responseXML.load(xmlhttp.responseStream);
xmlDoc = xmlDoc+xmlhttp.responseXML;
*/
getURLParameters();
/*** Read in and parse the Distributome.xml DB ***/
var xmlhttp=createAjaxRequest();
xmlhttp.open("GET","Distributome.xml",false);
xmlhttp.send();
if (!xmlhttp.responseXML.documentElement && xmlhttp.responseStream)
xmlhttp.responseXML.load(xmlhttp.responseStream);
xmlDoc = xmlhttp.responseXML;
try{
DistributomeXML_Objects=xmlDoc.documentElement.childNodes;
}catch(error){
DistributomeXML_Objects=xmlDoc.childNodes;
}
traverseXML(false, null, DistributomeXML_Objects, distributome.nodes, distributome.edges, distributome.references, distributomeNodes, referenceNodes);
xmlhttp=createAjaxRequest();
xmlhttp.open("GET","Distributome.xml.pref",false);
xmlhttp.send();
if (!xmlhttp.responseXML.documentElement && xmlhttp.responseStream)
xmlhttp.responseXML.load(xmlhttp.responseStream);
var ontologyOrder = xmlhttp.responseXML;
getOntologyOrderArray(ontologyOrder);
}
编辑:
我没有将文件上传到服务器;相反,我只希望在用户上传时解析内容 - 在本地。