Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.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 对第7行的非对象调用成员函数attributes()_Php_Xml_Simplexml - Fatal编程技术网

Php 对第7行的非对象调用成员函数attributes()

Php 对第7行的非对象调用成员函数attributes(),php,xml,simplexml,Php,Xml,Simplexml,好了,伙计们,我到处都在寻找这个问题的答案,但没有运气解决这个问题。 我创建了一个名为questions.xml的xml文档。下面是代码示例 i、 e 然后我制作了一个表格数据,其中显示了不同的问题编号,我必须选择一个问题。我使用单选按钮进行选择,然后定义了一个名为“问题”的提交按钮。 因此,当用户选择并提交任何问题时,单选按钮值0、1、2、3等通过POST方法传递到另一个php页面。 现在在这个新的php页面中,我必须在文本字段区域中显示所需的问题。 问题是我总是遇到这样一个愚蠢的错误“在

好了,伙计们,我到处都在寻找这个问题的答案,但没有运气解决这个问题。 我创建了一个名为questions.xml的xml文档。下面是代码示例 i、 e


然后我制作了一个表格数据,其中显示了不同的问题编号,我必须选择一个问题。我使用单选按钮进行选择,然后定义了一个名为“问题”的提交按钮。 因此,当用户选择并提交任何问题时,单选按钮值0、1、2、3等通过POST方法传递到另一个php页面。 现在在这个新的php页面中,我必须在文本字段区域中显示所需的问题。 问题是我总是遇到这样一个愚蠢的错误“在第6行的非对象上调用成员函数attributes()。 我的密码是

<?php
    $condition= $_POST['question'];
    $xml = simplexml_load_file("questions.xml");
    echo $condition;
    if ($condition=="0"){
        $question= $xml-> topic -> subtopic-> question[$condition] ->  attributes()-> text."<br>";
        echo "<form action='' method='post'> 
        <label for='question'> Question</label>
        <textarea name='question' id='1' cols='45' rows='5'>".$question."</textarea>
        <P><INPUT TYPE=SUBMIT VALUE='submit'> </form>";

        }
 ?>

首先检查,您会收到一个用户输入,因此它不能设置,也可以是任何字符串

转换为整数:

$condition = (isset($_POST['question'])) ? (int) $_POST['question'] : "some default value" ;

if (isset($xml-> topic -> subtopic-> question[$condition]) && is_object($xml-> topic -> subtopic-> question[$condition])){
  $question= $xml-> topic -> subtopic-> question[$condition] ->  attributes()-> text."<br/">
  //and so on.
}
$condition=(isset($\u POST['question']))?(int)$_POST['question']:“一些默认值”;
if(isset($xml->topic->subtopic->question[$condition])&&is_对象($xml->topic->subtopic->question[$condition])){

$question=$xml->topic->subtopic->question[$condition]->attributes()->text。”首先检查,您会收到一个用户输入,因此它不能设置,也可以是任何字符串

转换为整数:

$condition = (isset($_POST['question'])) ? (int) $_POST['question'] : "some default value" ;

if (isset($xml-> topic -> subtopic-> question[$condition]) && is_object($xml-> topic -> subtopic-> question[$condition])){
  $question= $xml-> topic -> subtopic-> question[$condition] ->  attributes()-> text."<br/">
  //and so on.
}
$condition=(isset($\u POST['question'])?(int)$\u POST['question']:“一些默认值”;
if(isset($xml->topic->subtopic->question[$condition])&&is_对象($xml->topic->subtopic->question[$condition])){

$question=$xml->topic->subtopic->question[$condition]->attributes()->text。“
$xml->topic->subtopic->question[0]
存在,而
$xml->topic->subtopic->question[“0”]
不存在

$\u POST['question']
转换为整数就可以了

$condition= (int) $_POST['question'];

将起作用。

$xml->topic->subtopic->question[0]
存在,而
$xml->topic->subtopic->question[“0”]
不存在

$\u POST['question']
转换为整数就可以了

$condition= (int) $_POST['question'];

可以。

您是否尝试将
$condition
转换为整数?
问题[$condition]
是非整数-object@Ghommey:这很明显..问题是为什么会这样…但一个简单的
var\u转储($xml->topic->subtopic->question)
可能会解释..代码应该适用于条件
0
。因此,可能是
问题中的XML有问题。XML
,我怀疑它与问题中的XML不一样。@prodigitalson No。但它给了我整数值。我可以添加这个$condition变量的值。你认为它真的有问题吗必要吗?您是否尝试将
$condition
强制转换为整数?
问题[$condition]
是非整数-object@Ghommey:这很明显..问题是为什么会这样…但一个简单的
var\u转储($xml->topic->subtopic->question)
可能会解释..代码应该适用于条件
0
。因此,可能是
问题中的XML有问题。XML
,我怀疑它与问题中的XML不一样。@prodigitalson No。但它给了我整数值。我可以添加这个$condition变量的值。你认为它真的有问题吗必要吗?不,它不工作,我从帖子中得到一个值。$条件是0,1,2,3…我有40个问题,所以它的最后一个值是39…它工作得很好。但是你的编码在某个地方我认为我没有那么重要。不,它不工作,我从帖子中得到一个值。$条件是0,1,2,3…我有40个问题,所以我最后一个值是39…它工作得很好。但是你的编码在某个地方我觉得我没有那么重要。哈哈哈…谢谢你…它工作了…你让我真的很开心…我只是在笑我缺乏知识哈哈…再次感谢你。哈哈哈…谢谢你…它工作了…你让我真的很开心…我只是在笑我的lack的知识哈哈…再次感谢男人。