PHP ile ufak bir banner görüntüleme scripti

Bir arkadaşımın ricası üzerine hazırladığım ufak bir banner görüntüleme scripti. Bannerlarınızı çeşitli nedenlerle direkt olarak çağırmak istemediğiniz veya gösterim sayısını kayıt altına almak istediğiniz durumlarda kullanabilirsiniz.

Aşağıdaki kodları banner.php ismiyle kaydedin

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php

  /*
    Author: Caner ÖNCEL
    URI: http://www.egonomik.com/
    Kullanım: <img src="banner.php?id=1" alt="" />
  */


  // Banner tanımlamaları
  // Dosya yolu veya URL belirtebilirsiniz
  // Kullanılabilir uzantılar: jpg, gif, png
    $bannerList = array(
      1 => "images/banner.jpg",
      2 => "images/banner.png",
      3 => "images/banner.gif",
      4 => "http://www.site.com/banner.jpg"
    );

  // Gelen ID'yi tanımla
    $id = htmlspecialchars($_GET['id']);  
 
  // ID mevcut değilse hata ver
    if(!array_key_exists($id, $bannerList)) {
      die("Hata: Geçersiz banner ID");
    }        
 
  // Banner dosyasını çek, ulaşılamıyorsa hata ver
    $banner = file_get_contents($bannerList[$id]) or die("Hata: Banner dosyası mevcut değil!");                                  
 
  // Banner uzantısını algıla
    $ext = end(explode('.',$banner));      
       
    switch ($ext) {
    case "png":                
        $header = "image/png";
        break;
    case "jpg":  
        $header = "image/jpeg";
        break;
    case "gif":
        $header = "image/gif";
        break;
    }  
   
  // Sorun yoksa ekrana bastır              
    header("Content-Type: $header");
    echo $banner;          
?>

Bannerı görüntülemek istediğiniz yerden aşağıdaki biçimde çağırın
(id=1 parametresi banner ID’sini ifade eder).

1
<img src="banner.php?id=1" alt="" />

Bunun için demo eklemeye gerek duymadım, sonuç olarak çağrılan resim dosyası ekrana bastırılıyor.

İlginizi Çekebilecek Diğer İçerikler

Facebook Yorumları

3 Yorum

  1. Cemal Burak AYGÜN

    Paylaşım için teşekkürler.
    Çok fazla PHP bilgim yok; ama kodda bir yer dikkatimi çekti. switch kodunda case’in png olduğu yerde “image/jpeg”; case’in jpg olduğu yerde “image/png” yazıyor. Sanki ters yazılmış gibi bir izlenim uyandı bende. Eğer öyle olması gerekiyorsa kusura bakmayın. Dediğim gibi çok fazla PHP bilgim yok. Sadece olası bir hatayı uyarmak istedim.

Uyarı: Yorumlarda link kullanmayınız. Link içeren yorumlar otomatik olarak spam kabul edilmektedir.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir