URI Üzerindeki GET Sorgu Dizesi Parametrelerini İşlemek

<?php
class adres {
	var $adres;
	var $site;
	var $deger;
	var $gecici;
	function adres($def="") {
		$this->adres = $def;
		preg_match('/^(.*\?)(.*)$/', $this->adres, $sonuc);
		$this->site = $sonuc[1];
		unset($this->deger);
		$sekme = (explode("&", $sonuc[2]));
		foreach($sekme as $s) {
			$gecici = explode("=", $s);
			$this->deger[$gecici[0]] = $gecici[1];
		}
	}
	function degerEkle($veri, $sal) {
		$this->deger[$veri] = $sal;
	}
	function degerKaldir($veri) {
		unset($this->deger[$veri]);
	}
	function degerGoster($veri) {
		return $this->deger[$veri];
	}
	function yeniAdres() {
		foreach($this->deger as $k=>$s) {
			$this->gecici[] .= $k."=".htmlentities(urlencode($s));
		}
		return $this->site.implode("&",$this->gecici);
	}
}
$x = new adres("http://localhost/index.php?veri1=01&veri2=02");
echo $x->degerGoster("veri1");
echo $x->degerEkle("veri3", "03");
echo $x->degerKaldir("veri2");
echo "<br>";
echo $x->yeniAdres();
?>

Çıktısı

01
http://localhost/index.php?veri1=01&veri3=03

 

İstenilen Karakter ve Uzunluğa Göre Anahtar Şifreleme

<?php
class anahtar{
	var $anahtar = "";
	var $karakterler = array("1","2","3","8","5","6","7","8","9",
                    "a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",
                    "A","B","C","D","E","F","G","H","I","J","K","L","M","N","P","Q","R","S","T","U","V","W","X","Y","Z");
  function anahtar($boyut){
    for ($i = 0; $i<$boyut; $i++){
        $this->anahtar .= $this->karakterler[rand(0,count($this->karakterler)-1)];
    }
  }
}
$sifre = new anahtar(7);
echo $sifre->anahtar;
?>

Çıktısı

XIhHxmc

 

Parçalanmış Metnin Yükleme İlerlemesini Göstermek

<?php
setlocale(LC_ALL, "TURKISH");
header('Content-Type: text/html; charset=utf-8');
mb_language('uni'); 
mb_internal_encoding('UTF-8');
class ilerleme{
	private $yazi='';
	private $enfazlaharf=70;
	private $ilerleme=0;
	private $son;
	public function __construct($yazi,$enfazlaharf){
		$this->yazi  = $yazi;
		$this->enfazlaharf = $enfazlaharf;
		$this->ciz();
	}
	function ciz(){
		$this->ilerleme++;
		if(strlen($this->yazi)/$this->enfazlaharf  <= 1){
			$sar=1;
		}else{
			$sar=ceil(mb_strlen($this->yazi)/$this->enfazlaharf) ;
		}
		if($this->ilerleme <= $sar){
			if($sar == 1){
				echo $this->yazi;
			}else{
				$harf=ceil(mb_strlen($this->yazi)/$this->enfazlaharf);
				$this->ilerleme*$harf;
				echo mb_substr($this->yazi, (($this->ilerleme-1)*$this->enfazlaharf), $this->enfazlaharf);
			}
			echo  " <i>[".((round(((100/$sar)*$this->ilerleme)*100))*0.01)."% yüklendi]</i><br>";
			$this->ciz();
		}
	}
}
$pb=new ilerleme("Lorem Ipsum, dizgi ve baskı endüstrisinde kullanılan mıgır metinlerdir. Lorem Ipsum, adı bilinmeyen bir matbaacının bir hurufat numune kitabı oluşturmak üzere bir yazı galerisini alarak karıştırdığı 1500'lerden beri endüstri standardı sahte metinler olarak kullanılmıştır. Beşyüz yıl boyunca varlığını sürdürmekle kalmamış, aynı zamanda pek değişmeden elektronik dizgiye de sıçramıştır. 1960'larda Lorem Ipsum pasajları da içeren Letraset yapraklarının yayınlanması ile ve yakın zamanda Aldus PageMaker gibi Lorem Ipsum sürümleri içeren masaüstü yayıncılık yazılımları ile popüler olmuştur.",50);
echo $pb->ciz();
?>

Çıktısı

Lorem Ipsum, dizgi ve baskı endüstrisinde kullanıl [8.33% yüklendi]
an mıgır metinlerdir. Lorem Ipsum, adı bilinmeyen [16.67% yüklendi]
bir matbaacının bir hurufat numune kitabı oluşturm [25% yüklendi]
ak üzere bir yazı galerisini alarak karıştırdığı 1 [33.33% yüklendi]
500'lerden beri endüstri standardı sahte metinler [41.67% yüklendi]
olarak kullanılmıştır. Beşyüz yıl boyunca varlığın [50% yüklendi]
ı sürdürmekle kalmamış, aynı zamanda pek değişmede [58.33% yüklendi]
n elektronik dizgiye de sıçramıştır. 1960'larda Lo [66.67% yüklendi]
rem Ipsum pasajları da içeren Letraset yaprakların [75% yüklendi]
ın yayınlanması ile ve yakın zamanda Aldus PageMak [83.33% yüklendi]
er gibi Lorem Ipsum sürümleri içeren masaüstü yayı [91.67% yüklendi]
ncılık yazılımları ile popüler olmuştur. [100% yüklendi]

 

Basit Virüs Tarama Sınıfı

<?php
class virusTarama{
	var $virus;
	function virusTarama($icerik){
		$this->activexTarama($icerik);
		$this->exeTarama($icerik);
		$this->dllTarama($icerik);
		$this->binTarama($icerik);
		$this->batTarama($icerik);
		$this->soTarama($icerik);
		die("Virüs Bulunamadı");
	}
	function activexTarama($icerik){
		$start = 'ActiveXObject(';
    	$end = ')';
    	preg_match("/$start(.*)$end/s", $icerik, $hesapla);
    	foreach($hesapla as $anahtar => $deger){// allows AJAX Call 
			if($deger != '"Msxml2.XMLHTTP"' || $deger != '"Microsoft.XMLHTTP"'  || $deger != "'Msxml2.XMLHTTP'"  || $deger != "'Microsoft.XMLHTTP'"){
				$this->virus[]="ActiveX";								
				$this->buldum();								
			}
		}
	}
	function exeTarama($icerik){
		if(strrpos($icerik, '.exe')){
			$this->virus[]="Exe";		
			$this->buldum();								
		}
	}
	function dllTarama($icerik){
		if(strrpos($icerik, '.dll')){
			$this->virus[]="Dll";		
			$this->buldum();								
		}
	}
	function binTarama($icerik){
		if(strrpos($icerik, '.bin')){
			$this->buldum();								
		}
	}
	function batTarama($icerik){
		if(strrpos($icerik, '.bat')){
			$this->virus[]="Bat";		
			$this->buldum();								
		}
	}
	function soTarama($icerik){
		if(strrpos($icerik, '.so')){
			if(!strrpos($icerik, '.source')){
			$this->virus[]="So";		
			$this->buldum();								
			}
		}
	}
	function buldum(){
		print_r($this->virus);
		die('!!!Virüs Olma İhtimali. Güvensiz İçerik!!!');
	}
}
new virusTarama(file_get_contents("https://www.ulusanyazilim.com/"));
?>

Çıktısı

Virüs Bulunamadı

 

Koyulaşan Çubuk Çizme Sınıfı

<?php
class ciz{
	var $resim;
	function fark($basla,$bitir){
		if ($basla >= $bitir)
			$fark = $basla - $bitir;
		else
			$fark = $bitir - $basla;
		return $fark;
	}
	function cizim($basla,$bitir,$x,$genislikAdim){
		if ($basla > $bitir)	
			$renk = $basla - $genislikAdim * $x;
		else
			$renk = $basla + $genislikAdim * $x;
		return $renk;
	}	
	function olustur($genislik,$yukseklik,$renkbasla,$renkbitir){
		header("Content-Type: image/jpeg");
		$this->resim = @ImageCreate($genislik,$yukseklik) or die ("Görüntü Oluşturulamadı");
		$kirmiziFark = $this->fark($renkbasla[0],$renkbitir[0]);
		$yesilFark = $this->fark($renkbasla[1],$renkbitir[1]);
		$maviFark = $this->fark($renkbasla[2],$renkbitir[2]);
		$kirmiziAdim = $kirmiziFark / $genislik;
		$yesilAdim = $yesilFark / $genislik;
		$maviAdim = $maviFark / $genislik;
		$yukseklik = $yukseklik-1;
		for ($x=0; $x<=$genislik; $x++){
			$renk = ImageColorAllocate($this->resim,$this->cizim($renkbasla[0],$renkbitir[0],$x,$kirmiziAdim),
				$this->cizim($renkbasla[1],$renkbitir[1],$x,$yesilAdim),
				$this->cizim($renkbasla[2],$renkbitir[2],$x,$maviAdim));	
			imageline($this->resim,$x,"0",$x,$yukseklik,$renk);
		}
		imagejpeg($this->resim);
		imagedestroy($this->resim);
	}
}
$resim=new ciz;
//->olustur(genişlik,yükseklik,rgb renk1,rgb renk2);
$resim->olustur(50,300,[150,0,0],[255,255,255]);
?>

Çıktısı

Dosyaları Dahil Etme Sınıfı

<?php
class dosyaDahilEt{
	var $dosyaDizi;
	var $yontem;
	function dosyaDahilEt($dosyalar=null,$yontem='include'){
		if(!$dosyalar) return false;
		$this->dosyaDizi = explode(",",$dosyalar);
		$this->yontem = $yontem; 
		foreach($this->dosyaDizi as $yol){
			eval($this->yontem.'(str_replace(".php","",trim($yol)).".php");');
		}
	}
}
new dosyaDahilEt("deneme.php, test.php","require_once");
?>

deneme.php

1

test.php

2

Çıktısı

12

 

Sql Sorgu Kontrol Sınıfı

<?php
class sqlKontrol{
	var $id_alan;
	var $id_deger;
	function sec($tablo,$alan,$deger){
		$sorgu="SELECT * FROM $tablo WHERE ";
		for($c=count($alan);$c>0;$c--) {
			$id=$c-1;
			$sorgu.=" ".$alan[$id]."='".$deger[$id]."' ";
			if($c-1!=0){
				$sorgu.=" AND ";
			}
		}
		return $sorgu;
	}
	function guncelle($tablo,$alan,$deger){
		$sorgu="UPDATE $tablo SET ";
		for($c=count($alan);$c>0;$c--) {
			$id=$c-1;
			$sorgu.=" ".$alan[$id]."='".$deger[$id]."' ";
			if($c-1!=0){
				$sorgu.=" , ";
			}
		}
		$sorgu.=" WHERE $this->id_alan = '$this->id_deger'";
		return $sorgu;
	}
	function ekle($tablo,$alan,$deger){
		$sorgu="INSERT INTO $tablo SET ";
		for($c=count($alan);$c>0;$c--) {
			$id=$c-1;
			$sorgu.=" ".$alan[$id]."='".$deger[$id]."' ";
			if($c-1!=0){
				$sorgu.=" , ";
			}
		}
		return $sorgu;
	}
	function sil($tablo,$alan,$deger){
		$sorgu="DELETE FROM $tablo WHERE ";
		for($c=count($alan);$c>0;$c--) {
			$id=$c-1;
			$sorgu.=" ".$alan[$id]."='".$deger[$id]."' ";
			if($c-1!=0){
				$sorgu.=" AND ";
			}
		}
		return $sorgu;
	}
} 
$data = new sqlKontrol;
echo $data->sec('table',['name1','name2'],['value1','value2']);
echo "<br>";
$data->id_alan="id";
$data->id_deger="1";
echo $data->guncelle('table',['name1','name2'],['value1','value2']);
echo "<br>";
echo $data->ekle('table',['name1','name2'],['value1','value2']);
echo "<br>";
echo $data->sil('table',['name1','name2'],['value1','value2']);
?>

Çıktısı

SELECT * FROM table WHERE name1='value1' 
SELECT * FROM table WHERE name2='value2' AND name1='value1' 
UPDATE table SET name2='value2' , name1='value1' WHERE id = '1'
INSERT INTO table SET name2='value2' , name1='value1' 
DELETE FROM table WHERE name2='value2' AND name1='value1'

 

Rastgele Fıkralar Sınıfı

<?php
class fikra{
	function getir(){
	        //www.fikralarim.com © 2006-2018 FIKRALARIM.com
		$site="http://www.fikralarim.com";
		$fikra=file_get_contents($site);
		preg_match('/<H2>(.*?)<\/H2><img(.*?)>(.*?)<div/si',$fikra,$sonuc);
		return ["baslik"=>$sonuc[1],"fikra"=>$sonuc[3]];
	}
}
$fikra = new fikra();
print_r($fikra->getir());
?>

Çıktısı

Array
(
    [baslik] => Köpek Kalbi
    [fikra] => Kalp hastası bir delikanlıya köpek kalbi nakledilmişti. Delikanlı bir süre ameliyatı yapan cerraha gitti :<br />- Doktor bey, bir süredir kötü bir huy edindim. Ne zaman bir telgraf direğinin yanından geçsem, bir ayağım havaya kalkıyor!<br /><br />

)

 

Resmin Değişik Renk Versiyonlarını Almak (Gri, Kırmızı, Yeşil, Mavi)

gif.php içeriği

<?php
class renk{
	var $resim;
	var $renk;
	function islem(){
		$toplam=imagecolorstotal($this->resim);
		for($i=0;$i<$toplam;$i++){
			 $eski=imagecolorsForIndex($this->resim,$i);
			 $ortak=(int)($eski['red']+$eski['green']+$eski['blue'])/3;
			 if(!$this->renk){
				 imagecolorSet($this->resim,$i,$ortak,$ortak,$ortak);
			 }elseif($this->renk==1){
				 imagecolorSet($this->resim,$i,$ortak,0,0);
			 }elseif($this->renk==2){
				 imagecolorSet($this->resim,$i,0,$ortak,0);
			 }elseif($this->renk==3){
				 imagecolorSet($this->resim,$i,0,0,$ortak);
			 }
		}
	}
	function degistir($resim,$renk){
		$resim=imagecreatefromgif($resim);
		$this->resim=$resim;
		$this->renk=$renk;
		$this->islem();
		header("Content-Type: image/gif");
		return imageGif($resim);
	}
}
$renk=new renk();
echo $renk->degistir($_GET["resim"],$_GET["renk"]);
?>

index.html içeriği

<img border=0 src="gif.php?resim=http://ulusanyazilim.com/wp-content/uploads/2018/05/dunya-300x300.gif&renk=0">
<img border=0 src="gif.php?resim=http://ulusanyazilim.com/wp-content/uploads/2018/05/dunya-300x300.gif&renk=1">
<img border=0 src="gif.php?resim=http://ulusanyazilim.com/wp-content/uploads/2018/05/dunya-300x300.gif&renk=2">
<img border=0 src="gif.php?resim=http://ulusanyazilim.com/wp-content/uploads/2018/05/dunya-300x300.gif&renk=3">

Çıktısı

Veritabanı Bağlantı Bilgilerini Korumak

<?php
class db {
	var $veritabaniadi;
	var $link;
	var $hatanumarasi;
	var $hata;
	function db() {
		$sunucu = "localhost";
		$veritabani = "php";
		$kullaniciadi = "root";
		$sifre = "";
		$this->veritabaniadi = $veritabani;
		$this->link = mysqli_connect($sunucu,$kullaniciadi,$sifre,$veritabani);
		$this->hatanumarasi = mysqli_errno($this->link);
		$this->hata = mysqli_error($this->link);

	}
	function veritabaniadi() {
		return $this->veritabaniadi;
	}
	function link(){
		return $this->link;
	}
	function hatanumarasi(){
		return $this->hatanumarasi;
	}
	function  hata() {
		return $this->hata;
	}
}
$db=new db();
$sorgu=mysqli_query($db->link(),"select * from php limit 1");
while($s=mysqli_fetch_array($sorgu)){
	echo $s["id"]."<br>";
	echo $db->hata."<br>";
	echo $db->hatanumarasi."<br>";
	echo $db->veritabaniadi;
}
?>

Çıktısı

1

0
php