Avatar
albertpatera
Redaktor
Avatar
albertpatera:

ahoj, nemůžu najít, jak se změní desing...abych se mi automaticky prepnul..abych v 7 hodin mel den v 7 hodin vecer zase jinej design. Nevíte někdo nějqakej php script? díky moc

 
Odpovědět 8.12.2012 22:46
Avatar
matesax
Redaktor
Avatar
Odpovídá na albertpatera
matesax:

V čem? Co takhle timer?

 
Nahoru Odpovědět 9.12.2012 5:52
Avatar
Kit
Redaktor
Avatar
Odpovídá na albertpatera
Kit:

Když budeš mít dva soubory CSS, můžeš do HTML pokaždé nalinkovat jiný.

Také můžeš v PHP dynamicky generovat CSS, ale není to tak výhodné.

Časově závislou část CSS můžeš umístit z PHP přímo do HTML.

V .htaccess můžeš udělat přesměrování dle denní doby.

Nahoru Odpovědět 9.12.2012 9:42
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
matesax
Redaktor
Avatar
Odpovídá na Kit
matesax:

A co když nebude chtít pro změnění načítat stránku - to je právě to - nenapsal co chce...

 
Nahoru Odpovědět 9.12.2012 10:32
Avatar
Kit
Redaktor
Avatar
Odpovídá na matesax
Kit:

Chtěl "nějqakej php script". To znamená, že s reloadem stránky počítá.

Samozřejmě se to dá napsat i v Javascriptu, ale to nebylo požadováno.

Nahoru Odpovědět 9.12.2012 10:41
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
Odpovídá na Kit
albertpatera:

ok a to dam normalne do

<head></head>

?

a jak pak se udela to nacasování?? diky

 
Nahoru Odpovědět 9.12.2012 10:51
Avatar
matesax
Redaktor
Avatar
Odpovídá na albertpatera
matesax:

PHP by mělo být mimo - nemám rád, když se píší scripty do stránky - proč také - že? V PHP žádné načasování právě nebude - nýbrž podmínka - zda-li je aktuální čas am/pm popř. přesně podle hodin - to je na tobě... Načasovat to můžeš v JS - stránka se změní bez načtení...

Editováno 9.12.2012 10:59
 
Nahoru Odpovědět 9.12.2012 10:56
Avatar
albertpatera
Redaktor
Avatar
Odpovídá na matesax
albertpatera:

ok diky a jak ude ten php kod na timer? nemuzu to nikde najit

 
Nahoru Odpovědět 9.12.2012 10:58
Avatar
matesax
Redaktor
Avatar
Odpovídá na Kit
matesax:

Vidíš Kite - já to věděl! :)

albertpatera

Timer musí být v JS ne v PHP - u klienta ne na serveru. Buď v PHP dáš podmínku a stránka se rozvětví při načítání - buď pro noční režim, či denní. V JS ale můžeš udělat timer, který to změní bez znovunačítání...

 
Nahoru Odpovědět 9.12.2012 11:00
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na albertpatera
David Čápka:

Stačí vložit podmínku do souboru css a dát mu příponu php.

Nahoru Odpovědět 9.12.2012 11:01
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Kit
Redaktor
Avatar
Odpovídá na matesax
Kit:

No jo, to máš z toho koukání do křišťálové koule. Dnešní web se skládá ze správné kombinace sedmi jazyků a ty se dají poskládat různými způsoby.

Nahoru Odpovědět 9.12.2012 11:07
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Michael Olšavský:

Pokud to opravdu chceš v PHP, tak tady je kratky kod co se da vložit do hlavičky, ale nemělo by se to takhle používat.

<?php
        $date = (int)Date("H");
        if($date < 17){
        ?>
        <link rel="stylesheet" href="style1.css" type="text/css"/>
        <?}
            else {?>
        <link rel="stylesheet" href="style2.css" type="text/css"/>
        <?}?>
    </head>
 
Nahoru Odpovědět 9.12.2012 11:09
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:

To je právě ta nevýhodná varianta. Znemožňuje ukládání CSS do cache u klienta. Tedy pokud si nepohraješ s hlavičkami.

Nahoru Odpovědět 9.12.2012 11:11
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
matesax
Redaktor
Avatar
Odpovídá na Kit
matesax:

A má PHP něco jako CodeBehind? (Timer u clienta - kód v PHP - AJAX)

Editováno 9.12.2012 11:14
 
Nahoru Odpovědět 9.12.2012 11:12
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na matesax
David Čápka:

Proč bys měl timer u klienta? Stačí měnit CSS dle času, nebo jak psal Michael Olšavský, přepínat CSSka, to se bude cachovat, ale zas člověk musí spravovat 2 soubory.

Nahoru Odpovědět 9.12.2012 11:19
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Kit
Redaktor
Avatar
Odpovídá na matesax
Kit:

Ano, má. Jen se tomu neříká tak honosně. Je to prostě AJAX.

Nahoru Odpovědět 9.12.2012 11:20
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:

Těch rozdílů mezi dnem a nocí nebývá mnoho. Proto bych společné vlastnosti dal do jednoho CSS a ty rozdílné generoval přímo do hlavičky HTML.

Ty dva soubory CSS se také dají generovat staticky z PHP.

Nahoru Odpovědět 9.12.2012 11:25
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Michael Olšavský
Kit:

Po aplikaci DRY by to mohlo vypadat třeba takto:

<?php
$date = (int)Date("H");
$styl=(($date < 19) && ($date >= 7))?'style1.css':'style2.css';
echo <<<EOT
<link rel="stylesheet" href="$styl" type="text/css"/>
</head>
EOT;
Nahoru Odpovědět 9.12.2012 11:33
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Kit:

Přes .htaccess je to ještě jednodušší, do aplikace není nutné zasahovat.

RewriteEngine On
RewriteBase /

RewriteCond %{TIME_HOUR} >07
RewriteCond %{TIME_HOUR} <19
RewriteRule ^style\.css$ /style-day.css
Nahoru Odpovědět 9.12.2012 11:41
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
albertpatera:

nejde mi tam zmenit pozadi..

background: url('images/pozadi.jpg')
  • to nefunguje..co s tim??
Editováno 9.12.2012 16:27
 
Nahoru Odpovědět 9.12.2012 16:25
Avatar
Kit
Redaktor
Avatar
Odpovídá na albertpatera
Kit:

Zřejmě jsi sem dal funkční část kódu a tu nefunkční si tutláš pro sebe.

Adresář 'images' musí být ve stejném adresáři jako soubor s CSS.

Editováno 9.12.2012 16:30
Nahoru Odpovědět 9.12.2012 16:28
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
albertpatera:
body {
     border:5px solid black;
     border-color:#00afc00;
     border: url("images/gradient.jpg");

     }
  • tohle mam v den.css, kterej mam nastavenej podle toho kodu cos mi poslal...border funguje, ale background nefunguje...pořád tam mam to zakladni pozadi..nevis co s tim?? diky

www.bertuvweb.8u.cz

 
Nahoru Odpovědět 9.12.2012 16:32
Avatar
albertpatera
Redaktor
Avatar
albertpatera:

no ve stejnym adresari to mam :(

 
Nahoru Odpovědět 9.12.2012 16:38
Avatar
matesax
Redaktor
Avatar
Odpovídá na albertpatera
matesax:
border: url("images/gradient.jpg");

Nemám slov... :)

Editováno 9.12.2012 16:43
 
Nahoru Odpovědět 9.12.2012 16:42
Avatar
albertpatera
Redaktor
Avatar
albertpatera:
Editováno 9.12.2012 16:45
 
Nahoru Odpovědět 9.12.2012 16:45
Avatar
albertpatera
Redaktor
Avatar
Odpovídá na matesax
albertpatera:

ale tak jaktoze to nefunguje??

 
Nahoru Odpovědět 9.12.2012 16:46
Avatar
matesax
Redaktor
Avatar
Odpovídá na albertpatera
matesax:

border border border border...

background background background...

:)
 
Nahoru Odpovědět 9.12.2012 16:51
Avatar
albertpatera
Redaktor
Avatar
Odpovídá na matesax
albertpatera:

nevim čim to je, umazal sem tam to ostatni a nechal sem tam jenom background...
ale nepomohlo to..pozadi se mi tam vubec nezobrazuje..­.zobrazuje se mi tam jenom to původní.. :( fakt nevim..

 
Nahoru Odpovědět 9.12.2012 17:02
Avatar
matesax
Redaktor
Avatar
matesax:

Místo:

border: url("images/gradient.jpg");

dej:

background: url("images/gradient.jpg");
Editováno 9.12.2012 17:06
 
Nahoru Odpovědět 9.12.2012 17:06
Avatar
Kit
Redaktor
Avatar
Odpovídá na albertpatera
Kit:

Opravdu? Často se setkávám s tím, že někdo dá CSS do souboru css/style.css a obrázek do images/obrazek.jpg a velice se diví, že mu to nefunguje.

Ujasni si, jestli řešíš background nebo border. Nějak moc často to střídáš.

body {
   background: white url("images/pozadi.jpg");
}
Nahoru Odpovědět 9.12.2012 17:12
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
albertpatera:

to sem taky zkouse a nefuguje...nevim co s tim :(

 
Nahoru Odpovědět 9.12.2012 17:13
Avatar
matesax
Redaktor
Avatar
Odpovídá na albertpatera
matesax:
background-image: url("images/gradient.jpg");
 
Nahoru Odpovědět 9.12.2012 17:23
Avatar
matesax
Redaktor
Avatar
Odpovídá na albertpatera
matesax:

Máš-li images o řád níže, stačí ../

 
Nahoru Odpovědět 9.12.2012 17:30
Avatar
Kit
Redaktor
Avatar
Odpovídá na matesax
Kit:

Prvním parametrem background je barva. Teprve druhým je URL. Některé prohlížeče to mohou zvládnout i bez barvy, ale nemusí.

Nahoru Odpovědět 9.12.2012 17:39
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
albertpatera:

hele ale ja sem tam mel images a neměl sem tam nasmerovanej adresar a taky to fungovalo
*

<?php
$date = (int)Date("H");
$styl=(($date < 19) && ($date >= 7))?'den.css':'den.css';
echo <<<EOT
<link rel="stylesheet" href="$den"  type="images/css"/>
</head>
EOT;

*

a stejne to nefunguje :( nevim fakt uz co s tim je :(

 
Nahoru Odpovědět 9.12.2012 17:40
Avatar
Kit
Redaktor
Avatar
Odpovídá na matesax
Kit:

Také může obrázek s pozadím nahrát do stejného adresáře jako CSS a další podadresáře neřešit.

Nahoru Odpovědět 9.12.2012 17:40
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na albertpatera
Kit:

A co kdybys dal v noci jiné CSS?

Nahoru Odpovědět 9.12.2012 17:42
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
matesax
Redaktor
Avatar
Odpovídá na albertpatera
matesax:

Máš v ternárním operátoru stejné větve a proměnnou používáš úplně jinou - v href...

 
Nahoru Odpovědět 9.12.2012 17:45
Avatar
Kit
Redaktor
Avatar
Odpovídá na matesax
Kit:

Aha, netušil jsem, že je možné to při opisování tak zkonit. Jméno souboru je v $styl, ale odkazuje se na $den.

Nahoru Odpovědět 9.12.2012 17:48
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
Odpovídá na Kit
albertpatera:

a jak to má teda bejt správně?..diky

Editováno 9.12.2012 17:55
 
Nahoru Odpovědět 9.12.2012 17:55
Avatar
Kit
Redaktor
Avatar
Odpovídá na albertpatera
Kit:
<?php
$date = (int)Date("H");
$styl=(($date < 19) && ($date >= 7))?'den.css':'noc.css';
echo <<<EOT
<link rel="stylesheet" href="$styl"  type="images/css"/>
</head>
EOT;
Nahoru Odpovědět 9.12.2012 18:01
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Kit
Kit:

Je tam ještě jedna chyba. Místo

$date = (int)Date("H");

patří

$date = (int)Date("G");

Abych všechno ověřoval...

Nahoru Odpovědět 9.12.2012 18:07
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
Odpovídá na Kit
albertpatera:

diky ale furt to nejde

 
Nahoru Odpovědět 9.12.2012 18:09
Avatar
Kit
Redaktor
Avatar
Odpovídá na albertpatera
Kit:

Co znamená "nejde"? Máš v kořenovém adresáři soubory den.css a noc.css?

Nahoru Odpovědět 9.12.2012 18:12
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
albertpatera:

no v images ho nemam ale mam ho mimo a jinou slozku tam nemam

 
Nahoru Odpovědět 9.12.2012 18:16
Avatar
Kit
Redaktor
Avatar
Odpovídá na albertpatera
Kit:

Píšeš v hádankách. Kde máš soubory den.css, noc.css, pozadi.jpg a gradient.jpg? Nejlépe bude, když to všechno nahážeš do kořene webu.

Nahoru Odpovědět 9.12.2012 18:20
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
albertpatera:

den.css mam v sem si presunul do images, noc.css taky a gradient.jpg mam v images

Editováno 9.12.2012 18:26
 
Nahoru Odpovědět 9.12.2012 18:23
Avatar
Kit
Redaktor
Avatar
Odpovídá na albertpatera
Kit:

No vidíš, jaký v tom máš binec. A jak to má chudák prohlížeč tušit, když podle linku máš den.css i noc.css ve stejném adresáři, jak index.php?

A proč dáváš CSS do adresáře images? Vždyť to nemá logiku. To jsi měl raději všechno nechat v kořeni webu, když neumíš pracovat s adresáři.

Nahoru Odpovědět 9.12.2012 18:42
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
albertpatera:

stejne mi to nefunguje....a ja uz fakt nevim

 
Nahoru Odpovědět 9.12.2012 18:55
Avatar
Kit
Redaktor
Avatar
Odpovídá na albertpatera
Kit:

A proč by to mělo fungovat, když to máš blbě?

Nahoru Odpovědět 9.12.2012 19:01
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
albertpatera:

a tak jak to pak bude dobre?

 
Nahoru Odpovědět 9.12.2012 19:03
Avatar
Kit
Redaktor
Avatar
Odpovídá na albertpatera
Kit:

Až všechny podadresáře zrušíš a zrušíš i odkazy na ně. Všechno hezky v kořeni webu a bude pokoj.

Nahoru Odpovědět 9.12.2012 19:11
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
matesax
Redaktor
Avatar
Odpovídá na Kit
matesax:

Pro někoho dělení smysl má - pro někoho ne - to si myslím, že takový problém není. Prostě albertpatera se musí naučit co je to kořenový adresář webu. Co jsou to řády, a jak se v nich pohybovat. K čemu je vlnovka a k čemu ../ atd... A to tu najde v CSS tutoriálu. I kdybychom mu dali celý funkční web, nedopadlo by to dobře - vlastní zkušenost... :)

Editováno 9.12.2012 19:13
 
Nahoru Odpovědět 9.12.2012 19:13
Avatar
albertpatera
Redaktor
Avatar
Odpovídá na matesax
albertpatera:

ok chápu už se mi to jednou stalo...

 
Nahoru Odpovědět 9.12.2012 19:14
Avatar
Kit
Redaktor
Avatar
Odpovídá na matesax
Kit:

Podadresáře zpravidla řeším až od několika set či tisíc souborů v adresáři. Lépe se mi s tím pracuje, když mám vše hezky pohromadě. Dobře se dělají i hromadné úpravy - nemusím pokaždé traverzovat stromem, ale použjiji jednoduchou utilitu v jednom adresáři. Každému to však nevyhovuje.

Nahoru Odpovědět 9.12.2012 19:29
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
matesax
Redaktor
Avatar
Odpovídá na Kit
matesax:

A co jsem psal?

"Pro někoho dělení smysl má - pro někoho ne..."

Jde mi o to, že problém nechceš řešit, ale pohřbít - ať si klidně má vše v jednom adresáři, ale ať chápe, jak má pracovat s relativní URL... (To se přeci netýká jen adresářů.)

Editováno 9.12.2012 19:32
 
Nahoru Odpovědět 9.12.2012 19:31
Avatar
Kit
Redaktor
Avatar
Odpovídá na matesax
Kit:

Správně. Když ten problém teď pohřbí, bude dělat funkční stránky. Sice to nebude dokonalé podle měřítek jiných programátorů, ale fungovat to bude. Časem ten problém sice bude řešit znovu, ale už bude pokročilejší a možná na to přijde sám.

Proč webmasteři používají primitivní Smarty a nechávají ladem dokonalé XSLT? Protože ve Smarty udělá šablonu každý začátečník za pár minut. A mnoho jich u Smarty také zůstane. XSLT se učí mnohem déle.

Pokud někdo pro správu souborů používá GUI, tak i 50 souborů v jednom adresáři je mnoho. Když ho nepoužívám, nevadí mi ani 50 000 souborů.

Nahoru Odpovědět 9.12.2012 19:45
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
 
Nahoru Odpovědět 9.12.2012 19:56
Avatar
Kit
Redaktor
Avatar
Odpovídá na albertpatera
Kit:

Ne. Teď se dohadujeme o tom, zda se mají některé problémy pohřbívat nebo vždy řešit a to i za cenu utopení autora v těch problémech.

Nahoru Odpovědět 9.12.2012 20:08
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
albertpatera
Redaktor
Avatar
Odpovídá na Kit
albertpatera:

částečně jsem můj problém vyřešil...dal jsem tak jenom obrázek, ale mám problém s tím, že ten obrázek je furt dole a nejde ho nijak napozicovat?? nevíte, co s tím?? díky

 
Nahoru Odpovědět 10.12.2012 16:29
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 62 zpráv z 62.