2012-07-26 116 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 

我已經向您展示了在評論中提到的兩種可能性。使用它的人安慰你:)