2009-06-26 18 views
2

我目前正在使用API​​,需要我們使用發佈請求將我們的收集詳細信息以xml發送到他們的服務器。使用PHP存儲發佈請求的結果

沒有什麼大不了,但它沒有工作,所以我想輸出發送到XML文件,所以我可以看看實際發送什麼!

而不是發佈到API im發佈到稱爲目標的文檔,但它輸出其記錄的xml似乎是錯誤的。這是我的目標腳本,請注意,發佈腳本發佈3個項目,因此正在編寫的文件應該包含每個發佈請求的詳細信息。

<?php 

error_reporting(E_ALL); 
ini_set('display_errors', 1); 

// get the request data... 
$payload = ''; 
$fp = fopen('php://input','r'); 
$output_file = fopen('output.txt', 'w'); 
while (!feof($fp)) { 
    $payload .= fgets($fp); 
    fwrite($output_file, $payload); 
} 

fclose($fp); 
fclose($output_file); 
?> 

我也試過以下,但這個剛剛錄製的最後一個職位的要求所以只有1個集項目被記錄在txt文件,而不是所有3

output_file = fopen('output.txt', 'w'); 
while (!feof($fp)) { 
    $payload .= fgets($fp); 
} 
fwrite($output_file, $payload); 
fclose($fp); 
fclose($output_file); 

我知道我在想念的東西真的顯而易見,但我一直都在看這個早上!

+0

你不應該使用的fopen( 'output.txt的', 'A'); - >追加標誌不寫入標誌。否則你覆蓋文件。沒有? – jitter 2009-06-26 09:30:44

+0

是的,這個問題,告訴你我無法看到它的樹!這是一個漫長的早晨。發佈它作爲答案,你已經得到了你的正確答案勾號:) – 2009-06-26 09:41:04

回答

0

變化

$output_file = fopen('output.txt', 'w'); 

$output_file = fopen('output.txt', 'a'); 

另外,更改

$payload .= fgets($fp); 

$payload = fgets($fp); 
0

你應該使用捲曲,而不是獲取內容,然後通過的fwrite寫

0

變化

$payload .= fgets($fp); 

$payload = fgets($fp); 
相關問題