Dinamik bir sayfa renkleri ve temalar seçerek

1 Cevap

merhaba herkes PHP için yeni im, i PHP bu sayfa aynı sayfada refelect gerektiğini bu renkleri ya da temalar seçerek bir kaç renk seçenekleri değiştirmek ve temalar içeren gereken böyle bir şekilde kullanarak bir sayfa oluşturmak istiyorsanız . Herkes pls bunun için bir komut dosyası sugessins vererek ya da kanıtlayarak bana yardımcı olabilir ..

1 Cevap

Bir php site için kişiselleştirilmiş tema çeşit almak için en kolay yollarından biri, farklı temalar için farklı stil kullanmak ve kullanıcıların tarayıcı içine bunları saklamak için cookies. En ideal ama çoğu kullanıcı için işler değil.

Eğer default.css, theme1.css ve theme2.css adında 3 stil söylüyorlar.

default.css:

body {
  color: blue,
  background-color: white;
  font-family: arial;
}

theme1.css:

body {
  color: black,
  background-color: yellow;
  font-family: verdana;
}

İşte çıkışına bir örnek kod başka bir varsayılan birini kullanın çerezler saklanan ne bağlı olarak farklı biçembente link.

<head>
<?php
if (!isset($_COOKIE['siteTheme']))
  echo '<link rel="stylesheet" type="text/css" href="/css/' . $_COOKIE["siteTheme"] . '" />";
else
  echo '<link rel="stylesheet" type="text/css" href="/css/default.css" />';
?>
<!-- other elements in head -->
</head>

Kullanıcı tarafından seçilen temayı kaydetmek için, daha sonra çerezleri koyacaktır bir sayfaya açılan veya köprüler olabilir.

Bir köprü için "setTheme.php?theme=theme1", "theme=theme2" vs demek

Ya da açılan formu

<form method='get' action='/setTheme.php'>
<select name='theme' onchange='this.form.submit();'>
<option value='default'>default</option>
<option value='theme1'>Theme 1</option>
<option value='theme2'>Theme 2</option>
</select>
</form>   

SetTheme.php sayfasında, aşağıdakileri ekleyin:

<?php
$expire=time()+60*60*24*30; //exipiry of the cookie
setcookie("siteTheme", $_GET["theme"], $expire); //store the selected theme to cookie
?>

Sonra yerine tema stil seçim kodu ile geri ana sayfasına bir bağlantı (yukarıda sağda ilk) var, ve bitirdiniz.

PS: tarayıcılar çerezler devre dışı bırakılmış ya da çerez desteği için çalışmaz.

Disclaimer: I've not tested the actual codes above, but conceptually it should work.