Resimleri Base 64 ile Encode etmek…

Filed in Kodlama 1 Yorum

Åžimdi nedir bu diyebilirsiniz...

Hemen bir örnek ile bahsedeyim;

Web sayfalarınızda resimleri :

HTML:
  1. <img src="resimkaynagi.jpg">

şeklinde gösteriyoruz genellikle hatta genellikle dememek gerek %99.9 şeklinde :)

Eğer web sayfalarımızda sabit olarak kullandığımız logo vs gibi sabit resimler için base64 ile encode edilmiş resimleri kullanabiliriz.

Bunu online iÅŸlem olarak buradan yapabilirsiniz.

Ayrıca kaynak koddan bakınca kargaşık kurgaşık kodlar görürsünüz.

Bu kullanımının dışında resimlerinizin kaynağınıda gizleyebilirsiniz.

PHP:
  1. <?
  2. //resmi fopen ile çağıralım
  3. $handle = fopen($resimadresi,'rb');
  4. $file_content = fread($handle,filesize($resimadresi));
  5. fclose($handle);
  6. $encoded = chunk_split(base64_encode($file_content));
  7.  
  8. //ehco ile resmimizi yazdıralım
  9.  
  10. echo '<img src="data:image/png;base64,'.$encoded.' ">';
  11. ?>

bunu denediğinizde ekranda resminizi göreceksiniz. Bu sizin kaynak koddan bakınca resminizin kaynağını yok eder :)

Bu üstteki php kodunun tam tersinide isterseniz, örneğin kaynak kodu belli resim var bunu nasıl resme dönüştüreceğiz derseniz;

AYRICA : Resimlerinizi bir klasörde saklamak yerine VERİTABANInda tutmak istersenizde bu sistemi kullanabilirsiniz aşağıdaki örnekte veritabanındaki base64 ile encode edilmiş veriyi resme dönüştürmede gösterilmiştir.

image.php:

PHP:
  1. <?
  2. header(" Content-Type: image/jpeg");
  3. header(" Content-Disposition: inline");
  4. $img = $_GET[img];
  5. $sql = "SELECT data FROM image where id='".$img."'";
  6. $result = mysql_query($sql);
  7. $row = mysql_fetch_row($result);
  8. $image = $row[0];
  9. ?>

Sayfada kullanımı:

HTML:
  1. <img src="image.php?img=112"  border="0" alt="">

Herşey göründüğü gibi basit sanırım ???

Posted by Osman ERDOÄžAN   @   30 November 2009 1 Yorum
Etiketler : , , , , , , , , , ,

Yazıyı Paylaş

1 Comments

Comments
Jul 14, 2010
11:11
#1 trkygnclr :

Merhaba, burdaki asıl amaç sadece resim adres yolunu gizlemekmidir? EÄŸer sadece gizlemekse bu kullanım resimlerin hem serverda hemde kullanıcının tarayıcısında yüklenme performansını ele aldığımızda bir düÅŸüÅŸ veya artış saÄŸlarmı? Bu konuda bilginiz veya yaptığınız herhangi bir test varmı?
TeÅŸekkürler

Leave a Comment

Previous Post
«
Next Post
»
Luvo designed by Internet Marketing In conjunction with Template Wordpress , R4 DS , Best SUV.