2012-07-26 119 views
0

情况如下。我必须将一个已定义的XML发送到带有一些我必须预先定义的变量的URL http:\\www.example.com:1234通过PHP远程URL发送XML文件

XML是这样的:

<Title1> 
<Title2>Some Text</Title2> 
<Title3>Variable 1</Title3> 
<Title4>Some Text</Title4> 
<Title5> 
    <Title51>Variable 2</Title51> 
</Title5> 
</Title1> 

但是,我想要定义的变量(1,2)的HTML/PHP的表单中,并得到方法,使用户可以引入两个变量,然后点击从表单的提交按钮将XML发送到以前的URL。

此外,XML应具有"Content-Type","application/x-www-form-urlencoded"标头。

这可能吗?我试图将这些变量直接传递给XML,并且最好的是显示XML而不解析php字符串。

另外,我已经尝试了一些脚本,如PHP类中的simplexml,但目前还没有运气。

+0

你们是不是要修改现有的XML文件(或创建新的文件),与PHP的$ _GET []获得的新价值观 – Makesh 2012-07-26 11:31:24

+0

@Makesh - 我试图修改现有的xml文件,如果可以通过它自己传递这些值。否则,我不会抱怨,如果有可能创建一个新的新的XML与这些值预先加载。 – AleksanderKseniya 2012-07-30 11:57:58

回答

0

1)用新值修改现有的XML。试试这个

sample.xml中

<Title1> 
    <Title2>Some Text</Title2> 
    <Title3>Variable 1</Title3> 
    <Title4>Some Text</Title4> 
    <Title5> 
     <Title51>Variable 2</Title51> 
    </Title5> 
</Title1> 

PHP:

$xml = simplexml_load_file("sample.xml"); 
$xml->Title3 = $_GET['t3'];    // Updating <Title3></Title3> from GET method 
$xml->Title5[0]->Title51 = $_GET['t5']; // Updating <Title51></Title51> from GET method 
$xml->asXML('sample.xml');    // saving the xml file 

2)要创建新的XML文件(sample.xml中):

PHP:

$xml = new SimpleXMLElement("<Title1></Title1>"); 
$xml->Title2='Some Text'; 
$xml->Title3 = $_GET['t3']; 
$xml->Title4='Some Text'; 
$xml->Title5[0]->Title51 = $_GET['t5']; 
$xml->asXML('sample.xml');    // saving the xml file 

我已经向您展示了在评论中提到的两种可能性。使用它的人安慰你:)