【发布时间】:2011-05-11 01:57:11
【问题描述】:
在stores.htm 中,我必须输入两个值:一个用于街道地址(街道编号和街道名称),另一个用于郊区。在提供输入的基础上,它从stores.xml 文件中检索数据。
问题在于街道地址和郊区都存储在stores.xml 文件的<address> 元素中,而不是分开存储。我尝试了很多,但我没有找到如何将输入与 xml 文件数据匹配的解决方案。
我被困在 php 文件中的if (condition)
stores.xml
<?xml version="1.0" ?>
<stores>
<store>
<name>galaxy</name>
<address>50 Callander Road,Noble park</address>
</store>
<store>
<name>Remica</name>
<address>10 Challander Road,Noble park</address>
</store>
<store>
<name>Home</name>
<address>10/10 Callan Road,Richmond</address>
</store>
</stores>
stores.htm
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Search</title>
<script type="text/javascript" src="search.js"></script>
</head>
<body>
<form>
Enter Street Address: <input type="text" name="street" />
Enter Suburb : <input type="text" name="suburb" />
<input name="submit" type = "button" onClick = "getData('search.php','info', street.value, suburb.value)" value = "Search" />
</form>
<div id="info" />
</body>
</html>
search.php
$street= $_POST["str"];
$suburb= $_POST["sub"];
$xmlFile = "stores.xml";
$doc= DOMDocument::load($xmlFile);
$store = $doc->getElementsByTagName("store");
echo "<table border=1><tr><th>Name</th></tr>";
foreach($store as $node)
{
$name = $node->getElementsByTagName("name");
$name = $name->item(0)->nodeValue;
$address = $node->getElementsByTagName("address");
$address = $address->item(0)->nodeValue;
if( /* what goes here? */ ) {
echo"<tr><td>name</td></tr>";
}
echo "</table>";
【问题讨论】:
-
你到底想用这个地址做什么?用逗号分割?