• 31-07-2009, 18:57:18
    #46
    Projelerimde kullanmak amaçlı hızla bir araya getirdiğim sayfalama sınıfı
    <?php 
    ////////////////////////////////////////////////////
    //                                                                                            	  
    //	Code By İsmail Perim                                                 
    //	Dosya                : /sayfalama.php
    //	Açıklama            : Sayfalandırma Sınıfı
    //							
    ////////////////////////////////////////////////////
     
    class Sayfalama
    {
    	public $KayitSayisi = 10;
    	public $Sorgu = "";
    	public $ToplamKayit = "";
    	public $Linkler = "";
    	public $Sayfa = "";
    	public function Sayfalama($_Sorgu,$_TopKay,$_Sayfa,$_KayitSayisi=10)
    	{
    		$this->KayitSayisi = $_KayitSayisi;
    		$this->Sorgu = $_Sorgu ;
    		$this->ToplamKayit = $_TopKay;
    		$this->Sayfa = $_Sayfa;
    	}
    	public function Olustur()
    	{
     
    			$adet=15;
     
    			if($_GET['sayfa']==0)
    			{
    				$_GET['sayfa']=1;
    				$sayfa=0;
    				$kayit=0;
    			}
    			elseif($_GET['sayfa']==1)
    			{
    				$sayfa=0;
    				$kayit=0;
    			}
    			else
    			{
    				$sayfa=$_GET['sayfa'];
    				$kayit=($sayfa*$adet-$adet);
    			}
     
    			$sorgu_temp = $this->Sorgu."   LIMIT $kayit,$adet  ";
    			$this->Sorgu=mysql_query($sorgu_temp);
     
    			#######################   LİNKLER  #######################
     
    					$sonraki=$_GET['sayfa']+1;
    					$onceki=$_GET['sayfa']-1;
    										if($onceki>0)
    					{
    						$this->Linkler.='<a href="?'.$this->Sayfa.'sayfa='.$onceki.' " style="text-decoration:none;"> [ Önceki ] </a>';
    					}
    					$say=$this->ToplamKayit;
    					$link=ceil($say/$adet);
    					$nokta=0;
    					$nokta1=0;
    					for($i=1;$i<$link+1;$i++)
    					{
     
    						if($i<$sayfa+6 && $i>$sayfa-6)
    						{
    							if((int)$sayfa==$i)
    							{
    								$this->Linkler.='<b>';
    							}
     
    							$this->Linkler.='<a href="'.$this->Sayfa.'sayfa='.$i.'" style="text-decoration:none;"> ['.$i.'] </a>';
     
    							if((int)$sayfa==$i)
    							{
    								$this->Linkler.='</b>';
    							}
     
    						}	
    						else
    						{
    							if( $i<$sayfa+6 && $nokta== 0)
    							{
    								$this->Linkler.=  '<a href="'.$this->Sayfa.'sayfa='.($sayfa-5).' " style="text-decoration:none;"> [ ... ] </a>';
    								$nokta = 1;
    							}	
    							if( $i>$sayfa-6 && $nokta1== 0)
    							{
    								$this->Linkler.=  '<a href="'.$this->Sayfa.'sayfa='.($sayfa+5).' " style="text-decoration:none;"> [ ... ] </a>';
    								$nokta1 = 1;
    							}	
     
    						}
    					}
     
    					if($sonraki<$link+1)
    					{
    						$this->Linkler.='<a href="'.$this->Sayfa.'sayfa='.$sonraki.' " style="text-decoration:none;"> [ Sonraki ] </a>';
    					}
     
     
    			#######################  / LİNKLER #######################
    	}
    }
     
     
     
    ?>
    Örnek Kullanımı :
    <?php////////////////////////////////////////////////////
    //                                                                                            	  
    //	Code By İsmail Perim                                                 
    //	Dosya                : /sayfalama_ornek.php
    //	Açıklama            : Sayfalandırma Sınıfı Örneği
    //							
    ////////////////////////////////////////////////////
     
    # Sayfalama Sınıfımızı Ekliyoruz
    include_once "sayfalama.php";
     
    # MySQL Bağlantılarını Yaptığımız Sayfamız
    include_once "baglanti.php";
     
    # Toplam Kayıt Sayısını Alıyoruz.
    $KayitSayisi = mysql_num_rows(mysql_query("SELECT * FROM Tablo"));
     
    #Bir Sayfada Gösterilecek Kayıt Sayısı
    $KacKayit = 15;
     
    # Yeni Bir Sayfalama Sınıfı Türetiyoruz
    $Sayfa = new Sayfalama("SELECT * FROM Tablo ",$KayitSayisi,"index.php?Islem=KayitListe&",$KacKayit);
     
    # Sınıfımız Gerekli İşlemleri Yaparak Sorguları Sayfalandırmaya Uygun Hale Getiriyor
    $Sayfa->Olustur();
     
    # Oluşan Sayfa Linklerini Ekrana Bastırıyoruz
    echo $Sayfa->Linkler;
     
    # Sayfalandırma Sonucu Uygun Hale Getirilen Sorgumuzu İşlemlerimiz İçin Kullanıyoruz.
    while($Veri = mysql_fetch_array($Sayfa->Sorgu))
    {
         #... İşlemlerimiz ... #
    }
    ?>
  • 02-08-2009, 15:50:11
    #47
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba belirttiğiniz dizindeki tüm jpeg | jpg resimlerine belirlediğiniz logoyu basan kodu veriyorum

    kodu yazan // Lavandiz

    
    <?
    //	Coder By Lavandiz
    //	02 Ağustos 2009 Pazar
    function logoYapistir($img,$save)
    {
    @header("Content-type: image/jpeg");
    
    
    $x = @getimagesize($img);
    
    $sw = $x[0];
    
    $sh = $x[1];
    
    $w = $x[0];;
    $h = $x[1];
    
    
    $im = @ImageCreateFromJPEG ($img) or 
    $im = @ImageCreateFromPNG ($img) or 
    $im = @ImageCreateFromGIF ($img) or
    $im = false; 
    
    if (!$im) {
    	@readfile ($img);
    } else {
    	$thumb = @ImageCreateTrueColor ($w, $h);
    	if ($sw>=400){
    	$xx = 79;
    	$yy = 185;
    	$grafik=@imagecreatefrompng("logo_file/logo1.png");// Büyük resime basılacak büyük logo
    	}elseif($sw<=399 && $sw>=240){
    	$xx = 4;
    	$yy = 110;
    	$grafik=@imagecreatefrompng("logo_file/logo2.png"); // orta boylu reisme basılacak orta boylu logo
    	}
    	elseif($sw >150 && $sw<=240){
    	$xx = 50;
    	$yy = 100;
    	$grafik=@imagecreatefrompng("logo_file/logo3.png");// küçük resime basılacak küçük logo
    	}else
    	{
    	$xx = 0;
    	$yy = 0;
    	$grafik=@imagecreatefrompng("logo_file/logo3.png");	// en büyük resime basılacak büyük logo
    	}
    	$en=imagesx($grafik);
    	$boy=imagesy($grafik);
    	$a=$sw/3;
    	$b=$sh/3;
    	ImagecopyReSampled($im, $grafik, $xx, $yy,0 ,0 , $en, $boy, $en, $boy);
        ImageCopyResampled ($thumb, $im, 0, 0, 0, 0, $w, $h, $sw, $sh);
    
    	
    	$b=$h/3;
    
    	@ImageJPEG ($thumb,$save,100);//Resim kalitesi %100 olarak kaydedilmekte burdan kalitesi ayarlanabilir
    	@imagedestroy($thumb);
    }
    }
    
    
    
    $m = array();
    $m = glob("img/p/*.jpg"); // dizindeki tüm "jpg" resimleri diziye atılıyor
    
    for($i=0;$i<count($m);$i++)
    	{
    			if(file_exists("img/p/".$m[$i])) // dosyanın olup olmadıgı tekrardan kontrol ediliyor
    			{
    			logoYapistir("img/p/".$m[$i],"img/p2/".$m[$i]); // logo yapıştırma işlemi tamamdır :))
    			}
    	}
    
    
    ?>
  • 05-08-2009, 14:39:08
    #48
    <?php
    ////////////////////////////////////////////////////
    //                                                                                            	  
    //	Code By İsmail Perim                                                 
    //	http://www.ismailperim.net
    //	<ismailperim@gmail.com>
    //	
    //	Dosya                : acilir_menu.php
    //	Açıklama             : Açılır Menü Sınıfı
    //	D. Sürüm             : 1.1
    //	Değişim               : 11.05.2009
    //							
    ////////////////////////////////////////////////////
    class AcilirMenu
    {
    public $Sonuc;
    	public function AcilirMenu($_Sorgu,$_YaziKolon,$_DegerKolon,$_Name,$_ID,$_CssSinif,$_Stil,$_JS,$_SeciliDeğer="0")
    	{
    		$_Sorgu = mysql_query($_Sorgu);
    		if($_Sorgu)
    		{
    			$this->Sonuc .= "<select ";
    			if(!empty($_Name))
    			{
    				$this->Sonuc .= " name='".$_Name."' ";
    			}
    			if(!empty($_ID))
    			{
    				$this->Sonuc .= " id='".$_ID."' ";
    			}
    			if(!empty($_CssSinif))
    			{
    				$this->Sonuc .= " class='".$_CssSinif."' ";
    			}
    			if(!empty($_Stil))
    			{
    				$this->Sonuc .= " style='".$_Stil."' ";
    			}
    			if(!empty($_JS))
    			{
    				$this->Sonuc .= "  ".$_JS."  ";
    			}
    			$this->Sonuc .= ">";
    			while($_Yazdir=mysql_fetch_array($_Sorgu))
    			{
    				$_SeciliDurum = " ";
    				if((string)$_SeciliDeğer == (string)$_Yazdir[$_DegerKolon])
    				{
    					$_SeciliDurum = " selected ";
    				}
    				$this->Sonuc .= '<option value="'.$_Yazdir[$_DegerKolon].'" '.$_SeciliDurum.'>'.$_Yazdir[$_YaziKolon].'</option>';
    			}
    			$this->Sonuc .= "</select>";
    			return $this->Sonuc; 
    		}	
    	}
    }
    Örnek Kullanım:
    Iller adıyla bir mysql tablomuz olduğunu düşünürsek;
    -------------------------------------------------
    Iller
    +---------------+
    |--ID--|---Ad---|
    +---------------+
    |--35--|--İzmir--|
    +---------------+
    |--45--|-Manisa-|
    +---------------+
    <?php
    # MySQL Bağlantılarını Yaptığımızı ve Sayfaya Eklediğimizi Varsayıyoruz...
    $Iller = new AcilirMenu("SELECT * FROM Iller ","Ad","ID","IllerSelectName","IllerSelectID","CssSinifi","font-size:10px;","onClick='fonksiyon()'","35");
    echo $Iller->Sonuc;
    ?>
  • 08-08-2009, 23:12:22
    #49
    Platin üye
    teşekkürler
  • 15-08-2009, 16:54:15
    #50
    aytaccici adlı üyeden alıntı: mesajı görüntüle
    Merhaba belirttiğiniz dizindeki tüm jpeg | jpg resimlerine belirlediğiniz logoyu basan kodu veriyorum
    kodu yazan // Lavandiz
    <?
    //	Coder By Lavandiz
    //	02 Ağustos 2009 Pazar
    function logoYapistir($img,$save)
    {
    @header("Content-type: image/jpeg");
    $x = @getimagesize($img);
    $sw = $x[0];
    $sh = $x[1];
    $w = $x[0];;
    $h = $x[1];
    $im = @ImageCreateFromJPEG ($img) or 
    $im = @ImageCreateFromPNG ($img) or 
    $im = @ImageCreateFromGIF ($img) or
    $im = false; 
    if (!$im) {
    	@readfile ($img);
    } else {
    	$thumb = @ImageCreateTrueColor ($w, $h);
    	if ($sw>=400){
    	$xx = 79;
    	$yy = 185;
    	$grafik=@imagecreatefrompng("logo_file/logo1.png");// Büyük resime basılacak büyük logo
    	}elseif($sw<=399 && $sw>=240){
    	$xx = 4;
    	$yy = 110;
    	$grafik=@imagecreatefrompng("logo_file/logo2.png"); // orta boylu reisme basılacak orta boylu logo
    	}
    	elseif($sw >150 && $sw<=240){
    	$xx = 50;
    	$yy = 100;
    	$grafik=@imagecreatefrompng("logo_file/logo3.png");// küçük resime basılacak küçük logo
    	}else
    	{
    	$xx = 0;
    	$yy = 0;
    	$grafik=@imagecreatefrompng("logo_file/logo3.png");	// en büyük resime basılacak büyük logo
    	}
    	$en=imagesx($grafik);
    	$boy=imagesy($grafik);
    	$a=$sw/3;
    	$b=$sh/3;
    	ImagecopyReSampled($im, $grafik, $xx, $yy,0 ,0 , $en, $boy, $en, $boy);
        ImageCopyResampled ($thumb, $im, 0, 0, 0, 0, $w, $h, $sw, $sh);
    	$b=$h/3;
    	@ImageJPEG ($thumb,$save,100);//Resim kalitesi %100 olarak kaydedilmekte burdan kalitesi ayarlanabilir
    	@imagedestroy($thumb);
    }
    }
    $m = array();
    $m = glob("img/p/*.jpg"); // dizindeki tüm "jpg" resimleri diziye atılıyor
    for($i=0;$i<count($m);$i++)
    	{
    			if(file_exists("img/p/".$m[$i])) // dosyanın olup olmadıgı tekrardan kontrol ediliyor
    			{
    			logoYapistir("img/p/".$m[$i],"img/p2/".$m[$i]); // logo yapıştırma işlemi tamamdır :))
    			}
    	}
    ?>
    kod bende hata verdi?
  • 25-08-2009, 16:42:19
    #51
    ErsinAcar adlı üyeden alıntı: mesajı görüntüle
    Güvenlik kodu uygulaması örnek ektedir..
    <?php
    function olustur () {
        $fontnum=6;
        $text = strtoupper(substr(rand(0,999999999999),-3));
        session_start();
        $_SESSION["guv"] = $text;
        $im = imagecreatetruecolor(125, 75);
        $white = imagecolorallocate($im, 255, 255, 255);
        imagefilledrectangle($im, 0, 0, 400, 200, $white);
        for ($i=0;$i<strlen($text);$i++)
            {
                $font = rand(1,$fontnum).".TTF";
                if ((rand(2,6)%2)) { $angel=rand(0, 30); } else { $angel=rand(330, 360); }
                imagettftext($im, 25, $angel, 10+$i*35, 49, imagecolorallocate($im, rand(1,250), rand(1,250), rand(1,250)), $font,$text[$i]);
            }
        $x=100; $y=100; $size=200;
        header("Content-type: image/png");
        imagepng($im);
        imagedestroy($im);
    }
    olustur();
    ?>
    Kullanımı;
    <img src="imgcode.php">
    farklı bi yere upload etmek mümkünmü
  • 17-10-2009, 19:59:25
    #52
    Üyeliği durduruldu
    Sitenizin kaynak kodlarını sıkıştırıp boyutunu ortalama yarı yarıya düşürerek bw kazancı sağlar.
    $gzip_pres = true;
    function gzipKontrol()
    {
        $kontrol = str_replace(" ","",
            strtolower($_SERVER['HTTP_ACCEPT_ENCODING'])
        );
        $kontrol = explode(",", $kontrol);
        return in_array("gzip", $kontrol);
    }
    function bosluksil($kaynak)
    {
        return preg_replace("/\s+/", " ", $kaynak);
    }
    function kaynak_presle($kaynak)
    {
        global $gzip_pres;
        $sayfa_cikti = bosluksil($kaynak);
        if (!gzipKontrol() || headers_sent() || !$gzip_pres) 
            return $sayfa_cikti;
        header("Content-Encoding: gzip");
        return gzencode($sayfa_cikti);
    }
    kullanımı;
    sayfanın en başına ekleyin;
    ob_start("kaynak_presle");
  • 23-12-2009, 19:05:40
    #53
    Üyeliği durduruldu
    Youtube flv çeken, TTnet dns sorunu çıkmaması için, ip şeklinde link veren fonksiyonum;

    function youtubeFlv($url)
    {
        for ($i = 69; $i <= 76; $i++) {
            $ytipx[] = '208.117.236.' . $i;
        }
        $ytip = $ytipx[array_rand($ytipx)];
        if (preg_match('@v=@', $url)) {
            $urly = parse_url($url);
            parse_str($urly['query'], $urlx);
            $id = $urlx['v'];
        } else {
            $id = $url;
        }
        $s = 'http://' . $ytip . '/watch?v=' . $id;
        $sayfa = file_get_contents($s);
        preg_match('^\'SWF_ARGS\': {(.*?)},^', $sayfa, $ciktix);
        preg_match('^"fmt_url_map": "(.*?)"^', $ciktix[1], $cikti);
        
        if (preg_match_all('^http://v[0-9]+.lscache[0-9]+.[a-zA-Z0-9]+.youtube.com/videoplayback\?.*?,([0-9]+)^', urldecode($cikti[1]), $vid)) {
            $xy = $vid[0][array_search('5', $vid[1])];
            if (!$xy) $xy = $vid[0][array_search('35', $vid[1])];
            if (!$xy) $xy = $vid[0][array_search('34', $vid[1])];
            $flv  = preg_replace('@,[0-9]+@', '', $vid[0][array_search('5', $vid[1])]);
        } else {
            $flv  = preg_replace(array('@[0-9]+\|@', '@,[0-9]+@'), '', urldecode($cikti[1]));
        }
        preg_match('@http://(.*?)/@', $flv, $srv);
        $flvx = str_replace($srv[1], gethostbyname($srv[1]), $flv);
        return $flvx;
    }
    kullanım 1;
    echo youtubeFlv('GxUOZhnqA04');
    kullanım 2;
    echo youtubeFlv('http://www.youtube.com/watch?v=GxUOZhnqA04');
    çıktı;
    http://74.125.97.92/videoplayback?ip=0.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor&fexp=900073%2C905207&algorithm=throttle-factor&itag=34&ipbits=0&burst=40&sver=3&expire=1264010400&key=yt1&signature=AF1220D1FE732B45C83E42A4D67CFE1BEC9CA38A.B4C915A19B2BCFCC451F1F49FAABB17498443277&factor=1.25&id=1b150e6619ea034e
    ==================================================

    Türkçe karakter destekli ucwords fonksiyonum, ayrıca parantez içindeki kelimelerinde baş harflerini büyütür.

    function uc_words($gelen)
    {
        $kc = str_split('abcçdefghıijklmnoöpqrsştuüvwxyz');
        $by = str_split('ABCÇDEFGHIİJKLMNOÖPQRSŞTUÜVWXYZ');
        $kelime = preg_split('^\s+^si', $gelen);
        foreach ($kelime as $k) {
            $ilk = substr($k, 0, 1);
            if ($ilk == '(' || $ilk == '[' || $ilk == '{') {
                $kx = substr($k, 1, strlen($k));
                $veri[] = substr($k, 0, 1)
                        . str_replace($kc, $by, substr($kx, 0, 1))
                        . substr($kx, 1, strlen($kx));
            } else {
                $veri[] = str_replace($kc, $by, $ilk) 
                        . substr($k, 1, strlen($k));
            }
            unset($ilk, $verix);
        }
        return join(' ', $veri);
    }
    kullanım;

    echo uc_words('bir şarkısın sen ömür boyu sürecek');
    Çıktı;
    Bir Şarkısın Sen Ömür Boyu Sürecek
    ==================================================

    Türkçe karakter destekli, strtolower yerine kullanabileceğiniz yazı küçültme fonksiyonum.

    function kucult($x)
    {
         return strtolower(strtr($x, 'IİÇŞÜÖĞ', 'ıiçşüöğ'));
    }
    kullanım;
    kucult('BİŞEYLER');
    çıktı;
    bişeyler
    ==================================================

    Türkçe karakter destekli, strtoupper yerine kullanabileceğiniz yazı büyütme fonksiyonum.

    function buyut($x)
    {
        return strtoupper(strtr($x, 'ıiçşüöğ', 'IİÇŞÜÖĞ'));
    }
    kullanım;
    buyut('bişeyler');
    çıktı;
    BİŞEYLER
    ==================================================

    Linkleri seo için permalink yapan fonksiyonum;
    function seo_link($gelen) 
    {
        return preg_replace('@\-+@', '-', 
               preg_replace('@[^a-zA-Z0-9]@', '-', 
               strtr(kucult($gelen),'çöğıüş', 'cogius')));
    }
    kullanım;
    echo seo_link('HSBC Portföy');
    cikti;
    hsbc-portfoy
    ==================================================

    Kullanıcının browserini almaya yarayan fonksiyon;

    function browser_al($useragent = '')
    {
        if ($useragent == '') 
        { 
            $useragent = $_SERVER['HTTP_USER_AGENT']; 
        }
        $browser_name = '';
        $browsers = array();
        
        $browsers[] = array('name' => 'AmigaVoyager', 'useragent' => 'AmigaVoyager');
        $browsers[] = array('name' => 'Apple Generic', 'useragent' => 'CFNetwork');                
        $browsers[] = array('name' => 'Camino', 'useragent' => 'Camino');
        $browsers[] = array('name' => 'Ensemble2', 'useragent' => 'Ensemble2');
        $browsers[] = array('name' => 'Epiphany', 'useragent' => 'Epiphany');
        $browsers[] = array('name' => 'firefox', 'useragent' => 'Firefox');  
        $browsers[] = array('name' => 'firefox', 'useragent' => 'Firefox/1.0');
        $browsers[] = array('name' => 'firefox', 'useragent' => 'Firefox/1.5');
        $browsers[] = array('name' => 'firefox', 'useragent' => 'BonEcho');
        $browsers[] = array('name' => 'firefox', 'useragent' => 'Firefox/2');
        $browsers[] = array('name' => 'firefox', 'useragent' => 'Firefox/3');
        $browsers[] = array('name' => 'firefox', 'useragent' => 'GranParadiso');
        $browsers[] = array('name' => 'firefox', 'useragent' => 'Phoenix');
        $browsers[] = array('name' => 'firefox', 'useragent' => 'Firebird');
        $browsers[] = array('name' => 'Galeon', 'useragent' => 'Galeon');
        $browsers[] = array('name' => 'Google Chrome', 'useragent' => 'chrome');
        $browsers[] = array('name' => 'iCab', 'useragent' => 'iCab');
        $browsers[] = array('name' => 'Iceweasel', 'useragent' => 'Iceweasel');
        $browsers[] = array('name' => 'ie', 'useragent' => 'MSIE');  
        $browsers[] = array('name' => 'ie', 'useragent' => 'MSIE5.');
        $browsers[] = array('name' => 'ie', 'useragent' => 'MSIE6.');
        $browsers[] = array('name' => 'ie', 'useragent' => 'MSIE7.');
        $browsers[] = array('name' => 'ie', 'useragent' => 'MSIE8.');
        $browsers[] = array('name' => 'K-Meleon', 'useragent' => 'K-Meleon');
        $browsers[] = array('name' => 'Konqueror', 'useragent' => 'Konqueror');
        $browsers[] = array('name' => 'Lynx', 'useragent' => 'Lynx');
        $browsers[] = array('name' => 'Mozilla Minefield', 'useragent' => 'Minefield');
        $browsers[] = array('name' => 'Netscape', 'useragent' => 'Netscape');
        $browsers[] = array('name' => 'NewsCopier', 'useragent' => 'NewsCopier');
        $browsers[] = array('name' => 'opera', 'useragent' => 'Opera');
        $browsers[] = array('name' => 'Pocket Internet Explorer', 'useragent' => 'MicrosoftPocketInternetExplorer');
        $browsers[] = array('name' => 'Pocket Internet Explorer', 'useragent' => 'MSPIE');
        $browsers[] = array('name' => 'Radianrss', 'useragent' => 'radianrss');
        $browsers[] = array('name' => 'RssReader', 'useragent' => 'rssreader.com');
        $browsers[] = array('name' => 'Safari', 'useragent' => 'AppleSyndication');
        $browsers[] = array('name' => 'Safari', 'useragent' => 'Safari');
        $browsers[] = array('name' => 'SeaMonkey', 'useragent' => 'SeaMonkey');
        $browsers[] = array('name' => 'Swiftweasel', 'useragent' => 'Swiftweasel');
        $browsers[] = array('name' => 'Thunderbird', 'useragent' => 'Thunderbird');
        $browsers[] = array('name' => 'Vienna', 'useragent' => 'Vienna');
        
        foreach ($browsers as $browser)
        {
            if (stripos(strtolower($useragent), strtolower($browser['useragent'])) !== FALSE)
            {
                $browser_name = $browser['name'];
            }
        }
        unset($browsers, $browser, $useragent);
        
        if ($browser_name)
        {
            return $browser_name;
        }
        else
        {
            return false;
        }  
    }
    ==================================================

    Javascript kullanarak x sürede yönlendirme yapan fonksiyonum;

    function git($url, $sure = 0)
    {
        if ($sure == 0)
            echo '<script>window.location.href = "' . $url . '";</script>';
        else
            echo '<script>setTimeout(\'window.location.href = "' . $url . '";\', ' . ($sure * 1000) . ');</script>';
    }
    kullanım;
    git('index.php', 3); // 3 saniye
    ==================================================

    x karakterden sonra metini kesen akıllı word wrap fonksiyonum;

    function akilli_wordwrap($gelen)
    {
        $exp = explode(" ", $gelen);
    
        foreach ($exp as $e)
        {
            if (strlen($e) > 50)
            {
                $str .= chunk_split($e, 35, " ");
            }
            else
            {
                $str .= $e . " ";
            }
        }
        return $str;
    }
    kullanım;
    echo wordwrap('bilgilendiremediklerimizdenmisinizcesineymişmiş', 20);
    çıktı;
    bilgilendiremedikler imizdenmisinizcesine ymişmiş
    ==================================================

    Gönderilen maillerde türkçe karakter sorunu yaratmayan UTF8 mail sınıfım;

    class UTF8_Mail 
    {
        var $gonderen = '';
        
        public function gonder($kimden, $kime, $konu, $mesaj)
        {
            if ($this->gonderen != '') {
                $kime = $this->gonderen;
            }
            if (utf8mail($kimden, $kime, iconv('latin5', 'utf-8', $konu), iconv('latin5', 'utf-8', $mesaj))) {
                return true;
            }
            return false;
        }
        private function utf8mail($kimden, $kime, $konu, $mesaj) 
        {
            $kimden2 = explode("<", $kimden);
            if (isset($kimden2[0])) {
                $ust = "From: =?UTF-8?B?".base64_encode($kimden2[0])."?= <".$kimden2[1]."\r\n";
            } else {
                $ust = "From: ".$kimden[1]."\r\n";
            }
            $konu ="=?UTF-8?B?".base64_encode($konu)."?=\n";
            $ust .= "Content-Type: text/html; charset=UTF-8; format=flowed \n".
                        "MIME-Version: 1.0 \n" . 
                        "Content-Transfer-Encoding: 8bit \n". 
                        "X-Mailer: PHP \n";
            return mail($kime, $konu, $mesaj, $ust);
        }
    }
    kullanım;
    $gonderen = 'devturkeli@gmail.com';
    $alici = 'devturkeli@php.net';
    $konu = 'utf8 mail test';
    $mesaj = 'kendi kendine mail yollayan adam';
    
    $mail = new UTF8_Mail;
    $mail->gonder($gonderen, $alici, $konu, $mesaj);
    ==================================================

    Email geçerliliğini kontrol etme fonksiyonum;

    function mail_kontrol($email)
    {
        if (preg_match('^[A-Za-z0-9\._-]+[@][A-Za-z0-9\._-]+[\.].[A-Za-z0-9]+^', trim($email))) {
            return TRUE;
        }
        return FALSE;
    }
    kullanım;
    if (mail_kontrol('deneme@deneme.com')) {
        echo 'Email adresi geçerli';
    } else {
        echo 'Email adresi geçersiz';
    }
    ==================================================

    Dosya uzantısı alma fonksiyonum;

    function uzanti($x)
    {
        $i = pathinfo($x);
        return $i['extension'];
    }
    kullanım;
    echo uzanti('asd.hede.xxx.jpg');
    çıktı;
    jpg
    ==================================================

    3-4 yıl önce bir projem için yazdığım Navigatör link oluşturucu, array olarak girilen parametrelere göre navigasyon linkleri oluşturur.

    function navigator_link($parametreler, $stil)
    {
        // div-border:1px solid gray||a-border:1px solid gray
        if ($stil <> NULL)
        {
            $stil_exp = explode("||", $stil);
            if (is_array($stil_exp))
            {
                $tag_stil_1 = explode("#", $stil_exp[0]);
                $tag_stil_2 = explode("#", $stil_exp[1]);
                $tag1_stil = $tag_stil_1[1];
                $tag2_stil = $tag_stil_2[1];
            }
        }
        
        if (is_array($parametreler))
        {
            foreach ($parametreler as $param_key => $param_val)
            {
                $navigator .= '<' . $param_key . ' style="' . $tag1_stil . '">';
                if (is_array($parametreler[$param_key]))
                {
                    foreach ($parametreler[$param_key] as $_param_key => $_param_val)
                    {
                        if (is_array($parametreler[$param_key][$_param_key]))
                        {
                            if ($_param_key == "a")
                            {
                                foreach ($parametreler[$param_key][$_param_key] as $pkey => $pval) // a çıkar
                                {
                                    if (is_array($parametreler[$param_key][$_param_key][$pkey]))
                                    {
                                        foreach ($parametreler[$param_key][$_param_key][$pkey] as $p_val)
                                        {
                                            $z = @array_keys($parametreler[$param_key][$_param_key]);
                                            $navigator .= '<' . $_param_key . ' style="' . $tag2_stil . '" href="' . $p_val . '">' . $z[0] . '</' . $_param_key . '>';
                                        }
                                    }
                                    else
                                    {
                                        $navigator .= '<' . $_param_key . ' style="' . $tag2_stil . '">' . $pval . '</' . $_param_key . '>';
                                    }
                                }
                            }
                            else 
                            {
                                if ($_param_key == "span")
                                {
                                    if (is_array($parametreler[$param_key][$_param_key][$pkey]))
                                    {
                                        foreach ($parametreler[$param_key][$_param_key][$pkey] as $p_val)
                                        {
                                            $z = @array_keys($parametreler[$param_key][$_param_key]);
                                            $navigator .= "<span style='{$tag2_stil}' onclick=\"location.href='" . $p_val . "';\">" . $z[0] . "</a>";
                                        }
                                    }
                                    else
                                    {
                                        $navigator .= '<' . $_param_key . ' style="' . $tag2_stil . '">' . $pval . '</' . $_param_key . '>';
                                    }
                                }
                            }
                        }
                    }
                }
                $navigator .= '</' . $param_key . '>';
            }
        }
        else
        {
            return FALSE;
        }
        return $navigator;
    }
    kullanım;
    $parametreler = array(
        'div' => array
                 (
                    'a' => array
                           (
                               'index' => array('index.php')
                           ), 
                    's' => array
                           (
                               'index' => "yazi"
                           )
                 )
     );
  • 21-01-2010, 20:22:33
    #54
    devturkeli adlı üyeden alıntı: mesajı görüntüle
    Sitenizin kaynak kodlarını sıkıştırıp boyutunu ortalama yarı yarıya düşürerek bw kazancı sağlar.
    $gzip_pres = true;
    function gzipKontrol()
    {
        $kontrol = str_replace(" ","",
            strtolower($_SERVER['HTTP_ACCEPT_ENCODING'])
        );
        $kontrol = explode(",", $kontrol);
        return in_array("gzip", $kontrol);
    }
    function bosluksil($kaynak)
    {
        return preg_replace("/\s+/", " ", $kaynak);
    }
    function kaynak_presle($kaynak)
    {
        global $gzip_pres;
        $sayfa_cikti = bosluksil($kaynak);
        if (!gzipKontrol() || headers_sent() || !$gzip_pres) 
            return $sayfa_cikti;
        header("Content-Encoding: gzip");
        return gzencode($sayfa_cikti);
    }
    kullanımı;
    sayfanın en başına ekleyin;
    ob_start("kaynak_presle");
    Hocam bu kod Adsense reklamlarında sorun çıkarmıyor mu?