Re: [Linux-programlama] CSS içinde PHP ile değişiklik yapılabilir mi? (Son Şekli)

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: Nuri Akman (nuri.akman@hazine.gov.tr)
Date: Fri 16 Feb 2007 - 09:37:55 EET


Arkadaşlar,

Ben şu şekilde böir çözüm geliştirdim. Belki kullanmak isteyen birisi
olabilir düşüncesiyle sizlerle de paylaşmak istedim.

Şunu yaptım: .CSS dosyası içinde değişmesini istediğim yerlere
database'deki alan (field) adını verdim. Herhangi bir karışıklığı
engellemek için de bu alan adının sonuna *#* karakteri ekledim.

Sonra, database içindeki tüm field'lar için dönen bir loop yaptım ve
alan adı "css_" ile başlayanları str_replace komutu ile değiştirdim.

Sanırım ilerleyen günlerde bu ürettiğim çıktıyı da database'e koyup
Sn.EREN'in tavsiyesini de yerine getirerek güzel bir fonksiyonalite
katmış olabileceğim.

Örnek dosyalar aşağıda:

*index.php içindeki kod:*
<link href="*modul.css.php*" rel="stylesheet" type="text/css" />

*modul.css.php dosyası içindeki kod*
$query_rsGenel = "SELECT * FROM genel_ayarlar";
$rsGenel = $cnnKSE->SelectLimit($query_rsGenel) or die($cnnKSE->ErrorMsg());

*$CSSFileName* = "css/css.css";
*$CSSFileContent* = file_get_contents($CSSFileName);

if( strlen($CSSFileContent) > 0 ) { // dosya içeriği dolu ise..
    foreach($rsGenel->fields as $key => $value) {
        if(substr($key, 0,4) == "css_") { //echo $key."<br>";
            $CSSFileContent = str_replace($key . "#",
$rsGenel->Fields($key), $CSSFileContent);
        }
    }
}
echo $CSSFileContent;

*css/mycss.css dosyası içindeki bölüm*
    BODY { /* Sayfa Geneli Ayarları */
        background-image: url(*css_site_zemin_image*#);
        background-color: *css_site_zemin_rengi*#;
        font-family:Geneva, Arial, Helvetica, sans-serif;
        font-size:13px;
        color:#333333;
    }
   
    .UstBanner {
        border-bottom: #CCCCCC 1px solid;
        border-top: #CCCCCC 1px solid;
        padding-top:10px;
        padding-bottom:10px;
        background-color:* css_site_genel_cizgi_rengi*#;
        color:#FFFFFF;
    }

*Sevgiler,
Nuri AKMAN*

Timu EREN yazmış:
> Perşembe 15 Şubat 2007 10:19 tarihinde, Nuri Akman şunları yazmıştı:
>
>> Merhaba,
>>
>> Benim aklımdan geçenler:
>>
>> 1.) CSS dosyasını olduğu gibi kullanıcıya gösterip EDIT edebilmesini
>> sağlamak ve edit ederse bunu o kişinin tercihleri içinde kaydetmek,
>> 2.) CSS dosyasının tamamını (Ümit Beyin Örneğinde olduğu gibi) kendim
>> üretmek,
>> 3.) CSS içindeki değişmesini istediğim bölümlere {{KOD1}} gibi bir ifade
>> yazıp, PHP içinde str_replace() komutu ile bunları değiştirerek.
>>
>> Verilen cevaplara baktıktan sonra yukarıda sıraladığım son maddenin
>> yapılması çok daha rahat olacağını düşünüyorum.
>>
>
> Neden her request için aynı işlemi tekrar tekrar process etme gereği
> hissediyorsunuz? Buun yerine kullanıcı tüm ayarlarını bitirdiğinde bir
> dosyaya render edip yazsanız ve bunuda css/user/username/username.css ismi
> ile kaydetseniz hem sunucuya az yük biner hemde cevap süresini kısaltmış
> olursunuz?
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama@liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama

_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.