【问题标题】:Can I work with XML, HTML and PHP at the same time in the same file?我可以在同一个文件中同时使用 XML、HTML 和 PHP 吗?
【发布时间】:2017-07-12 18:42:55
【问题描述】:

基本上我在这里尝试做的是从用户那里获取选定的值,如果选定的值是成员,则生成一个输入框。我的问题是计算机无法理解echo 中编写的 HTML 代码。有人可以解释一下并帮助我吗?

我遇到问题的代码:

<?php
header('Content-Type: text/xml');
echo'<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo '<response>';
$food = $_GET['food'];
if (($food=="member")) {
    echo'Enter addditional details:<input type="text" name="optional">';
} else {
    echo "aint got ".$food;
}
echo'</response>';
?>

【问题讨论】:

    标签: php html ajax xml


    【解决方案1】:

    您不能在 XML 中使用 HTML 元素,因为 XML 会将它们视为 XML 元素。我建议只返回您输入的名称,或者如果没有名称则 1 或 0 来确定您是否应该显示您的输入并让 php 生成输入。

    XML 中有 5 个预定义的实体引用: & " '

    如果您需要 AJAX 并调用 PHP 进行信息处理,那么您不应该使用 XML,因为 XML 上的 AJAX 调用用于从文件中读取数据。

    查看以下差异:

    https://www.w3schools.com/js/js_ajax_xmlfile.asp

    https://www.w3schools.com/js/js_ajax_php.asp

    【讨论】:

      【解决方案2】:

      您当前代码的问题在于它正在创建一个无效的 XML 文档。

      XML 和 HTML 有一个共同的风格,但 XML 是一个更严格的标准。 HTML 可以是非常宽容的,并且代码可能会被大多数浏览器显示,但 XML 必须有所有元素的关闭标签。输入标签没有正确终止,应该是...

       echo'Enter addditional details:<input type="text" name="optional" />';
      

      注意关闭前的 /。你也可以把

       echo'Enter addditional details:<input type="text" name="optional"></input>';
      

      【讨论】:

        猜你喜欢
        • 2018-09-27
        • 2011-05-30
        • 1970-01-01
        • 1970-01-01
        • 2017-10-02
        • 2013-11-16
        • 1970-01-01
        • 2018-08-02
        • 2014-10-30
        相关资源
        最近更新 更多