http://www.phpogreniyorum.com/post.rar
Kodları Download Edebilirsiniz...
//tris_config.php
kodları inceleyin arkadaşlar anlayacaksınız zaten projelerinizde kullanırsınız belki
ayrıca diyelimki forumda su sekilde bir soru soruyor size reply yapmak veya konu açmak için
soru | Siteye cevap yazmak için 5*10
soru | Siteye cevap yazmak için 5/10/5
soru | Siteye cevap yazmak için 5+10-500
soru | Siteye cevap yazmak için 5+10-50+14/20
bu tarz sorulara otomatik cevap verir
ama şu şekil sorulara
Fransanın başkenti nere
bu tarz soruları veritabanına eklemeniz gerekmekte
ayrıca
0 olarak bırakırsanız sadece konu açar
1 yaparsanız konuya sadece reply yani cevap atar
eksikler olabilirs geliştirebilirsiniz...
unutmadan sql
unuttum yazmayı (mesajjjjj) yazan kısıma gönderimi yapın arkadaşlar ben testlerde böyle kullanmıştım
timeout değerlerini 3 yapmanız ideal bence siz bilirsniiz..
geliştirmeyi bıraktım işi bilen arkadaşlar kendilerine göre editler zaten... şu olmadı bunu yapmadım vs.. gibi sorular sormayın bu cümleyede kızmayın lütfen fırsatım olsa zaten tam anlamı ile geliştirir veriridim bilen arkadaşlardan destek alabilirsiniz
Kodları Download Edebilirsiniz...
PHP:
include("tris_config.php");
class poster {
public function hesap($islem)
{
$sonuc = preg_replace('~([^0-9])~', ')$1', join($islem[0]));
$sonuc = str_repeat('(', count(preg_split('~[0-9]+~', $sonuc)) - 1) . $sonuc . ")";
eval('$sonuc = '.$sonuc.';');
return $sonuc;
}
public $login ="login.php?do=login",$index = "index.php",$data = array(),$reply = "newreply.php?do=newreply&noquote=1&p=",$theread = "newthread.php?do=newthread&f=";
public function VB (){
if(!file_exists(dirname(__FILE__).$this->data[0]['bilgiler']['klasor'])){
mkdir(dirname(__FILE__).$this->data[0]['bilgiler']['klasor']);}
if(!file_exists(dirname(__FILE__).$this->data[0]['bilgiler']['klasor'].$this->data[0]['bilgiler']['cerez'])){}
$a = (substr($this->data[0]['bilgiler']['domain'], strlen($this->data[0]['bilgiler']['domain'])-1) == "/")?$this->data[0]['bilgiler']['domain']:$this->data[0]['bilgiler']['domain']."/";
$bullet = curl_init();
curl_setopt_array($bullet,$this->data[0]['curl']);
curl_setopt($bullet,CURLOPT_URL,$a.$this->index);
curl_setopt($bullet,CURLOPT_POST,1);
curl_setopt($bullet,CURLOPT_POSTFIELDS,$this->data[0]['bilgiler']);
$exec = curl_exec($bullet);//index.php
preg_match('/securitytoken" value="(.*?)"/',$exec,$securitytoken);
curl_setopt($bullet , CURLOPT_URL,$a.$this->login);
curl_setopt($bullet , CURLOPT_POST, TRUE);
$md = md5($this->data[0]['bilgiler']['password']);
curl_setopt($bullet , CURLOPT_COOKIEJAR, dirname(__FILE__).$this->data[0]['bilgiler']['klasor'].$this->data[0]['bilgiler']['cerez']);
curl_setopt($bullet , CURLOPT_COOKIEFILE, dirname(__FILE__).$this->data[0]['bilgiler']['klasor'].$this->data[0]['bilgiler']['cerez']);
curl_setopt($bullet , CURLOPT_POSTFIELDS, 'cookieuser=1&vb_login_username='.$this->data[0]['bilgiler']['username'].'&vb_login_password='.$this->data[0]['bilgiler']['password'].'&s=&vb_login_md5password='.$md.'&vb_login_md5password_utf='.$md.'&securitytoken='.$securitytoken[1].'&do=login');
$exec = curl_exec($bullet);
curl_setopt($bullet , CURLOPT_POST, FALSE);
if($this->data[0]['bilgiler']['option']){
curl_setopt($bullet,CURLOPT_URL,$a.$this->theread.$this->data[0]['bilgiler']['boardid']);
}else{
curl_setopt($bullet,CURLOPT_URL,$a.$this->reply.$this->data[0]['bilgiler']['topic']);
}
$exec = curl_exec($bullet);
preg_match_all('/name="securitytoken" value="(.*?)"/',$exec, $istekler[]);
preg_match('/<input type="hidden" name="do" value="post(.*?)"/',$exec, $istekler[]);
preg_match('/name="iconid" value="(.*?)"/',$exec, $istekler[]);
preg_match('/name="loggedinuser" value="(.*?)"/',$exec, $istekler[]);
preg_match('/sname="multiquoteempty" id="multiquote_empty_input" value="(.*?)"/',$exec, $istekler[]);
preg_match('/name="p" value="(.*?)"/',$exec, $istekler[]);
preg_match('/name="parseurl" value="(.*?)"/',$exec, $istekler[]);
preg_match('/name="posthash" value="(.*?)"/',$exec, $istekler[]);
preg_match('/name="poststarttime" value="(.*?)"/',$exec, $istekler[]);
preg_match('/name="s" value="(.*?)"/',$exec, $istekler[]);
preg_match('/name="sbutton" id="vB_Editor_001_save" value="(.*?)"/',$exec, $istekler[]);
preg_match('/name="specifiedpost" value="(.*?)"/',$exec, $istekler[]);
preg_match('/id="subscribe" name="subscribe" tabindex="1" class="dep_ctrl" value="(.*?)"/',$exec, $istekler[]);
preg_match('/name="t" value="(.*?)"/',$exec, $istekler[]);
preg_match('/name="wysiwyg" id="vB_Editor_001_mode" value="(.*?)"/',$exec, $istekler[]);
preg_match('/<label for="humanverify">(.*?)</label>/',$exec, $istekler[]);
preg_match('/<p class="description">(d.*)</p>/',$exec, $istekler[]);
preg_match('/name="humanverify[hash]" value="(.*?)"/',$exec, $istekler[]);
preg_match('/name="emailupdate" tabindex="(.*?)"/',$exec, $istekler[]);
preg_match('/charset=(.*?)"/',$exec, $istekler[]);
if($istekler[16][1] == ""){
if(preg_match('/(d)/',$istekler[15][1],$varmi)){
preg_match_all('/([0-9+])/',$istekler[15][1],$islem);
$cevap = $this->hesap($islem);
}elseif(preg_match('/((.*?))/',$istekler[15][1],$islem)>0){
$sorgu = $istekler[15][1];
$soru = mysql_fetch_object(mysql_query("select * from tris_sorular where soru = '$sorgu'"));
$cevap = $soru->cevap;
}else{
$sorgu = $istekler[15][1];
$soru = mysql_fetch_object(mysql_query("select * from tris_sorular where soru = '$sorgu'"));
$cevap = $soru->cevap;
}
}else{
preg_match_all('/(d.*W.*)/',$istekler[16][1], $islem);
$cevap = $this->hesap($islem);
}
if(count($istekler[0][1] > 1)){
$sec = $istekler[0][1][1];
}else{
$sec = $istekler[0][1][0];
}
$PostData = array(
"do" => "post".$istekler[1][1],
"emailupdate" => $istekler[18][1],
"humanverify[hash]" => $istekler[17][1],
"humanverify[input]" => $cevap,
"iconid" => $istekler[2][1],
"loggedinuser" => $istekler[3][1],
"message" => iconv("utf-8","ascii//translit","mesajjjjj"),
"multiquoteempty" => "",
"p" => $istekler[5][1],
"parseurl" => $istekler[6][1],
"posthash" => $istekler[7][1],
"poststarttime" => $istekler[8][1],
"s" => $istekler[9][1],
"sbutton" => $istekler[10][1],
"securitytoken" => $sec,
"specifiedpost" => $istekler[11][1],
"subscribe" => $istekler[12][1],
"t" => $istekler[13][1],
"subject" => "Hiiii",
"title" => "",
"wysiwyg" => $istekler[14][1]);
if($this->data[0]['bilgiler']['option']){
curl_setopt($bullet, CURLOPT_URL,$a."newthread.php?do=postthread&f=".$this->data[0]['bilgiler']['boardid']);
curl_setopt($bullet, CURLOPT_POSTFIELDS,$PostData);
}else{
curl_setopt($bullet, CURLOPT_URL,$a."newreply.php?do=postreply&t=".$istekler[13][1]);
curl_setopt($bullet, CURLOPT_POSTFIELDS,$PostData);}
echo $exec = curl_exec($bullet);
}}
$a = new poster();
array_push($a->data,
array("bilgiler" =>array(
"domain" => "domain.com", //DOMAİN sonuan / koymanız gerekmez koysanızda sorun olmaz
"username" => "username", //Kullanıcı Adınız
"password" => "password", //Şifreniz
"klasor" => "/kayitlar", //Cookie Oluşturulacak Klasör Adı
"cerez" => "/cookie.txt", //Cookielerin Yazılacağı Dosya Adı
"topic" => "4733397", //Sitedeki Topic Numaranız
"boardid" => 0, //Konu Acmak İstiyorsanız Forumdaki Kategori Numarası
"option" => 0), // 0 Kalırsa burası Belirttiğiniz Sitede Konu Açar 1 Yaparsanız Konu Yerine Reply Moduna Geçer
"curl" =>array(
//CURL ayarları Sabit Kalsın Dokunmayın
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => FALSE,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_USERAGENT => "Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1",
CURLOPT_CONNECTTIMEOUT => 120,
CURLOPT_TIMEOUT => 120,
CURLOPT_COOKIEFILE => 1)));
//CURL ayarları Bitiş
$a->VB();
//tris_config.php
PHP:
//Kişisel Web Sitesi http://www.phpogreniyorum.com
$localhost = "localhost";
$dbuser = "root";
$dbpass = "123456789";
$database = "poster";
$baglan = mysql_connect($localhost,$dbuser,$dbpass) or die ("Kullanıcı Adı Veya Şifre Yalnış");
$vt= mysql_select_db($database) or die("<font color='red'><b> $database </b> </font> Ad?nda Veritaban? Yok");
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET COLLATION_CONNECTION = 'utf-8'");
kodları inceleyin arkadaşlar anlayacaksınız zaten projelerinizde kullanırsınız belki
ayrıca diyelimki forumda su sekilde bir soru soruyor size reply yapmak veya konu açmak için
soru | Siteye cevap yazmak için 5*10
soru | Siteye cevap yazmak için 5/10/5
soru | Siteye cevap yazmak için 5+10-500
soru | Siteye cevap yazmak için 5+10-50+14/20
bu tarz sorulara otomatik cevap verir
ama şu şekil sorulara
Fransanın başkenti nere
bu tarz soruları veritabanına eklemeniz gerekmekte
ayrıca
PHP:
"option" => 0),
PHP:
"option" => 1),
eksikler olabilirs geliştirebilirsiniz...
unutmadan sql
PHP:
CREATE TABLE `sorular` (
`id` int(11) NOT NULL auto_increment,
`soru` text character set utf8 collate utf8_bin NOT NULL,
`cevap` text character set utf8 collate utf8_bin NOT NULL,
`forum` text character set utf8 collate utf8_bin NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
timeout değerlerini 3 yapmanız ideal bence siz bilirsniiz..
geliştirmeyi bıraktım işi bilen arkadaşlar kendilerine göre editler zaten... şu olmadı bunu yapmadım vs.. gibi sorular sormayın bu cümleyede kızmayın lütfen fırsatım olsa zaten tam anlamı ile geliştirir veriridim bilen arkadaşlardan destek alabilirsiniz