【发布时间】:2017-01-13 18:52:26
【问题描述】:
我正在尝试将位置作为变量在 page.php 上使用。它将开始将选项加载到选择框中大约 5 秒钟,我实际上将能够看到这些选项,然后它全部删除并且我有一个空的选择框。这是 PHP 代码:
<?php
$xml = simplexml_load_file("file.xml");
echo '<form method="get" action="page.php"><select name="place" id="place">';
foreach($xml as $banana)
{
if(isset($banana->id))
{
$id = $banana->id;
$string = $banana->state . " - " . $banana->name;
echo '<option value="' . $id . '">' . $string . '</option>';
}
}
echo "</select>";
echo '<input type="submit" /></form>';
?>
我确定我的 XML 格式正确,但 XML 文件有超过 2500 个条目,每个条目看起来像这样:
<container>
<id>theId</id>
<state>theState</state>
<name>theName</name>
</container>
任何想法为什么不会加载?
注意:某些项目在 XML 文件中的 id 为空,我不想包含这些文件,这就是我检查以确保已设置的原因。
【问题讨论】:
-
如果不是创建一个选择框,您只是
print_r($xml);是否显示所有条目? -
@Ray 是的,它们都显示为 print_r($xml);
-
另外,如果您将数据粘贴在 HTML 中,您将希望确保其安全,以防 id 或 name 包含可能弄乱 HTML 的字符。
echo '<option value="' . htmlspecialchars($id) . '">' . htmlspecialchars($string) . '</option>'; -
@Ray XML 文件中的网络安全,所以我不需要担心,所有内容都是由我而不是用户添加到 XML 文件中的。不过,我真的很感谢您的反馈。
-
选择框上是否有任何 Javascript 绑定?禁用javascript并刷新,纯html选择框还死机吗?