PHP simplexml_load_string включает данные поля формы - php
0
У меня есть форма на странице PHP. Все, что я пытаюсь сделать, это проанализировать некоторые XML, введенные в эту форму (COMMAND) с помощью simplexml_load_string
, вот тестовый код:
<?php
if($_POST){
$Input = $_GET[COMMAND];
$Data =<<<XML
<?xml version="1.0" encoding="ISO-8859-1"?> .
$Input .XML;
$xml = simplexml_load_string($Data);
var_dump($xml);
}
else
}
echo WTF!
}
?>
<form id="form1" name="form1" method="post" action="index.php">
<textarea name="COMMAND" id="COMMAND" cols="45" rows="5">
<API>
<COMMAND>Test</COMMAND>
</API>
</textarea>
<input type="submit" name="button" id="button" value="Submit" />
</form>
это ошибка, которую я получаю:
Ошибка анализа: синтаксическая ошибка, неожиданный $end в /var/www/cgi/index.php в строке 24
Я думаю, что это имеет какое-то отношение к моей слабой попытке конкатенации.
Источник
- 18
- 2
- 23 апр 2020 2020-04-23 08:22:18
- Anonymous
2 ответа
0
В дополнение к тому, что написал hobodave, вам не хватает; на вашем
echo WTF!;
строка
- 23 апр 2020 2020-04-23 08:22:18
- Rob Booth
1
У вас есть закрывающая скобка, где вы хотите открыть скобу:
}
else
} // <- BAD!
echo WTF!
}
Вы хотите:
}
else
{ // <- GOOD!
echo WTF!
}
Это личный выбор, но я рекомендую следовать стандарт PEAR для кодирования PHP. Ваш код будет выглядеть как:
if (...) {
} else {
}
Делает намного легче поймать эти злые брекеты!
- 23 апр 2020 2020-04-23 08:22:18
- hobodave