将Post数据添加到XML String

时间:2015-06-16 09:54:44

标签: php xml post

我从以下表单收集数据:

$title = $_POST["title"];
$fname = $_POST["first_name"];
$surname = $_POST["surname"];

我想要构建一个XML String并添加上面的帖子数据。我尝试了以下,但没有一个有效。它必须使用“”双引号!

$XPost = '
<MinPrice>$_POST["first_name"]</MinPrice>
';

$XPost = '
<MinPrice>"<![CDATA[$fname]]"></MinPrice>
';

任何人都可以提供帮助。它必须使用“”双引号!

完整示例:

$strXml = '<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<SubmitLead xmlns="https://test.com.co.uk/webservicerequest/">
<Address1>'.{$_POST['Address1']}.'</Address1>
';

2 个答案:

答案 0 :(得分:0)

您需要添加“围绕价值而非单身”。

$XPost = "<MinPrice>{$_POST['first_name']}</MinPrice>";

用dobule引用你可以做到这一点

$XPost = "<MinPrice>".$_POST["first_name"]."</MinPrice>";

像这样更改你的代码。

$strXml = '<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<SubmitLead xmlns="https://test.com.co.uk/webservicerequest/">
<Address1>' . $_POST['Address1'] . '</Address1>
';

答案 1 :(得分:0)

试试这段代码......

<?php
$simple = "<para><note>echo $_POST['first_name']</note></para>";
$p = xml_parser_create();
xml_parse_into_struct($p, $simple, $vals, $index);
xml_parser_free($p);
echo "Index array\n";
print_r($index);
echo "\nVals array\n";
print_r($vals);
?>

参考xml parse