Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
案例研究:这可以在PHP、JQuery或Ajax中实现。拉不同的结构化XML并在一个页面中同时显示它!_Php_Jquery_Xml_Ajax - Fatal编程技术网

案例研究:这可以在PHP、JQuery或Ajax中实现。拉不同的结构化XML并在一个页面中同时显示它!

案例研究:这可以在PHP、JQuery或Ajax中实现。拉不同的结构化XML并在一个页面中同时显示它!,php,jquery,xml,ajax,Php,Jquery,Xml,Ajax,提前感谢那些愿意花时间回答这个问题的人 我试图在我的页面中显示两个外部XML数据。假设这些xml的虚拟位置分别是www.ExampleDomain1.com/xml-1.xml和www.ExampleDomain2.com/xml-2.xml。这两个XML具有不同的元素标记,但具有相同的内容,下面是示例: XML-1.XML 服务提供商 公寓 011248 很棒的设施! 在风景区的这座受欢迎的建筑内提供这套梦幻般的两居室公寓。该酒店提供超过1450平方英尺的内部生活空间,包括两间双人卧室(主卧

提前感谢那些愿意花时间回答这个问题的人

我试图在我的页面中显示两个外部XML数据。假设这些xml的虚拟位置分别是www.ExampleDomain1.com/xml-1.xml和www.ExampleDomain2.com/xml-2.xml。这两个XML具有不同的元素标记,但具有相同的内容,下面是示例:

XML-1.XML


服务提供商
公寓
011248
很棒的设施!
在风景区的这座受欢迎的建筑内提供这套梦幻般的两居室公寓。该酒店提供超过1450平方英尺的内部生活空间,包括两间双人卧室(主卧为套房)、配备有集成电器的厨房、主浴室和宽敞的休息室/餐厅,通向一个大阳台,可以看到高尔夫球场的部分景观和码头的天际线。
1458
平方英尺
1525000
AED
1525000
2.
2.
观点
25.090200
55.170200
0
2011-02-18 20:15:08
http://www.ExampleDomain1.com/images/med_imgga94jqe351494b66b20eaec11fe501f5bdf797f4.jpg
http://www. 例如domain1.com/images/med_imgga94l1maf3ccdd27d2000e3f9255a7e3e2c48800.jpg
XML-2.XML


服务提供商
公寓
011250
很棒的设施!
这是一套位于市中心的一居室公寓。该房产面积为850平方英尺。内部生活空间的设计。奇妙的布局和个性化设计。从外部看,该物业有一个方便的停车场,可供一人停车。
1200
平方英尺
905000
AED
1525000
2.
2.
市中心
55.170200
0
2011-02-18 20:15:08
http://www.ExampleDomain2.com/images/med_imgga94jqe351494b66b20eaec11fe501f5bdf797f4.jpg
http://www. 例如domain2.com/images/med_imgga94l1maf3ccdd27d2000e3f9255a7e3e2c48800.jpg
从上面的示例中,您可以清楚地看到,XML标记的变化不同,尽管它们都有相同的内容。有人会说,为什么不在获取XML之前清理它?问题是这两个XML都是由专有软件生成的,这些软件没有操作输出的选项。因此,首先匹配元素标记是不可行的,此外,如果我手动进行匹配,对我来说将是一项艰巨的任务,尤其是如果数据很大的话

为了使事情变得更复杂,我想获取两个XML并在一个页面中同时显示两个结果。我想同时加载这两个XML并在搜索结果中显示它

我已经焦灼了一个星期了,我找到的最接近的代码示例就是这个。这个代码示例的问题是,它只从本地目录加载一个XML。如果我想从外部源一次加载多个XML怎么办

为了更详细地阐述我想要实现的目标,我有以下几点:

  • 制作一个搜索表单,该表单将同时获取XML并在一个页面中显示

  • 使图像显示为上面教程中的代码示例与我使用的XML结构不同

  • 为了完成这个案例,我必须知道哪些应用程序(PHP、JQuery、AJAX或三者的组合?)

  • 即使XMLs不存储在数据库中,它也能实现吗

  • 作为一名编写PHP代码的新手,我只需遵循一些Jquery脚本示例,如果没有您的帮助,上述问题将花费我很长时间才能找到正确的解决方案。我对HTML和CSS有信心,但对编程方面没有信心

    您能帮我显示我需要遵循的路径吗(示例代码)?或者有没有天才可以把我正在寻找的确切的科学代码扔给我

    非常感谢,


    迈克

    好的。这似乎相当复杂。但实际上,你可以通过中等工作量来实现这一点。 我现在不会向您提供任何代码或示例,但会向您展示如何解决该问题的可能性

    第一件事。您只能使用Javascript/jQuery来完成这项工作。这意味着客户机有很多工作和获取要做,但这是可能的

    您还可以将PHP和JS结合使用。这意味着服务器将进行繁重的工作来获取和匹配数据,并将组合结果发送回客户端

    如果总是同一个日期,PHP解决方案就有一个主要优势。您可以缓存组合数据,以便节省每次匹配XML的时间


    只要想一想什么对你更有效,我们就可以帮助你编写代码。(只是想弄清楚:XML总是像您提供的示例一样?XML中的字段/标记总是相同的?如果不是,整个问题会复杂得多。)

    请尝试简化问题,使其更容易理解。您好@Mo。感谢您的时间。我需要从两个不同的外部源获取两个XML数据,并在页面中显示。在RSS中很容易实现,因为有大量的提要聚合器。但是这些应用程序是有限的,只有当XML的格式像RSS或Atom一样时,它才能工作。请参见上面的XML示例。您将如何获取、解析和显示它,或者同时显示在页面中?您好@websler,谢谢您的时间!在您提到的3种可能的解决方案中,PHP似乎占了上风?你能详细说明一下吗?“缓存”是什么意思?我是否需要先将XML存储到数据库(MySql–也许?)中,一旦存储了数据,现在就可以查询它了。很抱歉,我刚刚开始学习PHP,但我可以用一个很好的例子。你能不能给我看一个例子链接,在那里我可以正确地开始我的任务!对不起,我忘了回答你的问题。是的,XML字段与上面的示例类似。我无法从应用程序本身更改它。输出为al
    <property>
     <type>SP</type>
     <subtype>Apartment</subtype>
     <refno>011248</refno>
     <title>Fantastic Facilities!</title>
     <description> Offering this fantastic 2 bedroom apartment set within this popular building in The Views. The property offers in excess of 1450sqft of internal living space comprising of two double bedrooms (en-suite to master),  fitted kitchen with integrated appliances, main bathroom and spacious lounge/diner leading onto a good size balcony with partial views of the golf course and views of the Marina skyline.
     </description>
     <size>1458</size>
     <sizeunits>SqFt</sizeunits>
     <price>1525000</price>
     <pricecurrency>AED</pricecurrency>
     <totalclosingfee>1525000</totalclosingfee>
     <bedrooms>2</bedrooms>
     <bathrooms>2</bathrooms>
     <locationtext>The Views</locationtext>
     <locationlat>25.090200</locationlat>
     <locationlon>55.170200</locationlon>
     <developer>0</developer>
     <lastupdated>2011-02-18 20:15:08</lastupdated>
     <photos>
      <photo>
    http://www.ExampleDomain1.com/images/med_imgga94jqe351494b66b20eaec11fe501f5bdf797f4.jpg
      </photo>
      <photo>
    http://www. ExampleDomain1.com/images/med_imgga94l1maf3ccdd27d2000e3f9255a7e3e2c48800.jpg
      </photo>
     </photos>
    </property>
    
    <listings>
     <category>SP</category>
     <subcategory>Apartment</ subcategory >
     <reference>011250</reference>
     <title>Fantastic Facilities!</title>
     <description> A fantastic 1 bedroom apartment in the exclusive Downtown area. The property offers 850 sq.ft. of internal living space. Fantastic layout and personalized design. Externally the property has an easy accessible carport with parking for one. 
     </description>
     <size>1200</size>
     <unitsize>SqFt</ unitsize >
     <price>905000</price>
     <currency>AED</currency>
     <closingfee>1525000</closingfee>
     <bedrooms>2</bedrooms>
     <bathrooms>2</bathrooms>
     <location> Downtown </location>
     <locationlon>55.170200</locationlon>
     <developer>0</developer>
     <updated>2011-02-18 20:15:08</updated>
     <photos>
       <photo> http://www.ExampleDomain2.com/images/med_imgga94jqe351494b66b20eaec11fe501f5bdf797f4.jpg
       </photo>
       <photo> http://www. ExampleDomain2.com/images/med_imgga94l1maf3ccdd27d2000e3f9255a7e3e2c48800.jpg
        </photo>
     </photos>
    </listings>