使用curl将多个附件数组上载到服务器网页
表单数据的html页面如下所示使用curl将多个附件数组上载到服务器网页,curl,post,Curl,Post,表单数据的html页面如下所示 <form name="uploadform" id="uploadform" action="htmlupload.php" enctype="multipart/form-data" method="post"> <table class="tborder" cellpadding="6" cellspacing="1" border="0" width="100%" align="center"> <tr> &l
<form name="uploadform" id="uploadform" action="htmlupload.php" enctype="multipart/form-data" method="post">
<table class="tborder" cellpadding="6" cellspacing="1" border="0" width="100%" align="center">
<tr>
<td class="tcat">
Upload Files
</td>
</tr>
<tr>
<td class="panelsurround" align="center">
<div id="upload" class="panel">
<div style="width:720px" align="left">
<table border="0"><tr>
<td>
<div><input name="attachment[]" type="file"></div>
<div><input name="attachment[]" type="file"></div>
<div><input name="attachment[]" type="file"></div>
<div><input name="attachment[]" type="file"></div>
<div><input name="attachment[]" type="file"></div>
</td>
<td>
<div><input name="attachment[]" type="file"></div>
<div><input name="attachment[]" type="file"></div>
<div><input name="attachment[]" type="file"></div>
<div><input name="attachment[]" type="file"></div>
<div><input name="attachment[]" type="file"></div>
</td>
<td>
<div><input name="attachment[]" type="file"></div>
<div><input name="attachment[]" type="file"></div>
<div><input name="attachment[]" type="file"></div>
<div><input name="attachment[]" type="file"></div>
<div><input name="attachment[]" type="file"></div>
</td>
</tr></table>
</div>
<div style="margin-top:6px">
<input value="6ece14a18366a322c347c71cbfe87420" name="uploadcode" type="hidden" />
<input value="upload" name="do" type="hidden" />
<input value="upload" name="uploadbutton" onclick="onClickVerify();" class="button" type="button" accesskey="s" />
<input type="reset" class="button" value="Reset Fields" accesskey="r" />
</div>
</div>
<div class="panel" id="status" style="display:none;width:100%;">
</div>
</td>
</tr>
</table>
</form>
但是,它不起作用。下面是该网页的图片
请给我一个如何实现这一点的提示,这是一个选择附件的数组,我可以看到,您不发送uploadcode字段值。这可能是你的问题 另外,请注意-d和-F选项之间的区别。后者以多部分/表单数据的形式发送内容,这正是您所需要的
另外,你提供的链接对我不起作用,所以我只是在这里给你一些建议,我自己无法检查。从我看到的情况来看,你没有发送uploadcode字段值。这可能是你的问题 另外,请注意-d和-F选项之间的区别。后者以多部分/表单数据的形式发送内容,这正是您所需要的
另外,你提供的链接对我不起作用,所以我只是在这里给你一些建议,我自己无法核实。要添加到@makeiteasy答案和你的链接,这里有一个工作示例:
# registration
curl -c cookie.txt \
-d "vb_login_username=username&vb_login_password=password&do=login" \
http://f7.masaladesi.com/login.php
# get an upload code value
uploadcode=$(curl -s -b cookie.txt http://f7.masaladesi.com/htmlupload.php | \
awk 'match($0, /value=\"(.*)\" name="uploadcode"/,arr) { print arr[1] }')
# upload request
curl -b cookie.txt -F "attachment[]=@cat.png" \
-F "uploadcode=$uploadcode" -F "do=upload" \
http://f7.masaladesi.com/htmlupload.php
这是:
正在进行注册以设置cookie
要求http://f7.masaladesi.com/htmlupload.php 提取上传代码
使用多部分/表单数据内容执行上载请求
要添加到@makeiteasy answer和您的,以下是一个工作示例:
# registration
curl -c cookie.txt \
-d "vb_login_username=username&vb_login_password=password&do=login" \
http://f7.masaladesi.com/login.php
# get an upload code value
uploadcode=$(curl -s -b cookie.txt http://f7.masaladesi.com/htmlupload.php | \
awk 'match($0, /value=\"(.*)\" name="uploadcode"/,arr) { print arr[1] }')
# upload request
curl -b cookie.txt -F "attachment[]=@cat.png" \
-F "uploadcode=$uploadcode" -F "do=upload" \
http://f7.masaladesi.com/htmlupload.php
这是:
正在进行注册以设置cookie
要求http://f7.masaladesi.com/htmlupload.php 提取上传代码
使用多部分/表单数据内容执行上载请求
我尝试了curl-bcookie.txt-formattachment[]=@1.png-formdo=upload。但是,生成的网页显示上载无效,这意味着上载按钮工作正常,但发送附件时出错。由于该网页是一个论坛,这与创建新线程后单击管理附件按钮相同。您将看到一个在末尾带有“upload”的浏览按钮数组,这是因为您没有像我在回答中所说的那样发送uploadcode值。使用另一个-formuploadcode=。有关值,请参见您的HTML代码。我尝试了curl-bcookie.txt-form attachment[]=@1.png-form do=upload。但是,生成的网页显示上载无效,这意味着上载按钮工作正常,但发送附件时出错。由于该网页是一个论坛,这与创建新线程后单击管理附件按钮相同。您将看到一个在末尾带有“upload”的浏览按钮数组,这是因为您没有像我在回答中所说的那样发送uploadcode值。使用另一个-formuploadcode=。有关值,请参见HTML代码。