2013-07-22 69 views
3

我已經在StackOverflow的答案here找到我想要如何發佈數據到另一個網址。PHP POST curl終端命令在PHP腳本

但是,我希望這個命令在我的php web腳本中執行,而不是從終端執行。從看捲毛文件,我認爲它應該是沿線:

<?php 

$url = "http://myurl.com"; 
$myjson = "{\"column1\":\"1\",\"colum2\":\"2\",\"column3\":\"3\",\"column4\":\"4\",\"column5\":\"5\",\"column6\":\"6\"}"; 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_POST, TRUE); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $myjson); 
curl_close($ch); 
?> 

這樣做的最佳方法是什麼?

是工作電流端子命令:

curl -X POST -H "Content-Type: application/json" -d '{"column1":"1","colum2":"2","column3":"3","column4":"4","column5":"5","column6":"6"}' https://myurl.com 
+3

你運行該代碼?由於缺少不正確的字符串,您正處於正確的軌道上。 –

+0

我做了,只是爲了確保。它不訪問網址,而我的終端命令正在工作(我添加到問題)。 – AllieCat

+0

好吧,'$ myjson'沒有設置正確...更改第一個和最後一個「for';)(引用正確!) – Eleazan

回答

4

有兩個問題:

  1. 您需要正確引用$myjson。閱讀PHP中single and double quoted strings的區別。
  2. 你是不是送捲曲要求:curl_exec()

這應該你移動在正確的方向:

<?php 
$url = 'http://myurl.com'; 
$myjson = '{"column1":"1","colum2":"2","column3":"3","column4":"4","column5":"5","column6":"6"}'; 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_POST, TRUE); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $myjson); 
$result = curl_exec($ch); 
curl_close($ch); 
+0

非常感謝你的幫助,我簡直不敢相信我忘了! – AllieCat