Kayıt ol!             
Şifremi unuttum ?
   

  

Tarih: 2006-01-22 03:26
Yazar: hkn
Gönderen: skull  
Karakter Boyutu:  
Etiket: function bbkod
Oylamalar:
Yorumlar:   (0)






BBkod hadisesi nasıl yapılır diyenler için bir tane bbkod fonksiyonu yayınlıyorum. Fonksiyonu kullanmak oldukça basit. Ayrıca bbkod standartlarını kullanacaksınız diye bir kaide yok. Siz istediğiniz kodlama standardını oluşturabilirsiniz. Örneğin BBkod standartlarında bir yazıyı kalınlaştırmak için ayraçları kullanılır. Bu ayraçlar html’deki < b>< /b> şekline php tarafından çevirilir. Bu çevirme işlemini str_replace(); fonksiyonu gerçekleştirir.

Bu fonksiyonu str_replace("aranan ifade","yerine koyulacak ifade", "cümle"); şeklinde açıklayabiliriz. BBkod ile canlı örnek yapacak olursak , örneğin yazı kalınlaştırmak için;

Kod:
str_replace("[b]","< b.>“, $cumle);
gibi bir yapı ile çalışabiliriz.


Tabi ayraçları kapatmak için ayrı bir str_replace fonksiyonuna ihtiyacımız olur. Bu açıdan siz kendi istediğiniz ayraçları kullanabilirsiniz. Tabi fonksiyonda yerine koyacağınız ifade html olmalıdır. Bir örnek ile onuda açıkladıktan sonra aşağıya fonksiyonu yazacağım.

Örnek: biz “” yerine “-KALIN-” ifadesini kullanmak istiyoruz. O zaman şu şekilde bir yapı oluşturmalıyız.

Kod:
str_replace("-KALIN-", "< b.>“, $cumle); gibi olabilir.


Fonksiyonumuz ideal bir bbkod fonksiyonudur. Peki bunu veritabanından gelen içerikle nasıl ilişkilendirecez şekline bir soru soracak olursanız, basir bir örnek ile şu şekilde cevap verebilirim:

kullanımı:
Kod:
<?
// bbkod.php fonksiyon kütüphanemizi yükleyelim
require("bbkod.php");

// while ile veritabanından gelen verileri döngüye sokalım
while ( $sira = mysql_fetch_array($kayitlar) )
{

// veri tabanında bir makale içeriği olsun farz edelim ve bunu $sira["makale"] dizi değişkenine eşit olduğunu düşünelim
// bbkod adındaki bbkod fonksiyonumuzu aşağıdaki gibi ilişkilendirebilirsiniz.
echo bbkod($sira["makale"]);

// hepinize kolay gelsin. bol kodlu günlere. parmaklara kuvvet
}
?>

bbkod.php:
Kod:
<?php
//bbkod
function bbkod($message) {
// veri güvenliğini sağlayalım
$message = stripslashes(str_replace("<", "<", str_replace(">", ">", $message)));
// nl2br fonksiyonu ile satır başlarını <br> ye çevirelim
$message = nl2br($message);
$message = str_replace("[url=javascript", "[url=NOHACK", $message);
$message = str_replace("[b]", "<b>", $message);
$message = str_replace("[/b]", "</b>", $message);
$message = str_replace("[i]", "<i>", $message);
$message = str_replace("[/i]", "</i>", $message);
$message = str_replace("[u]", "<u>", $message);
$message = str_replace("[/u]", "</u>", $message);
$message = str_replace("[p]", "<p>", $message);
$message = str_replace("[/p]", "</p>", $message);
$message = str_replace("[center]", "<div align="center">", $message);
$message = str_replace("[/center]", "</div>", $message);
$message = str_replace("[left]", "<div align="left">", $message);
$message = str_replace("[/left]", "</div>", $message);
$message = str_replace("[right]", "<div align="right">", $message);
$message = str_replace("[/right]", "</div>", $message);
$message = str_replace("[list]", "<ol>", $message);
$message = str_replace("[li]", "<li>", $message);
$message = str_replace("[/list]", "</ol>", $message);
$message = str_replace("[br]", "<br>", $message);
$message = eregi_replace("[img]([^\[]*)[/img]", "<img src="\1" border="0">", $message);
$message = eregi_replace("[url=http://([^\[]*)]([^\[]*)[/url]", "<a class="post" href="http://\1">\2</a>", $message);
$message = eregi_replace("[url=ftp://([^\[]*)]([^\[]*)[/url]", "<a class="post" href="ftp://\1">\2</a>", $message);
$message = eregi_replace("[url=ed2k://(.+)](.+)[/url]", "<a class="post" href="ed2k://\1">\2</a>", $message);
$message = eregi_replace("[url=([^\[]*)]([^\[]*)[/url]", "<a class="post" href="http://\1">\2</a>", $message);
$message = eregi_replace("[url]http://([^\[]*)[/url]", "<a class="post" href="\1">\1</a>", $message);
$message = eregi_replace("[url]([^\[]*)[/url]", "<a class="post" href="http://\1">\1</a>", $message);

// smiley ekleyelim, siz istediğiniz kadar ekleyebilirsiniz.
// smiley dizinini resimler/ifadeler şeklinde salladım. siz kendinize göre düzenlersiniz
$message = str_replace(":)", "<img src="resimler/ifadeler/1.gif" border="0">", $message);
$message = str_replace(":-)", "<img src="resimler/ifadeler/2.gif" border="0">", $message);
$message = str_replace(":(", "<img src="resimler/ifadeler/1.gif" border="0">", $message);
$message = str_replace(":-(", "<img src="resimler/ifadeler/3.gif" border="0">", $message);
$message = str_replace(":D", "<img src="resimler/ifadeler/4.gif" border="0">", $message);
return $message;
}
?>



Henüz yorum yapılmamıştır.

İlgili Sayfalar:

SayfalarGönderen
function bbkod();skull
Script Dersi - Function kullanımı
  Online:
  54 site üyesi, 207 misafir
    toplam 261 kişi  
Giris sayfan olarak ayarla Sik Kullanilanlara Ekle Yenile Burdan bize ulasabilirsiniz

 
ANASAYFA | FORUMLAR | DÖKÜMANLAR | DOSYALAR | SCRIPTLER | SUNUCULAR | İLETİŞİM
Copyright (c) 2004-09 Ultima-Strike. All rights reserved.
Tasarım / Programlama: Uğur GÖK

Sistem Yapısı Seditio
Sayfa açılma süresi 0.431 sn.
SQL toplam zamanı: 0.091 sn. - SQL sorgusu: 74 - Ortalama SQL zamanı: 0.00123 sn.
Hosting Hizmetleri