Php 使用cURL发布textarea表单
我如何发布textarea表单Php 使用cURL发布textarea表单,php,forms,curl,textarea,submit,Php,Forms,Curl,Textarea,Submit,我如何发布textarea表单 <form method="post" action="/user/test/shoutbox/add" id="shoutPost" class="clearit"> <input name="formtoken" type="hidden" value="852f8fde54190fa5f9aa47172d492f829c1b"/> <input type="hidden" name="backto" value="/user/t
<form method="post" action="/user/test/shoutbox/add" id="shoutPost" class="clearit">
<input name="formtoken" type="hidden" value="852f8fde54190fa5f9aa47172d492f829c1b"/>
<input type="hidden" name="backto" value="/user/test/shoutbox" />
<textarea id="shoutmsg" name="message"></textarea>
<input type="submit" name="submit" class="confirmButton" value="Post" id="sbPost" />
但是由于某种原因它没有发布…忘记了curl\u exec
curl_exec($ch);
$msg从哪里来?您的文本区域有name=“message”,请尝试将$msg更改为$\u POST['message']否,我有所有这些。我只是发布了postfields,看看我是否做错了。除了textarea之外,其他所有字段都发布了吗?没有。令牌本身带有页面加载。您是在尝试将数据发布到具有该表单的页面,还是从编译后的表单获取结果?$msg只是“测试”。它是顶部的一个变量。
curl_setopt($ch, CURLOPT_REFERER,"URLHERE");
curl_setopt($ch, CURLOPT_URL,"URLHERE");
curl_setopt($ch, CURLOPT_POST, 0);
$page = curl_exec($ch);
$formtoken = explode('name="formtoken" type="hidden" value="',$page);
$formtoken = explode('"/> ',$formtoken[1]);
$formtoken = $formtoken[0];
$backto = explode('type="hidden" name="backto" value="',$page);
$backto = explode('" />',$backto[1]);
$backto = $backto[0];
curl_setopt($ch, CURLOPT_COOKIEFILE, "/tmp/cookiejar-$randnum");
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($ch, CURLOPT_URL,"URLHERE");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_POST, 1);
$postfields = "formtoken=".$formtoken;
$postfields .= "&backto=".$backto;
$postfields .= "&message=".$msg;
$postfields .= "&submit=Post";
curl_setopt($ch, CURLOPT_POSTFIELDS,$postfields);
$page = curl_exec($ch);
curl_setopt($ch, CURLOPT_REFERER,"URLHERE");
curl_setopt($ch, CURLOPT_URL,"URLHERE");
curl_setopt($ch, CURLOPT_POST, 0);
$page = curl_exec($ch);
$formtoken = explode('name="formtoken" type="hidden" value="',$page);
$formtoken = explode('"/> ',$formtoken[1]);
$formtoken = $formtoken[0];
$backto = explode('type="hidden" name="backto" value="',$page);
$backto = explode('" />',$backto[1]);
$backto = $backto[0];
curl_setopt($ch, CURLOPT_COOKIEFILE, "/tmp/cookiejar-$randnum");
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($ch, CURLOPT_URL,"URLHERE");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_POST, 1);
$postfields = "formtoken=".$formtoken;
$postfields .= "&backto=".$backto;
$postfields .= "&message=".$msg;
$postfields .= "&submit=Post";
curl_setopt($ch, CURLOPT_POSTFIELDS,$postfields);
$page = curl_exec($ch);