Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Zmiana szaty graficznej
Forum PHP.pl > Forum > PHP
pablo1982
Jak zrobic cos takiego:
Szybka zmiana grafiki strony przez dowolnego uzytkownika
( kazdy user moze sobie sam zmieniac) wygladu calej strony.
Powiedzmy ze robie taki formularz, ktory wyswietla sie na kazdej podstronie:
echo "<form method=post action=plik.php>";
echo "<select name=szata>";
echo "<option value=szata1>szata1";
echo "<option value=szata2>szata2";
echo "<input type=submit value=zmien grafike>";
echo "</select></form>";

Jak powinien wygladac plik.php?

[KaMeLeOn]: OSTRZEŻENIE: Zakładanie tego samego tematu na kilku forach grozi zablokowaniem użytkownika, a w najgorszym przypadku zbanowaniem adresu IP...
scanner
[php:1:6993229a55]<?php
echo '<pre>';
print_r($_POST);
echo '</pre>';
die('A co ma robić ten plik?');
?>[/php:1:6993229a55]
pablo1982
Plik ma zmienic szate graficzna na stale tnz do momentu gdy ten sam user znow sobie zmieni przez formularz
KaMeLeOn
Jeśli to przywilej zalogowanych użytkowników - zapamiętywać w bazie, jeśli nie wysyłać cookie...
pablo1982
nie to nie przywilej
A bez ciasteczek nie da sie?
DeyV
jak bez ciastek, to przechowuj informacje o szacie w sessji
KaMeLeOn
Cytat
A bez ciasteczek nie da sie?

To w sumie najllepsze rozwiązanie...
Wątek już był wałkowany, jak to zrobić, ale adresy IP itd. odpada przez np. modemy...
Cytat
jak bez ciastek, to przechowuj informacje o szacie w sessji

Ale on chce na stałe...
pablo1982
na stale to znaczy do momentu opuszczenia mojej strony
KaMeLeOn
Cytat
na stale to znaczy do momentu opuszczenia mojej strony

Hmm... właśnie tego wcześniej brakowało...
Cytat
Plik ma zmienic szate graficzna na stale tnz do momentu gdy ten sam user znow sobie zmieni przez formularz

Więc wystarczy sesja, jak pisał DeyV...
pablo1982
sesje juz mam
na paczatku kazdej strony jest linijka
session_stort();
Moze ci mi napisac jak mam ta sasje zmienic?
Czyli co ma byc w tym pliku do ktorego prowdzi formularz
LeWaR
Cytat
Jeśli to przywilej zalogowanych użytkowników - zapamiętywać w bazie, jeśli nie wysyłać cookie...


To jest chyba najlepsze rozwiązanie. Po zalogowaniu usera z bazy jest wyciągana nazwa używanego przez usera szablonu i jazda na ekran...

pozdrawiam
wassago
Cytat
[php:1:a6475eeab2]<?php
echo '<pre>';
print_r($_POST); <-- questionmark.gif
echo '</pre>';
die('A co ma robić ten plik?');
?>[/php:1:a6475eeab2]


scanner a czy w tym kodzie czegos nie brakuje?? hmm? :wink:

UPDATE: ... albo ja o czyms nie wiem :?
scanner
Czego? Ten zapis wywala ładnie całą tablicę na ekran...
Wankster
plik.php[php:1:aa29ca4ec8]<?php

session_start();

if ( isSet( $_POST['szata'] ) )
{
$theme = $_POST['szata'];
}
else
{
$theme = 'default';
}

session_register( 'theme' );

?>[/php:1:aa29ca4ec8]

Może zadziała. Teraz musisz zrobić katalog z themami np. themes/ biggrin.gif a w nim katalogi: szata1, szata2

Później:
[php:1:aa29ca4ec8]<?php

session_start();

if ( !( isSet( $_SESSION['theme'] ) ) )
{
$theme = 'default';
}
else
{
$theme = $_SESSION['theme'];
}

?>[/php:1:aa29ca4ec8]
I dajesz w np. obrazkach
Kod
<img src="themes/<?= $theme ?>/images/image.img" />
:?:
pablo1982
Dzieki!!!!!!!!!!!!!!!
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.