Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dynamiczne zmienianie tła
Forum PHP.pl > Forum > Przedszkole
Zatarra
Witam. Od niedawna zaczołem pisać strony w PHP i raczkuje w tym temacie. Chciałbym zrobić coś takiego żeby można było wybrać/wpisać kolor w formularzu i to co podam było ustawiane w css'ie. Sesje coś mi nie wychodziły ale mozna byłoby chyba bez nich zrobić poki nie mam utworzonych uzytkowników. Oto co napisałem:
index.php
Cytat
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Home</title>
<link href="styl.css" rel="stylesheet" type="text/css" />
</head>

<body>
<form method="post" action="#">
<input type="text" name="kolor" />
<input type="submit" name="ok"/>
</form>
</body>
</html>

styl.css
Cytat
@charset "utf-8";
body {
background-color: '. $_POST["kolor"] .';
width: 100%;
height: 100%;
}

nie pokazuje mi błędów w operze, ale po wpisaniu wartości też nic się nie dzieje. Może dla was to wydać się dziecinnie proste, ale mi pomoc teraz by się sprzydała. POZDRO
wookieb
Po pierwsze co to ma do tego działu??
dynamiczny styl wypluwasz w sekcji <head> html w tagu <style> i tam sobie wyświetlasz co chcesz.
pedro84
Zacząłem!

Ale w CSS nie możesz używać PHP smile.gif Zobacz tutaj.
Zatarra
OK. Faktycznie nie w tym dziale co trzeba umiesciłem temat. Ale mi nie chodzi o to żeby tylko na tej stronie tak tło się zmieniało. Załuszmy że użytkownik wybierze sobie jakąś kompozycje i na wszyskich stronach chce mieć ją. To chyba że powinienem zrobić odzielny plik i include go wstawić do kazdej strony. Choć mi bardziej chodziło o to żeby raz zmienić i żeby to zapamiętało w css sad.gif
wookieb
A czy ty potrafisz czytać co do Ciebie piszemy? No przecież dostałeś rozwiązanie, sprawdziłeś cokolwiek?
Zatarra
No sprawdziłe. Bo o to chodziło?:
Cytat
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">
body {
background-color: <?php echo $_POST['kolor']; ?>; //edit. kropka się wkradła już działa
width: 100%;
height: 100%;
}
</style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Home</title>
</head>
<body>
<form method="post" action="#">
<input type="text" name="kolor" />
<input type="submit" name="ok"/>
</form>
</body>
</html>

Teraz to bede to musiał umieszczać (<style... />) na kazdej stronie..
wookieb
No to teraz użyj sesji (albo ciasteczek) aby ta wartość z posta była zapamiętywana.
Jeżeli chcesz do pliku to albo zrobisz tak, że link do stylu będzie wyglądał tak
  1. <link href="skrypt_generujacy_styl.php" rel="stylesheet" type="text/css" />


I w tym skrypcie zrobisz sobie co chcesz aczkolwiek polecałbym tutaj użycie ciasteczek i samego javascriptu
Zatarra
OK wielkie dzieki. Klikne każdemu podziękuj. Jak bede miał dalej z tym problem to umieszcze tutaj żeby nie powtarzac tematów.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.