16-10-2007 16:41 Запись для support journals отправка с меткой journals.ru и скрипты
Извининяюсь но под кат не убирается :((( см
пример.
//Первая функция
function Post($subj,$body,$date,$tags=null){
require_once('utf.php');
if (isset($tags))
$tags=utf_decode($tags);
$param=array();
$param['s']='';
$param['action']='dopost';
$param['userid']=$this->loader->userid;
$param['title']=utf_decode($subj);
$param['message']=str_replace('&','&',html2bbcode(utf_decode($body)));
$param['usermood']='';
$param['usermood_new']='';
$param['music_new']='';
$param['parseurl']='yes';
$param['disablesmilies']='yes';
// $param['subnewcom']='yes'; /disables
$param['polloptions']=5;
$param['MAX_FILE_SIZE']=184320;
$param['privatepost']= 0;
$param['privatelist']='';
$param['settitle']=implode("\r\n",array_trim(explode(',',$tags)));
$param['post_avatar']=0;
$param['submit']=' Готово ';
if ($this->loader->logged==1){
$this->loader->Post('http://www.journals.ru/newpost.php',$param);
}
return array('url'=>'http://journals.ru/journals.php?userid='.$this->loader->userid);
}
//она вызывает встроенную другую функцию поста
function Post($url, $param)
{
$this->req->clearPostData();
if($this->mycookies)
foreach($this->mycookies as $cookie)
$this->req->AddCookie($cookie['name'],$cookie['value']);
$this->req->setMethod("POST");
foreach($param as $p=>$v)
$this->req->addPostData($p, $v, true);
$this->req->setURL($url);
$this->req->sendRequest();
$res = $this->req->getResponseBody();
$this->mycookies=$this->req->getResponseCookies();
return $res;
}
// Добавление параметров
/**
* Adds postdata items
*
* @param string Post data name
* @param string Post data value
* @param bool Whether data is already urlencoded or not, default = not
* @access public
*/
function addPostData($name, $value, $preencoded = false)
{
if ($preencoded) {
$this->_postData[$name] = $value;
} else {
$this->_postData[$name] = $this->_arrayMapRecursive('urlencode', $value);
}
}
//Формирование. найти быстро не могу, но вот результат:
string(3460) "
POST /newpost.php HTTP/1.1
Host: http://www.journals.ru
User-Agent: Mozilla/4.0
Connection: close
Accept-Encoding: gzip
Accept: application/xhtml+xml,text/html,text/plain
Accept-Language: en-us, en, ru
Content-Type: application/x-www-form-urlencoded
Cookie: bblastvisit=1192538479; bbuserid=20947; bbpassword=*hidden*; sessionhash=*hidden*
Content-Length: 2587
s=&action=dopost&userid=20947&title=Запись для support journals отправка с меткой journals.ru и скрипты&message=[b]//Первая функция[/b]
function Post($subj,$body,$date,$tags=null){
require_once('utf.php');
if (isset($tags))
$tags=utf_decode($tags);
$param=array();
$param['s']='';
$param['action']='dopost';
$param['userid']=$this->loader->userid;
$param['title']=utf_decode($subj);
$param['message']=str_replace('%26','%26',html2bbcode(utf_decode($body)));
$param['usermood']='';
$param['usermood_new']='';
$param['music_new']='';
$param['parseurl']='yes';
$param['disablesmilies']='yes';
// $param['subnewcom']='yes'; /disables
$param['polloptions']=5;
$param['MAX_FILE_SIZE']=184320;
$param['privatepost']= 0;
$param['privatelist']='';
$param['settitle']=implode(%26quot;\r\n%26quot;,array_trim(explode(',',$tags)));
$param['post_avatar']=0;
$param['submit']=' Готово ';
if ($this->loader->logged==1){
$this->loader->Post('http://www.journals.ru/newpost.php',$param);
}
return array('url'=>'http://journals.ru/journals.php?userid='.$this->loader->userid);
}
[b]//она вызывает встроенную другую функцию поста[/b]
function Post($url, $param)
{
$this->req->clearPostData();
if($this->mycookies)
foreach($this->mycookies as $cookie)
$this->req->AddCookie($cookie['name'],$cookie['value']);
$this->req->setMethod(%26quot;POST%26quot;);
foreach($param as $p=>$v)
$this->req->addPostData($p, $v, true);
$this->req->setURL($url);
$this->req->sendRequest();
$res = $this->req->getResponseBody();
$this->mycookies=$this->req->getResponseCookies();
return $res;
}
[b]// Добавление параметров[/b]
/**
* Adds postdata items
*
* @param string Post data name
* @param string Post data value
* @param bool Whether data is already urlencoded or not, default = not
* @access public
*/
function addPostData($name, $value, $preencoded = false)
{
if ($preencoded) {
$this->_postData[$name] = $value;
} else {
$this->_postData[$name] = $this->_arrayMapRecursive('urlencode', $value);
}
}
[b]//Формирование [/b]&usermood=&usermood_new=&music_new=&parseurl=yes&disablesmilies=yes&polloptions=5&MAX_FILE_SIZE=184320&privatepost=0&privatelist=&settitle=скрипты
journals.ru&post_avatar=0&submit= Готово
"
История ПЧ в Journals.ru
[Print] 1 2 3 4 5 6
Lugavchik