Merhaba,

arkadaşlar video çekerken aşağıdaki hatayı veriyor resim ve haber çekiyor video çekemiyorum kontrol edebilir misiniz rica etsem.

hata

[23-Apr-2017 12:12:33 UTC] PHP Warning: array_search() expects parameter 2 to be array, null given in /home/edirnehaber/public_html/starBot/Bot.class.php on line 254


bot.class.php
<?php 
include "../db_ayar.php";
include "xml.php";

class Bot {
	public function __construct(){
		global $dbhost, $dbuser, $dbpass, $dbdata;
			
		try{
			$this->baglan = new PDO("mysql:host=$dbhost;dbname=$dbdata;charset=utf8", $dbuser, $dbpass);
		} catch(PDOException $e){
			echo $e->getMessage();
		}
		
		$logDBKontrol = $this->baglan->prepare("SHOW TABLES LIKE 'botLog'");
		$logDBKontrol->execute();
		$logDBVeri = $logDBKontrol->fetch(PDO::FETCH_ASSOC);
		
		if(!is_array($logDBVeri)){
			$logDB = $this->baglan->prepare("CREATE TABLE IF NOT EXISTS `botLog` (`id` int(11) NOT NULL AUTO_INCREMENT,`objectID` int(11) NOT NULL,`url` text NOT NULL,PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;");
			$logDB->execute();
		}
		
		$this->guncelYil = date("Y");
		$this->guncelAy = date("m");
		
		if(!file_exists($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/$this->guncelYil/")){
			mkdir($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/$this->guncelYil/", 0777);
		}
		
		if(!file_exists($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/$this->guncelYil/$this->guncelAy/")){
			mkdir($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/$this->guncelYil/$this->guncelAy", 0777);
		}
		
		if(!file_exists($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/thumbs/$this->guncelYil/")){
			mkdir($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/thumbs/$this->guncelYil/", 0777);
		}
		
		if(!file_exists($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/thumbs/$this->guncelYil/$this->guncelAy/")){
			mkdir($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/thumbs/$this->guncelYil/$this->guncelAy", 0777);
		}
		
		if(!file_exists($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/thumbs2/$this->guncelYil/")){
			mkdir($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/thumbs2/$this->guncelYil/", 0777);
		}
		
		if(!file_exists($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/thumbs2/$this->guncelYil/$this->guncelAy/")){
			mkdir($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/thumbs2/$this->guncelYil/$this->guncelAy", 0777);
		}
		
		if(!file_exists($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/ustmanset/$this->guncelYil/")){
			mkdir($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/ustmanset/$this->guncelYil/", 0777);
		}
		
		if(!file_exists($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/ustmanset/$this->guncelYil/$this->guncelAy/")){
			mkdir($_SERVER["DOCUMENT_ROOT"] . "/images/haberler/ustmanset/$this->guncelYil/$this->guncelAy", 0777);
		}
	}
	
	public function haberler($kategori){
		$siteKategoriler = array(
			"guncel" => 15,
			"dunya" => 5,
			"saglik" => 9,
			"egitim" => 15,
			"ekonomi" => 6,
			"spor" => 4,
			"yasam" => 10,
			"teknoloji" => 2,
			"sanat" => 17,
			"sondakika" => 15,
			"mansetler" => 15,
			"politika" => 16,
			"sinema" => 12,
			"magazin" => 12,
			"memurlar" => 10,
			"dizi" => 12,
			"cumartesi" => 12,
			"pazar" => 12,
			"otohayat" => 12,
			"medya" => 12,
		);
		
		if(empty($kategori)){
			$kategori = "guncel";
		}
		
		$html = str_get_html($this->html("http://www.star.com.tr/$kategori/", false, false, true));
		
		$sliderSayi = count($html->find(".generalslider .swiper-slide"));
			
		$say = 0;
		
		if($sliderSayi > 0){
			foreach($html->find(".generalslider .swiper-slide") as $icerik){
				$icerikURL = $icerik->find("a", 0)->attr["href"];
				$icerikKontrol = $this->icerikKontrol($icerikURL);
				
				if($icerikKontrol == 0 && !array_search($icerikURL, $haberler["url"])){
					$haberler["url"][$say] = $icerikURL;
					$haberler["baslik"][$say] = trim($icerik->find("h3", 0)->plaintext);
					$say++;
				}
			}
		}
		
		foreach($html->find(".col-md-8 .news") as $icerik){
			$icerikURL = $icerik->find("a", 0)->attr["href"];
			$icerikKontrol = $this->icerikKontrol($icerikURL);
			
			if($icerikKontrol == 0 && !array_search($icerikURL, $haberler["url"])){
				$haberler["url"][$say] = $icerikURL;
				$haberler["baslik"][$say] = trim($icerik->find(".news-headline", 0)->plaintext);
				$say++;
			}
			
			if($say > 19){
				break;
			}
		}
	
		$htmlMulti = $this->htmlMulti($haberler["url"], true);
		$say = 0;
		foreach($htmlMulti as $htmlSafe){
			$html = str_get_html($htmlSafe);
			
			$haber = "";
				
			foreach($html->find(".text-area p") as $haberIcerikVeri){
				$haberMetin = trim($this->linkTemizle($haberIcerikVeri->innertext));
				
				if(!empty($haberMetin)){
					$haber .= "<p>$haberMetin</p>";
				}
			}
			
			if(!empty($haber)){
				$haber .= "<br>Kaynak: Star.com.tr <br><small>Sitemizdeki haber, görsel yayınlarına ilişkin eleştiri ve önerileriniz için <b><strong>info@edirnehaber.com.tr</strong></b> mail adresinden - <b><strong>0284 606 03 03</strong></b> numaralı telefon numarasından  veya <b><strong>0544 206 22 22</strong></b> numaralı whatsapp hattımızdan bizlere ulaşabilirsiniz.";
			
				$haberVeri["url"] = $haberler["url"][$say];
				$haberVeri["baslik"] = $haberler["baslik"][$say];
				$haberVeri["kategori"] = $siteKategoriler[$kategori];
				$haberVeri["haber"] = trim($haber);
				$haberVeri["ozet"] = trim($html->find(".newssummarywrap h2", 0)->plaintext);
				$haberVeri["resim"] = $html->find("meta[property='og:image']", 0)->attr["content"];
				$haberVeri["etiket"] = $html->find("meta[name='news_keywords']", 0)->attr["content"];

				$this->haberEkle($haberVeri);
			}
			
			$say++;
		}
		
		$this->onbellekTemizle();
	}
	
	public function fotoGaleriler($kategori){
		$siteKategoriler = array(
			"spor" => 4,
			"sinema" => 9,
			"sanat" => 5,
			"magazin" => 6,
			"medya" => 7,
			"saglik" => 8,
		);
		
		if(empty($kategori)){
			$kategori = "medya";
		}
	
		$html = str_get_html($this->html("http://www.star.com.tr/foto-galeri/$kategori/", false, false, false));
		
		$say = 0;
		foreach($html->find(".center-boxes .news") as $icerik){
			$icerikURL = $icerik->find("a", 0)->attr["href"];
			$icerikKontrol = $this->icerikKontrol($icerikURL);
			
			if($icerikKontrol == 0 && !array_search($icerikURL, $galeriler["url"])){
				$galeriler["url"][$say] = $icerikURL;
				$galeriler["baslik"][$say] = trim($icerik->find(".news-headline", 0)->plaintext);
				$say++;
			}
			
			if($say > 9){
				break;
			}
		}
		
		$htmlMulti = $this->htmlMulti($galeriler["url"]);
		$say = 0;
		foreach($htmlMulti as $htmlSafe){
			$htmlSafe = trim($htmlSafe);
			
			if(empty($htmlSafe)){
				continue;
			}
			
			$html = str_get_html($htmlSafe);

			$toplamResim = trim($html->find(".order-total", 0)->plaintext);
			
			if(!empty($toplamResim)){
				if($toplamResim > 50){
					$toplamResim = 50;
				}
				
				$galeriID = str_replace("-", "", filter_var($galeriler["url"][$say], FILTER_SANITIZE_NUMBER_INT));
				
				$galeriLinkler = array();
				for($linkSay = 1; $linkSay <= $toplamResim; $linkSay++){
					if($linkSay == 1){
						$galeriLinkler[] = rtrim($galeriler["url"][$say], "/") . "-sayfa-$linkSay";
					} else {
						$galeriLinkler[] = "http://www.star.com.tr/foto-galeri/fotogaleri.asp?title=ddd&tag=1&inf=1&kat=$galeriID&pn=$linkSay";
					}
				}
				
				$galeriVeri["url"] = $galeriler["url"][$say];
				$galeriVeri["baslik"] = $galeriler["baslik"][$say];
				$galeriVeri["kategori"] = $siteKategoriler[$kategori];
				$galeriVeri["resim"] = $html->find("meta[property='og:image']", 0)->attr["content"];
				$galeriVeri["galeriLinkler"] = base64_encode(serialize($galeriLinkler));

				$this->galeriEkle($galeriVeri);
			}
			
			$say++;
		}
		
		$this->onbellekTemizle();
	}

	public function videoGaleriler($kategori){
		$siteKategoriler = array(
			"guncel" => 1,
			"spor" => 4,
			"dunya" => 6,
			"yasam" => 2,
			"politika" => 3,
			"dizi" => 10,
		);
		
		if(empty($kategori)){
			$kategori = "guncel";
		}
	
		$html = str_get_html($this->html("http://www.star.com.tr/video/$kategori/", false, false, false));
		
		$say = 0;
		foreach($html->find("#videobottomarea .news") as $icerik){
			$icerikURL = $icerik->find("a", 0)->attr["href"];
			$icerikKontrol = $this->icerikKontrol($icerikURL);
			
			if($icerikKontrol == 0 && !array_search($icerikURL, $galeriler["url"])){
				$galeriler["url"][$say] = $icerikURL;
				$galeriler["baslik"][$say] = trim($icerik->find(".news-headline", 0)->plaintext);
				$say++;
			}
			
			if($say > 9){
				break;
			}
		}
		$htmlMulti = $this->htmlMulti($galeriler["url"]);
		$say = 0;
		foreach($htmlMulti as $htmlSafe){
			$html = str_get_html($htmlSafe);
			
			$frameKod = trim($html->find(".videoscope-area", 0)->innertext);
			
			if(!empty($frameKod)){
				$galeriVeri["url"] = $galeriler["url"][$say];
				$galeriVeri["baslik"] = $galeriler["baslik"][$say];
				$galeriVeri["kategori"] = $siteKategoriler[$kategori];
				$galeriVeri["frame"] = $frameKod;
				$galeriVeri["resim"] = $html->find("meta[property='og:image']", 0)->attr["content"];
				$galeriVeri["ozet"] = trim($html->find(".videogtext", 0)->plaintext);
				
				$this->videoEkle($galeriVeri);
			}
			
			$say++;
		}
		
		$this->onbellekTemizle();
	}
	
	public function haberEkle($veriler){
		$icerikKontrol = $this->icerikKontrol($veriler["url"]);

		$veriler["istatistikEkle"] = 1;
		$veriler["fmanset"] = 1;
		$veriler["umanset"] = 1;
		$veriler["sdakika_flash"] = 1;
		$veriler["rmanset"] = 1;
		$veriler["kmanset"] = 1;
		$veriler["ymanset"] = 1;
		$veriler["hbandi"] = 1;
		$veriler["sdakika"] = 1;
		$veriler["ozelhaber"] = 1;
		$veriler["durum"] = 1;

		if($icerikKontrol == 0){
			$kategoriSorgu = $this->baglan->prepare("SELECT * FROM haberkat WHERE id = '$veriler[kategori]'");
			$kategoriSorgu->execute();
			$kategoriVeri = $kategoriSorgu->fetch(PDO::FETCH_ASSOC);
			$haberSlug = $kategoriVeri["hta"] . "/" . $this->slugOlustur($veriler["baslik"]);

			$icerik = str_get_html($veriler["haber"]);

			foreach($icerik->find("img") as $res){
				$resim = rtrim(stripslashes(str_replace(array("'", '"'), "", $res->attr["src"])), "/");
				$resimYukle = $this->resimYukle($veriler["baslik"], $resim);
				$veriler["haber"] = str_replace($resim, $resimYukle, $veriler["haber"]);
			}

			$haberResim = $this->oneCikan($veriler["baslik"], $veriler["resim"], 0);

			$haberEkle = $this->baglan->prepare("INSERT INTO haber SET 
				catid = ?, kategori = ?, anakategori = ?, baslik = ?, spot = ?, detay = ?, hta = ?, resim = ?, uresim = ?,
				fmanset = ?, umanset = ?, sdakika_flash = ?, rmanset = ?, kmanset = ?, ymanset = ?, hbandi = ?, sdakika = ?, ozelhaber = ?,
				tarih = ?, eid = '28', ekleyen = '28', hit = '0', kaynak = '0', aktif = ?
			");

			$haberEkle->execute(array(
				$veriler["kategori"], $kategoriVeri["hta"], $kategoriVeri["hta"], $veriler["baslik"], $veriler["ozet"],
				$veriler["haber"], $haberSlug, $haberResim, $haberResim, $veriler["fmanset"], $veriler["umanset"], $veriler["sdakika_flash"],
				$veriler["rmanset"], $veriler["kmanset"], $veriler["ymanset"], $veriler["hbandi"], $veriler["sdakika"], $veriler["ozelhaber"],
				date("Y-m-d H:i:s"), $veriler["durum"]
			)); 

			$haberID = $this->baglan->lastInsertId();
			
			if($haberID != 0){
				$this->etiketEkle($veriler["etiket"], $haberID);
				
				$hitEkle = $this->baglan->prepare("INSERT INTO haber_hit SET content_id = '$haberID', hit = '0', comment = '0', module = 'haber'");
				$hitEkle->execute();

				$logEkle = $this->baglan->prepare("INSERT INTO botLog SET objectID = '$haberID', url = '$veriler[url]'");
				$logEkle->execute(); 				
				
				if($veriler["istatistikEkle"]){
					$istatistikSorgu = $this->baglan->prepare("SELECT * FROM counts");
					$istatistikSorgu->execute();
					$istatistikVeri = $istatistikSorgu->fetch(PDO::FETCH_ASSOC);
					$toplamHaber = $istatistikVeri["toplam_haber"] + 1;
					
					$istatistikGuncelle = $this->baglan->prepare("UPDATE counts SET toplam_haber = '$toplamHaber'");
					$istatistikGuncelle->execute(); 
				}
				
				echo "$veriler[baslik] - Haber başarıyla eklendi .<br />\n";
			} else {
				echo "$veriler[baslik] - Haber eklenirken hata oluştu.<br />\n";
			}
		} else {
			echo "$veriler[baslik] - Haber zaten eklenmiş. <br/>\n";
		}	
	}
	
	public function galeriEkle($veriler){
		$icerikKontrol = $this->icerikKontrol($veriler["url"]);
		
		$veriler["istatistikEkle"] = 1;
		$veriler["durum"] = 1;
		
		if($icerikKontrol == 0){
			$galeriLinkler = unserialize(base64_decode($veriler["galeriLinkler"]));
			
			$htmlMulti = $this->htmlMulti($galeriLinkler);
			
			$say = 0;
			foreach($htmlMulti as $galeriHtml){
				$galeriHtml = trim($galeriHtml);
				
				if(empty($galeriHtml)){
					continue;
				}
				
				$html = str_get_html($galeriHtml);

				$aciklamaSay = count($html->find(".galeri-item p")) - 1;
				$aciklama = $aciklamaMetin = trim($this->linkTemizle($html->find(".galeri-item p", $aciklamaSay)->innertext));
				$aciklama = iconv("windows-1254","UTF-8", trim($aciklama));
				
				if(!empty($aciklama)){
					$aciklama .= "<br>Kaynak: Star.com.tr <br><small>Sitemizdeki haber, görsel yayınlarına ilişkin eleştiri ve önerileriniz için <b><strong>info@edirnehaber.com.tr</strong></b> mail adresinden - <b><strong>0284 606 03 03</strong></b> numaralı telefon numarasından  veya <b><strong>0544 206 22 22</strong></b> numaralı whatsapp hattımızdan bizlere ulaşabilirsiniz.";
				}
				
				$galeriResimler[$say]["resim"] = $html->find(".galeri-item .image img", 0)->attr["src"];
				$galeriResimler[$say]["aciklama"] = $aciklama;

				$say++;
			}

			if(is_array($galeriResimler)){
				$galeriResim = $this->oneCikan($veriler["baslik"], $veriler["resim"], 1);
				
				$galeriEkle = $this->baglan->prepare("INSERT INTO albumkat SET 
					parent = ?, baslik = ?, hta = ?, tarih = ?, kapak = ?, hit = ?, haber_detay = ?, onay = ?, onay_sil = ?,
					aktif = ?, catid = ?, eid =? , ekleyen = ?
				");

				$galeriEkle->execute(array(
					0, $veriler["baslik"], $this->slugOlustur($veriler["baslik"]), date("Y-m-d H:i:s"), $galeriResim, 0, 1, 1, 0,
					$veriler["durum"], $veriler["kategori"], 28, 28
				)); 
				
				$galeriID = $this->baglan->lastInsertId();
			
				if($galeriID != 0){
					$say = 0;
					foreach($galeriResimler as $galeriResim){
						$say++;
						
						$resimYukle = $this->oneCikan($veriler["baslik"], $galeriResim["resim"], 1);
						
						$resimEkle = $this->baglan->prepare("INSERT INTO album SET 
							catid = ?, aciklama = ?, resim = ?, kapak = ?, tarih = ?, aktif = ?, hit = ?, sira = ?
						");
						
						$resimEkle->execute(array(
							$galeriID, $galeriResim["aciklama"], $resimYukle, 0, date("Y-m-d H:i:s"), 1, 0, $say
						)); 
					}
					
					$hitEkle = $this->baglan->prepare("INSERT INTO haber_hit SET content_id = '$galeriID', hit = '0', comment = '0', module = 'albumkat'");
					$hitEkle->execute();

					$logEkle = $this->baglan->prepare("INSERT INTO botLog SET objectID = '$galeriID', url = '$veriler[url]'");
					$logEkle->execute();
					
					if($veriler["istatistikEkle"]){
						$istatistikSorgu = $this->baglan->prepare("SELECT * FROM counts");
						$istatistikSorgu->execute();
						$istatistikVeri = $istatistikSorgu->fetch(PDO::FETCH_ASSOC);
						$toplamGaleri = $istatistikVeri["toplam_fotogaleri"] + 1;
						
						$istatistikGuncelle = $this->baglan->prepare("UPDATE counts SET toplam_fotogaleri = '$toplamGaleri'");
						$istatistikGuncelle->execute(); 
					}
					
					echo "$veriler[baslik] - $galeriID - Foto Galeri başarıyla eklendi. <br />\n";
				}
			} else {
				echo "$veriler[baslik] - Foto Galeri eklenirken hata oluştu.  <br />\n";
			}
		} else {
			echo "$veriler[baslik] - Foto Galeri zaten eklenmiş.  <br />\n";
		}
	}
	
	public function videoEkle($veriler){
		$icerikKontrol = $this->icerikKontrol($veriler["url"]);
		
		$veriler["istatistikEkle"] = 1;
		
		if($icerikKontrol == 0){
			$galeriResim = $this->oneCikan($veriler["baslik"], $veriler["resim"], 2);

			$galeriEkle = $this->baglan->prepare("INSERT INTO video SET 
				catid = ?, baslik = ?, aciklama = ?, video_kodu = ?, keyword = ?, resim = ?, hit = ?, yorum = ?, aktif = ?, onay = ?,
				tarih = ?, eid =? , ekleyen = ?
			");

			$galeriEkle->execute(array(
				$veriler["kategori"], $veriler["baslik"], $veriler["ozet"], $veriler["frame"], $veriler["etiket"], $galeriResim, 0,
				1, 1, 1, date("Y-m-d H:i:s"), 35, 17
			)); 
		
			$galeriID = $this->baglan->lastInsertId();
			
			if($galeriID != 0){
				$galeriSlug = $this->slugOlustur($veriler["baslik"]) . "-video,$galeriID.html";
				
				$galeriGuncelle = $this->baglan->prepare("UPDATE video SET hta = '$galeriSlug' WHERE id = '$galeriID'");
				$galeriGuncelle->execute();
				
				$hitEkle = $this->baglan->prepare("INSERT INTO haber_hit SET content_id = '$galeriID', hit = '0', comment = '0', module = 'video'");
				$hitEkle->execute();

				$logEkle = $this->baglan->prepare("INSERT INTO botLog SET objectID = '$galeriID', url = '$veriler[url]'");
				$logEkle->execute();
				
				if($veriler["istatistikEkle"]){
					$istatistikSorgu = $this->baglan->prepare("SELECT * FROM counts");
					$istatistikSorgu->execute();
					$istatistikVeri = $istatistikSorgu->fetch(PDO::FETCH_ASSOC);
					$toplamGaleri = $istatistikVeri["toplam_fotogaleri"] + 1;
					
					$istatistikGuncelle = $this->baglan->prepare("UPDATE counts SET toplam_videogaleri = '$toplamGaleri'");
					$istatistikGuncelle->execute(); 
				}
				
				echo "$veriler[baslik] - Video başarıyla eklendi. <br />\n";
			}  else {
				echo "$veriler[baslik] - Video eklenirken hata oluştu.  <br />\n";
			}
		} else {
			echo "$veriler[baslik] - Video zaten eklenmiş.  <br />\n";
		}
	}
	
	public function etiketEkle($etiketler, $haberID){
		$etiketler = explode(",", $etiketler);
		
		foreach($etiketler as $etiket){
			$etiketSorgu = $this->baglan->prepare("SELECT id, COUNT(*) as toplam FROM haber_keywords WHERE keyword = '$etiket'");
			$etiketSorgu->execute();
			$etiketVeri = $etiketSorgu->fetch(PDO::FETCH_ASSOC);
			
			if($etiketVeri["toplam"] > 0){
				$etiketID = $etiketVeri["id"];
			} else {
				$etiketEkle = $this->baglan->prepare("INSERT INTO haber_keywords SET keyword = '$etiket'");
				$etiketEkle->execute(); 
				
				$etiketID = $this->baglan->lastInsertId();
			}
			
			if(!empty($etiketID)){
				$etiketIliskiEkle = $this->baglan->prepare("INSERT INTO haber_keywords_iliski SET keyword_id = '$etiketID', haber_id = '$haberID'");
				$etiketIliskiEkle->execute(); 
			}
		}
	}
	
	public function resimYukle($resimBaslik, $resimURL) {
		$randID = crc32(time() . rand(0, 999) . $resimURL . $resimBaslik);
		
		$dosyaAdi = $this->slugOlustur($resimBaslik);
		$dosyaAdi = "$dosyaAdi-$randID.jpg";

		$resimKaynak = $this->html($resimURL);
		$resimKlasor = $_SERVER["DOCUMENT_ROOT"] . "/images/haberler/$this->guncelYil/$this->guncelAy/";
		
		$resimDosya = fopen($resimKlasor . $dosyaAdi, "w+"); 
		fwrite($resimDosya, $resimKaynak); 
		fclose($resimDosya);
		
		return "http://" . $_SERVER["HTTP_HOST"] . "/images/haberler/$this->guncelYil/$this->guncelAy/$dosyaAdi";
	}
	
	public function oneCikan($resimBaslik, $resimURL, $yuklemeTur = 0) {
		$randID = crc32(time() . $resimURL . $resimBaslik);
		
		$dosyaAdi = $this->slugOlustur($resimBaslik);
		$dosyaAdi = "$dosyaAdi-$randID.jpg";

		$resimKaynak = $this->html($resimURL);

		if($yuklemeTur == 0){
			$resimKlasor = $_SERVER["DOCUMENT_ROOT"] . "/images/haberler/$this->guncelYil/$this->guncelAy/";
			
			$resimDosya = fopen($resimKlasor . $dosyaAdi, "w+"); 
			fwrite($resimDosya, $resimKaynak); 
			fclose($resimDosya);

			$resimKlasor = $_SERVER["DOCUMENT_ROOT"] . "/images/haberler/ustmanset/$this->guncelYil/$this->guncelAy/";
			$resimDosya = fopen($resimKlasor . $dosyaAdi, "w+"); 
			fwrite($resimDosya, $resimKaynak); 
			fclose($resimDosya);
			
			$resimKlasor = $_SERVER["DOCUMENT_ROOT"] . "/images/haberler/thumbs2/$this->guncelYil/$this->guncelAy/";
			$resimDosya = fopen($resimKlasor . $dosyaAdi, "w+"); 
			fwrite($resimDosya, $resimKaynak); 
			fclose($resimDosya);
			
			$thumbKlasor = $_SERVER["DOCUMENT_ROOT"] . "/images/haberler/thumbs/$this->guncelYil/$this->guncelAy/";
			$resimGenislik = 300;
			$resimYukseklik = 155;
			$yeniResim = imagecreatetruecolor($resimGenislik, $resimYukseklik);
			$resim = imagecreatefromstring($resimKaynak);
			imagecopyresampled($yeniResim, $resim, 0, 0, 0, 0, $resimGenislik, $resimYukseklik, imagesx($resim),imagesy($resim));
			
			ob_start();
			imagejpeg($yeniResim, null, 90);
			imagedestroy($yeniResim);
			imagedestroy($resim);

			$resimDosya = fopen($thumbKlasor . $dosyaAdi, "w+"); 					
			fwrite($resimDosya, ob_get_clean()); 
			fclose($resimDosya); 
			
			return "$this->guncelYil/$this->guncelAy/$dosyaAdi";
		} elseif($yuklemeTur == 1){
			$resimKlasor = $_SERVER["DOCUMENT_ROOT"] . "/images/album/";
			
			$resimDosya = fopen($resimKlasor . $dosyaAdi, "w+"); 
			fwrite($resimDosya, $resimKaynak); 
			fclose($resimDosya);
			
			$resimKlasor = $_SERVER["DOCUMENT_ROOT"] . "/images/album/thumbs2/";
			$resimDosya = fopen($resimKlasor . $dosyaAdi, "w+"); 
			fwrite($resimDosya, $resimKaynak); 
			fclose($resimDosya);
			
			$thumbKlasor = $_SERVER["DOCUMENT_ROOT"] . "/images/album/thumbs/";
			$resimGenislik = 300;
			$resimYukseklik = 155;
			$yeniResim = imagecreatetruecolor($resimGenislik, $resimYukseklik);
			$resim = imagecreatefromstring($resimKaynak);
			imagecopyresampled($yeniResim, $resim, 0, 0, 0, 0, $resimGenislik, $resimYukseklik, imagesx($resim),imagesy($resim));
			
			ob_start();
			imagejpeg($yeniResim, null, 90);
			imagedestroy($yeniResim);
			imagedestroy($resim);

			$resimDosya = fopen($thumbKlasor . $dosyaAdi, "w+"); 					
			fwrite($resimDosya, ob_get_clean()); 
			fclose($resimDosya); 
			
			return "$dosyaAdi";
		} elseif($yuklemeTur == 2){
			$resimKlasor = $_SERVER["DOCUMENT_ROOT"] . "/images/video/";
			
			$resimDosya = fopen($resimKlasor . $dosyaAdi, "w+"); 
			fwrite($resimDosya, $resimKaynak); 
			fclose($resimDosya);
			
			$resimKlasor = $_SERVER["DOCUMENT_ROOT"] . "/images/video/thumbs2/";
			$resimDosya = fopen($resimKlasor . $dosyaAdi, "w+"); 
			fwrite($resimDosya, $resimKaynak); 
			fclose($resimDosya);
			
			$thumbKlasor = $_SERVER["DOCUMENT_ROOT"] . "/images/video/thumbs/";
			$resimGenislik = 300;
			$resimYukseklik = 155;
			$yeniResim = imagecreatetruecolor($resimGenislik, $resimYukseklik);
			$resim = imagecreatefromstring($resimKaynak);
			imagecopyresampled($yeniResim, $resim, 0, 0, 0, 0, $resimGenislik, $resimYukseklik, imagesx($resim),imagesy($resim));
			
			ob_start();
			imagejpeg($yeniResim, null, 90);
			imagedestroy($yeniResim);
			imagedestroy($resim);

			$resimDosya = fopen($thumbKlasor . $dosyaAdi, "w+"); 					
			fwrite($resimDosya, ob_get_clean()); 
			fclose($resimDosya); 
			
			return "$dosyaAdi";
		}
	}
	
	public function icerikKontrol($url){
		$logSorgu = $this->baglan->prepare("SELECT COUNT(*) as toplam FROM botLog WHERE url = '$url'");
		$logSorgu->execute();
		$logVeri = $logSorgu->fetch(PDO::FETCH_ASSOC);

		if(!is_array($logVeri)){
			$logVeri["toplam"] = 0;
		}

		return $logVeri["toplam"];
	}

	public function linkTemizle($veri){
		preg_match_all("/<a (.*)<\/a>/isU", $veri, $sonuc);
		
		foreach($sonuc[0] as $rs){
			$veri = str_replace($rs, preg_replace("/<a (.*)>(.*)<\/a>/isU", '$2', $rs), $veri);
		}
		
		return $veri;
	}
	
	public function slugOlustur($url) {
		$turkceKarakter = array("İ","Ş"," ","Ü","Ç","Ğ","Ö","ı","ş","ü","ç","ğ","ö");
		$ingilizceKarakter = array("I","S","-","U","C","G","O","i","s","u","c","g","o");
		$url = str_replace($turkceKarakter,$ingilizceKarakter,$url);
		$url = preg_replace("@[^A-Za-z0-9\-_]+@i","",$url);
		$url = trim($url);
		$url = strtolower($url);
		$bul = array('<b>', '</b>');
		$url = str_replace ($bul, '', $url);
		$url = preg_replace('/<(\/{0,1})img(.*?)(\/{0,1})\>/', 'image', $url);
		$bul = array(' ', '&quot;', '&amp;', '&', '\r\n', '\n', '/', '\\', '+', '<', '>');
		$url = str_replace ($bul, '-', $url);
		$bul = array('é', 'è', 'ë', 'ê', 'É', 'È', 'Ë', 'Ê');
		$url = str_replace ($bul, 'e', $url);
		$bul = array('í', 'ì', 'î', 'ï', 'I', 'Í', 'Ì', 'Î', 'Ï');
		$url = str_replace ($bul, 'i', $url);
		$bul = array('ó', 'ö', 'Ö', 'ò', 'ô', 'Ó', 'Ò', 'Ô');
		$url = str_replace ($bul, 'o', $url);
		$bul = array('á', 'ä', 'â', 'à', 'â', 'Ä', 'Â', 'Á', 'À', 'Â');
		$url = str_replace ($bul, 'a', $url);
		$bul = array('ú', 'ü', 'Ü', 'ù', 'û', 'Ú', 'Ù', 'Û');
		$url = str_replace ($bul, 'u', $url);
		$bul = array('ç', 'Ç');
		$url = str_replace ($bul, 'c', $url);
		$bul = array('?', '!', '$', '#', '+');
		$url = str_replace ($bul, '-', $url);
		$bul = array('ğ', 'Ğ');
		$url = str_replace ($bul, 'g', $url);
		$bul = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/');
		$url = preg_replace ($bul, array('', '-', ''), $url);
		$url = str_replace('--', '-', $url);
		return trim($url);
	}
	
	public function onbellekTemizle(){
		$sorgu = $this->baglan->prepare("SELECT siteurl FROM ayarlar");
		$sorgu->execute();
		$siteAyar = $sorgu->fetch(PDO::FETCH_ASSOC);
		
		$urlParse = parse_url($siteAyar["siteurl"]);
		
		if(strpos($urlParse["host"], "www.") !== false){
			$dizinler[] = $_SERVER["DOCUMENT_ROOT"] . "/cache/cache.storage." . str_replace("www.", "", $urlParse["host"]);
			$dizinler[] = $_SERVER["DOCUMENT_ROOT"] . "/cache/cache.storage." . $urlParse["host"];
		} else {
			$dizinler[] = $_SERVER["DOCUMENT_ROOT"] . "/cache/cache.storage." . $urlParse["host"] . "/";
			$dizinler[] = $_SERVER["DOCUMENT_ROOT"] . "/cache/cache.storage.www." . $urlParse["host"] . "/";
		}
		
		$dizinler[] = $_SERVER["DOCUMENT_ROOT"] . "/cache/static/";
		$dizinler[] = $_SERVER["DOCUMENT_ROOT"] . "/cache/images/";
		$dizinler[] = $_SERVER["DOCUMENT_ROOT"] . "/cache/images/mobil/";
		
		foreach($dizinler as $dizin){
			$this->dizinSil($dizin);
			mkdir($dizin, 0755);
		}
	}
	
	public function dizinSil($dizin){
		if(is_dir($dizin) === true){
			$files = array_diff(scandir($dizin), array(".", ".."));

			foreach ($files as $file){
				$this->dizinSil(realpath($dizin) . "/" . $file);
			}

			return rmdir($dizin);
		} elseif(is_file($dizin) === true){
			return unlink($dizin);
		}

		return false;
	}

	public function html($url, $postVeriler = false, $headerVeriler = false, $karakterDegis = false) {
		$ct = curl_init();
		curl_setopt($ct, CURLOPT_URL, $url);
		curl_setopt($ct, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ct, CURLOPT_FOLLOWLOCATION, true);
		curl_setopt($ct, CURLOPT_TIMEOUT, 0);
		curl_setopt($ct, CURLOPT_CONNECTTIMEOUT, 0);
		curl_setopt($ct, CURLOPT_USERAGENT, "Googlebot/2.1 (http://www.googlebot.com/bot.html)");
		curl_setopt($ct, CURLOPT_REFERER, "http://www.google.com/bot.html");
		
		if($postVeriler){
			curl_setopt($ct, CURLOPT_POST, true);
			
			if(is_array($postVeriler)){
				curl_setopt($ct, CURLOPT_POSTFIELDS, $postVeriler);
			}
		}
		
		if(is_array($headerVeriler)){
			curl_setopt($ct, CURLOPT_HTTPHEADER, $headerVeriler);
		}
		
		$cikti = curl_exec($ct);
		curl_close($ct);
		
		if($karakterDegis){
			$cikti = iconv("windows-1254", "UTF-8", $cikti);
		}
		
		return $cikti;
	}
	
	public function htmlMulti($urls, $karakterDegis = false){
		foreach ($urls as $url) {
            $ct = curl_init();
            curl_setopt($ct, CURLOPT_URL, $url);
            curl_setopt($ct, CURLOPT_RETURNTRANSFER, 1);
			curl_setopt($ct, CURLOPT_FOLLOWLOCATION, true);
			curl_setopt($ct, CURLOPT_TIMEOUT, 0);
			curl_setopt($ct, CURLOPT_CONNECTTIMEOUT, 0);
			curl_setopt($ct, CURLOPT_USERAGENT, "Googlebot/2.1 (http://www.googlebot.com/bot.html)");
			curl_setopt($ct, CURLOPT_REFERER, "http://www.google.com/bot.html");
            $Curl[] = $ct;
        }
		
		$MultiCurlHandler = curl_multi_init();
		
		foreach($Curl as $key => $curl){
            curl_multi_add_handle($MultiCurlHandler, $curl);
        }
        
		do {
            $MultiCurl = curl_multi_exec($MultiCurlHandler, $active);
        } 
		while ($MultiCurl == CURLM_CALL_MULTI_PERFORM  || $active);
		
        $say = 0;
        foreach($Curl as $curl){
            $content = curl_multi_getcontent($curl);
			
			if($karakterDegis){
				$html[$say] = iconv("windows-1254", "UTF-8", $content);
			} else {
				$html[$say] = $content;
			}
			
			$say++;
        }
        curl_multi_close($MultiCurlHandler);
		return $html;
	}
}
?>