首页 文章

$ _POST为空,但php://输入显示存在的值[重复]

提问于
浏览
2

这个问题在这里已有答案:

我目前正在尝试实现一个将数据发布为“multipart / form-data”的系统,我通过php://输入接收数据,如下所示:

[
   {
      "id":"595944535043",
      "companyProfileID":"",
      "accountID":"",
      "ownerID":"",
      "importID":"",
      "avatarUrl":"https://d2ojpxxtu63wzl.cloudfront.net/static/a9b1a30bbf8148445118d0d70ebd4a01_16edde90d640c6ee84a1874a4dbb3cdc816bc9e94ec6a23efc885e59947b28ab",
      "companyName":"",
      "title":"",
      "firstName":"Madison",
      "lastName":"Test",
      "street":"",
      "city":"",
      "country":"",
      "state":"",
      "zipcode":"",
      "emailAddress":"email@email.com",
      "website":"",
      "phoneNumber":"",
      "officePhoneNumber":"",
      "phoneNumberExtension":"",
      "mobilePhoneNumber":"",
      "faxNumber":"",
      "description":"",
      "campaignID":"",
      "crmLeadID":"",
      "crmOpportunityID":"",
      "crmAccountID":"",
      "crmContactID":"",
      "crmOwnerID":"",
      "crmThirdPartyID":"",
      "formGUID":"",
      "trackingID":"",
      "leadSource":"",
      "industry":"",
      "active":"1",
      "isQualified":"",
      "isContact":"1",
      "isCustomer":"0",
      "hasOpportunity":"0",
      "lastActivityDate":"2018-06-08 15:04:10",
      "updateTimestamp":"2018-06-17 09:25:39",
      "updateUserProfileID":"0",
      "createTimestamp":"2018-06-08 14:04:10",
      "createUserProfileID":"313407940",
      "leadStatus":"contact",
      "persona":"",
      "services_5addf517bd49b":""
   }
]

但是,当我尝试通过$ _POST访问任何这些细节时,它不会返回任何内容 . 快速检查表明$ _POST实际上是空的 .

我已经用尽了这个问题的所有选项php $_POST array empty upon form submission

这一个PHP some $_POST values missing but are present in php://input

将我的max_input_vars更改为10000,post_max_size为1G . 试过JSON解码解决方案,parsestr解决方案,什么都没有 .

所以只是想知道是否有人可以提供帮助?

由于数据是嵌套的,因此不是重复的问题 . 与堆栈溢出的先前问题不同

2 回答

  • 0

    增加php.ini中的 postmaxsize 变量被设置为高于机器中的物理RAM量也使用 M 后缀而不是 MB

  • 0

    哇所以我设法搞清楚了 .

    我通过php://输入获取了POST数据,并使用数据创建了一个JSON变量 . 然后经过一些测试,我试着看看在执行 $posted_data = json_decode(file_get_contents("php://input")); 之后是否将其视为嵌套数组 .

    所以我使用以下方法调用数据:

    $posted_data[0]->emailAddress
    

    这有用......希望这可以帮助将来的任何人,并节省我浪费的时间:)

相关问题