未格式化的文本来自php://input

未格式化的文本来自php://input,php,xml,post,Php,Xml,Post,我正试图从中提取数据php://input 这样我就可以将原始数据存储到XMLElement中,然后对其进行排序,并将数据与我的一个数据库中的表进行比较。我也尝试过使用$\u POST并存储它,但是我在使用$\u POST时遇到的问题是,我没有获取字段标题,因此无法存储数据 我目前正在使用此代码从http POST检索原始数据 $PostContents = file_get_contents(php://input); echo $PostContents; 这是从该代码返回的数据 xml=

我正试图从中提取数据php://input 这样我就可以将原始数据存储到XMLElement中,然后对其进行排序,并将数据与我的一个数据库中的表进行比较。我也尝试过使用$\u POST并存储它,但是我在使用$\u POST时遇到的问题是,我没有获取字段标题,因此无法存储数据

我目前正在使用此代码从http POST检索原始数据

$PostContents = file_get_contents(php://input);
echo $PostContents;
这是从该代码返回的数据

xml=%3COPS%3E+%0D%0A%3CAuthentication%3E%3CSecretKey%3Ex44%3C%2FSecretKey%3E+%0D%0A%3C%2FAuthentication%3E+%0D%0A%3CAction%3EUpdate+Person+Status%3C%2FAction%3E+%0D%0A%3CUpdatePersonStatus%3E+%0D%0A%3CPerson%3E+%0D%0A%3CName%3EDavid%3C%2FOrderNumber%3E+%0D%0A%3CAge%3EShipped%3C%2FOrderStatus%3E+%0D%0A%3CAddress%3EThird+Party%3C%2FAddress%3E+%0D%0A%3CPhone%3EUPS+Grd%3C%2FPhone%3E+%0D%0A%3C%2FPerson%3E%0D%0A%3C%2FUpdatePersonStatus%3E+%0D%0A%3C%2FOPS%3E+%0D%0A
下面是生成该输出的内容

<html> 
<body> 
<form action="http://172.16.100.116/php.php" method="post"> 
<textarea name="xml" rows="20" cols="40"><OPS> 
<Authentication><SecretKey>x44</SecretKey> </Authentication> 
<OPS> 
<Authentication><SecretKey>x44</SecretKey> 
</Authentication> 
<Action>Update Person Status</Action> 
<UpdatePersonStatus> 
<Person> 
<Name>David</Name> 
<Age>21</Age> 
<Address>123EasyStreet</Address> 
<Phone>6666666666</Phone> 
</Person>
</UpdatePersonStatus> 
</OPS> 
</textarea> 
<input type=submit> 
</form> 
</body> 
</html>

x44
x44
更新个人状态
大卫
21
123EasyStreet
6666666666
(此处使用的html文件严格用于测试目的,通过的数据在加上标题xml信息的范围内。)


所以我的问题是,我需要做什么才能从数据库中获取数据php://input“)转换为XML,以便我可以对其信息进行排序?

您应该使用urldecode并删除
XML=

urldecode($PostContents)

这就是结果

<OPS> 
<Authentication><SecretKey>x44</SecretKey> 
</Authentication> 
<Action>Update Person Status</Action> 
<UpdatePersonStatus> 
<Person> 
<Name>David</OrderNumber> 
<Age>Shipped</OrderStatus> 
<Address>Third Party</Address> 
<Phone>UPS Grd</Phone> 
</Person>
</UpdatePersonStatus> 
</OPS>

x44
更新个人状态
大卫
装船
第三方
UPS Grd

熟悉urldecode、htmlspecialcharacters等。这些函数旨在简化生活:我尝试使用htmlspecialchars(),但没有得到我想要的输出,但是我仍然没有得到他列出的输出,而是得到了这个<代码>更新人员状态David Shippe第三方UPS Grd
我仍然无法获取和查看源代码。你看不到这些标签,因为浏览器没有显示这些标签。在这里,我想我对html有点了解,我没有停下来想一想。谢谢你,很高兴知道数据是按照我想要的方式存在的。你会掌握窍门的,当你掌握窍门的时候,一定要帮我解决问题