当前位置: 首页 > 知识库问答 >
问题:

PHP cURL提交POST数据,多部分/表单数据混乱

赵晨
2023-03-14

所以我有一个网站,我正在建设,它将使用数据库中的数据来填写不同网站上的表格。现在我明白了,这可以很容易地用cURL或python来完成,但是,当我截取和读取post数据时,通常会非常混乱。例如,在此表单中,只有注释和分级选项,但包含所有类型的其他垃圾:

-----------------------------122061295120255
Content-Disposition: form-data; name="StylesheetManager_TSSM"

--------------------------------122061295120255 内容-配置:形式-数据;name=“scriptmanager_tsm”

DNN$CTR459$ViewNukenews$CTL00$CTLViewNewsComments$LBSaveCommentsrating --------------------------------122061295120255 内容-配置:形式-数据;name=“__eventargument”

--------------------------------122061295120255 内容-配置:形式-数据;name=“__viewstate”

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 --------------------------------122061295120255 内容-配置:形式-数据;name=“__ViewStateGenerator”

CA0B0334 --------------------------------122061295120255 内容-配置:形式-数据;name=“__viewstateencrypted”

--------------------------------122061295120255 内容-配置:形式-数据;name=“__EventValidation”

Ta4egr1xgh239z393i4ichepufys10bieg4ym9fzu0aldt7h4ywecsfxkjtzx7fhwn9wdnom4a+npf+qka4hzepbfm3zrotmorkezcm61am+pbzgaqqhqjmpppsdht3t6k8nkeqqkuiyfkbbxkpx4gtyyck0s3uplqfr8klie6ntakt0qph5cjc0gzvrmbz7sfu+/vs+37gru3yarzwmelkqrnyutt9wjc5beuuxcnbm6r2zdeb8onqnpzr2klnt8ep+x5+wsj9q738h7jx5P2rcneqmh6mk1wavm5rqzo8jtfdtq6da7pai9umj89vq+lxlf/6br9vlpek1cozy9ny4xdzr8xksvuycujyq= --------------------------------122061295120255 内容-配置:形式-数据;name=“dnn$dnnsearch$txtsearch”

--------------------------------122061295120255 内容-配置:形式-数据;name=“DNN$CTR459$ViewNukenews$CTL00$CTLViewNewsComments$rblrating”

3 --------------------------------122061295120255 内容-配置:形式-数据;name=“DNN$CTR459$ViewNukenews$CTL00$CTLViewNewsComments$TBComments”

评论在这里 --------------------------------122061295120255 内容-配置:形式-数据;name=“Scrolltop”

function post_data($site,$data){
    $datapost = curl_init();
    $headers = array("Content-Type: multipart/form-data; boundary=---------------------------86732602411937");
    curl_setopt($datapost, CURLOPT_URL, $site);
    curl_setopt($datapost, CURLOPT_TIMEOUT, 40000);
    curl_setopt($datapost, CURLOPT_HEADER, TRUE);
    curl_setopt($datapost, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($datapost, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
    curl_setopt($datapost, CURLOPT_POST, TRUE);
    curl_setopt($datapost, CURLOPT_POSTFIELDS, $data);
    curl_setopt($datapost, CURLOPT_COOKIEFILE, "cookie.txt");
    ob_start();
    return curl_exec ($datapost);
    ob_end_clean();
    curl_close ($datapost);
    unset($datapost);
}

共有1个答案

郎飞龙
2023-03-14

我以前处理过这些类型的表格。他们是一个痛苦。我所做的是:

  1. 卷曲页面,没有文章数据或任何内容
  2. 解析HTML以获取表单元素及其当前值
  3. 更改需要设置的字段的值
  4. 将所有内容格式化为一个数组以供发布
  5. 用该帖子数据再次卷曲页面。

哦,有时需要将像__EventType这样的字段设置为所需事件的特定字符串。为了帮助分解第二个卷曲应该是什么样子,使用Chrome开发人员工具查看解析好的请求。你甚至可以把它复制成卷曲。

 类似资料:
  • 问题内容: 我正在尝试通过带有POST请求的照片上传 根据自述文件,我应该能够做到这一点 问题是,这不起作用。我收到测试服务器的回复,说它转储了0个post变量。 我已经确认该HTML小页面服务器处于工作状态 所以问题是,请求模块在做什么?有没有更好的方法来发送节点? 问题答案: 经过更多研究后,我决定使用。这使得分段上传非常容易。

  • 我试图将表单数据从多部分/表单数据发送到我的AWS Http Body Mapping Templates web服务。 HTTP POST请求(使用postman)具有内容类型“multipart/form-data”,正文是带有3个键值内容的form-data,其中一个是file。 如果我直接调用httpendpoint(而不是通过API网关)--使用postman或mobile,它会按预期工

  • 在使用ajax提交多部分/表单数据时,我遇到了一个问题。 HTML代码: jQuery和Ajax: 以及文件输入为空的请求: -----------------------------65942623427134内容-处置:表单-数据;名称="id_noticia" 336-----------------65942623427134内容配置:表单数据;name=“foto[]”;filename

  • 本文向大家介绍AJAX提交表单数据实例分析,包括了AJAX提交表单数据实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了AJAX提交表单数据的方法。分享给大家供大家参考。具体如下: 遍历表单各元素,将参数值组织成JSON格式 这里对CheckBox复选框做了特殊处理,后台接收到的该值为所有复选框值用逗号的拼接 AJAX的调用: 谈到服务器端返回的JSON格式数据,支持如下格式 前端调

  • 问题 尝试发送一个包含文件上传和JSON中模型数据的多部分/表单数据post请求。不知道为什么没有太多的工作参考资料,无法使现有的参考资料发挥作用。也可能是做错了什么,或者使事情变得更复杂。 裁判试过了 使用angular js在同一请求中上载文件和json数据 关于边界和多部分的一个很好的解释 一些这样的问题 快速调整我的尝试 问题 不知何故,我的post请求负载上的json内容似乎不包含内容类

  • 通常,我需要通过JSOUP将数据以响应multipart/form-data的形式发送到站点 作为一个示例,使用一个简单的窗体来sgeniriruet您的查询。 <表单操作=«localhost:8000»方法=«post»enctype=»多部分/表单数据» <输入类型=»文本»名称=»文本»值=»文本默认值» <输入类型=»文件»名称=»文件1» <输入类型=»文件»名称=»文件2» 提交 通