Currently Browsing

Posts Tagged ‘ image base64 encode ’

Resimleri Base 64 ile Encode etmek…

Ş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 ???

Takvim
February 2012
M T W T F S S
« Jan    
 12345
6789101112
13141516171819
20212223242526
272829