2017-10-12 145 views
0

即時通訊新的webhooks,我看到了幾個教程,但我仍然不知道我需要做什麼。我有這個webhooks數據,我需要在PHP中讀取並保存到數據庫。我不會上傳整個列表,所以事情會被遺漏,但webhook列表沒有錯過任何輸入或錯誤的。如何使用PHP將webhook數據存儲到數據庫?

{ 
"TransactionID":0, 
"CustomerID":0, 
"StaffID":0, 
"Barcode":"string", 
[ 
    { 
    "TransactionItemID":0, 
    "TransactionID":0, 
}], 

"MiscProductItems":[], 
"Tenders": 
[ { 
    "TransactionID":0, 
     "TypeID":0, 
}], 
     "BaseItems": 

PHP

我看到了下面的教程,如下面的,但我不知道它做什麼,是不是有「PHP://輸入」?

我想要得到條碼的價值,我該怎麼做?任何幫助將是非常感謝,因爲我有一個頭痛已經試圖找出這一點。

$json = file_get_contents('php://input'); 
$action = json_decode($json, true); 
$action_t = $action->Barcode; 

回答

1

那麼,該字符串不是JSON格式。查找基本的JSON格式here。 JSON必須以對象或地圖的{[作爲列表。沒有辦法,

CompleteTransaction 
{ 

是一個有效的JSON。一個重構的代碼,一個有效的JSON是這樣的:

{ 
"CompleteTransaction": 
{ 
"TransactionID":0, 
"CustomerID":0, 
"StaffID":0, 
"Barcode":"string", 
[ 
    { 
    "TransactionItemID":0, 
    "TransactionID":0, 
}], 

"MiscProductItems":[], 
"Tenders": 
[ { 
    "TransactionID":0, 
     "TypeID":0, 
}], 
     "BaseItems": ".." 
} 
} 

的PHP json_decode函數會返回一個null你。讀取php://input取決於您將擁有哪種類型的內容類型請求標頭。如果標題不是text/plain,php將只能從php://input讀取發佈數據。另外,將json_decode()true作爲第二個參數,它會創建一個array而不是stdObject

+0

謝謝你的答案,我真的需要一些幫助,這im即卡住,我不知道該怎麼做,字符串肯定是json格式。我沒有寫這個,這是來自我需要與之互動的公司。我只是沒有粘貼所有的代碼,因爲它太大了,正如我上面所解釋的。但傳遞字符串json格式。說一切都很好,我如何設法獲得條碼的價值?我一直在嘗試一切,只是失敗了! :( – Luke

+0

我刪除了完整的交易,因爲我不認爲它是在字符串上。 – Luke

+0

Please help!請你必須填寫 – Luke

相關問題