Autor | Zpráva | ||
---|---|---|---|
Alan Profil * |
#1 · Zasláno: 7. 8. 2010, 21:29:11
ahoj,chci se zeptatat jak by se dala udělat funkce změna pozadí(obrazek) uživatelem,že tam bude prostě možnost
tapeta 1 tapeta 2 tapeta 3 a když klikne na tapeta 2,tak se mu změní na tu požadovanou tapetu... |
||
panther Profil |
#2 · Zasláno: 7. 8. 2010, 21:30:23
Alan:
třeba parametrem v URL. |
||
Alan Profil * |
#3 · Zasláno: 7. 8. 2010, 21:34:46
už není potřeba vyřešil jsem to.)
|
||
Alan Profil * |
#4 · Zasláno: 7. 8. 2010, 21:58:49
tak ne,nejde mě to,jak si to myslel tím parametrem v url?...
|
||
Alan Profil * |
#5 · Zasláno: 7. 8. 2010, 22:05:27
napadlo mě pomocí javascriptu select style...ale nevím jak se píše...:d
|
||
radas Profil * |
#6 · Zasláno: 7. 8. 2010, 22:07:10
tak buď přes GET nebo přes select a ukladat do SESSION...přápadně pokud by to mělo byt nějak na trvalo tak do db a po přihlašeni by se zobrazovalo vybrane pozadi
|
||
Alan Profil * |
#7 · Zasláno: 7. 8. 2010, 22:08:33
na trvalo ne,stačilo by pomoci cokies...
|
||
radas Profil * |
#8 · Zasláno: 7. 8. 2010, 22:09:26
cookies nemusi mit uživatel vždy zapnute...
|
||
Alan Profil * |
#9 · Zasláno: 7. 8. 2010, 22:11:45
ale nevím jak by se to mělo napsat..:d
jelikož mám web udělanej pomocí include,takže mám jen index,a pak jen ve složce page text kterej se mě tam má ukazovat...jestly mě rozumíš |
||
Alan Profil * |
#10 · Zasláno: 7. 8. 2010, 22:24:05
ja jsem našel toto,ale to na include nefunguje,napíše to chybu...
http://diskuse.jakpsatweb.cz/?action=vthread&topic=90736&forum=9&page=-1#4 |
||
Bubák Profil |
#11 · Zasláno: 7. 8. 2010, 22:24:39
Přim použití cookies se uživatel nemusí přihlašovat, když nebude mít cookies zapnuté, tak nebude změna pozadí fungovat, snad to přežije.
Příklad stránky, kde je (mírně skryta) možnost nastavení písma, velikosti písma a šířky stránky pomocí javascriptu a cookie: www.webylon.info/B |
||
radas Profil * |
#12 · Zasláno: 7. 8. 2010, 22:25:09
no to je ono...přes cookies...a co to napsalo za chybu?
|
||
AM_ Profil |
#13 · Zasláno: 7. 8. 2010, 22:25:44 · Upravil/a: AM_
Alan:
„jelikož mám web udělanej pomocí include“ to je asi jako říct "počítač mám udělaný pomocí harddisku". otřesná věta, která zřejmě znamená, že na webu používáš PHP příkaz include (snad každý alespoň trochu rozumný web require nebo include alespoň někde použije). řešil bych to třeba takto: na začátek stránky: session_start(); if (isset($_GET['pozadi'])) { $_SESSION['pozadi'] = (int)$_GET['pozadi']; } if (!isset($_SESSION['pozadi'])) { $_SESSION['pozadi'] = 0; } někde, kde definuješ styly: .body { background-image:url('images/background<?php echo $_SESSION['pozadi']; ?>.jpg'); } a to je celá věda, pak stačí odkázat na /index.php?pozadi=1 třeba (číslo změň dle gusta) „ja jsem našel toto,ale to na include nefunguje,napíše to chybu...“ include je jen příkaz, jeden z mnoha v PHP. Není to žádná platforma, framework, knihovna ani nic podobného, aby se dalo říkat, že "na include něco nefunguje". |
||
Alan Profil * |
#14 · Zasláno: 7. 8. 2010, 22:40:45
mno,píše to nahoře stránky chybu,ne chybu ale spíš opíše text...
jestly to mám správně,tak na začátek stránky jsem dal toto. session_start(); if (isset($_GET['pozadi'])) { $_SESSION['pozadi'] = (int)$_GET['pozadi']; } if (!isset($_SESSION['pozadi'])) { $_SESSION['pozadi'] = 0; } <!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=windows-1250" /> <META name="author" content="Alan,Needy"> <meta name="robots" content="noindex, nofollow"> ... a body: </head><br><br> <body> .body { background-image:url('images/background<?php echo $_SESSION['pozadi']; ?>.jpg'); } <div id="templatemo_header_panel"> <div id="templatemo_header_section"> se koukněte samy... http://l2.k3s4.sk/ |
||
Alan Profil * |
#15 · Zasláno: 7. 8. 2010, 22:42:08
a ted jsem zjistil že to nezobrazí ani celou stránku...
|
||
Alan Profil * |
#16 · Zasláno: 7. 8. 2010, 22:43:57
to AM_:
hele,a nešlo by to nějak udělat na CSS?že by se změnilo jen to CSS?..bych měl třeba 2 soubory v CSS,a nějak odkazat,aby se to css spustilo?... |
||
radas Profil * |
#17 · Zasláno: 7. 8. 2010, 22:47:34
Alan:
tak jak to napsla AM_ akorat se nebude odkazovat na soubor jpg ale na css soubor v hlavičcce |
||
Alan Profil * |
#18 · Zasláno: 7. 8. 2010, 22:56:05
ale tak proč mě to píše to nazačátku??...
session_start(); if (isset($_GET['pozadi'])) { $_SESSION['pozadi'] = (int)$_GET['pozadi']; } if (!isset($_SESSION['pozadi'])) { $_SESSION['pozadi'] = 0; } .body { background-image:url('pozadi2.css'); } .body { background-image:url('templatemo_style.css'); } |
||
Alan Profil * |
#19 · Zasláno: 7. 8. 2010, 22:59:22
moment,ten
.body { background-image:url('pozadi2<?php echo $_SESSION['pozadi']; ?>.css'); } se má dát do css? :D |
||
Alan Profil * |
#20 · Zasláno: 7. 8. 2010, 23:01:35
nejde:d
http://l2.k3s4.sk/index.php?pozadi=1 i v menu to píše tu chybu. |
||
Alan Profil * |
#21 · Zasláno: 7. 8. 2010, 23:07:20
//teda v home ne v menu
|
||
AM_ Profil |
#22 · Zasláno: 8. 8. 2010, 00:02:29
<?php session_start(); if (isset($_GET['pozadi'])) { $_SESSION['pozadi'] = (int)$_GET['pozadi']; } if (!isset($_SESSION['pozadi'])) { $_SESSION['pozadi'] = 0; } ?> <html> <head> <style type="text/css"> .body { background-image:url('pozadi2.css'); } .body { background-image:url('templatemo_style.css'); } </stype> </head> <body> Lorem Ipsum ... </body> </html> Jinak doporučuji nějaké základy CSS i PHP, máš v tom podle mě trochu hokej... |
||
Alan Profil * |
#23 · Zasláno: 8. 8. 2010, 00:25:25
hm..nakonec jsem to vyřešil pomocí js....
<div id="vzhled" title="vzhled2"><a href="javascript:selectStyle('style', '1');"><span>vzhled</span></a></div> <div id="vzhled2" title="vzhled2"><a href="javascript:selectStyle('style', '2');"><span>vzhled2</span></a></div> a ten js mno,kdo by ho prostě chtěl,tak at napiše:D |
||
AM_ Profil |
#24 · Zasláno: 8. 8. 2010, 10:21:05
nechci ti kazit iluze, ale kdo JS umí, zřejmě umí změnit jednu CSS vlastnost <body> :) je to vlastně jeden jediný příkaz přiřazení.
Mimochodem, tohle je sice hezké, ale když uživatel překlikne na jinou podstránku, má tam zpátky to, co tam měl... Nebo i toto jsi v JS vyřešil? |
||
Alan Profil * |
#25 · Zasláno: 8. 8. 2010, 16:21:16
ne,když klikne na třeba vzhled2,tak mu tam zůstane,v tom js je to sice nastaveny na cokies,ale tak stačí to:) prostě kdo si bude chtít změnit vzhled,tak si zapne cokies...
|
||
AM_ Profil |
#26 · Zasláno: 8. 8. 2010, 16:23:00
jo, to je docela rozumné, stejně pokud nemá zaplé cookies, musel bys pozadí pořád předávat v URL, což je docela nuda na programování, a na zaplé cookies se celkem spolehnout dá (to byl jen hit konce devadesátých let, kde si někdo vzpomněl, že vlastně v cookies je jakýsi bezpečnostní problém a všichni by si je měli vypínat).
|
||
Bubák Profil |
#27 · Zasláno: 8. 8. 2010, 16:26:45
Alan:
„a ten js mno,kdo by ho prostě chtěl,tak at napiše“ Takže píšu, že bych prosil ten JS ;-) |
||
Alan Profil * |
#28 · Zasláno: 8. 8. 2010, 16:59:52
Bubák:
styleswitch.js function makeCookie(Name,Value,Expiry,Path,Domain,Secure){ if (Expiry!= null) { var datenow = new Date(); datenow.setTime(datenow.getTime() + Math.round(86400000*Expiry)); Expiry = datenow.toGMTString(); } Expiry = (Expiry!= null)? '; expires='+Expiry : ''; Path = (Path!= null)?'; path='+Path:''; Domain = (Domain!= null)? '; domain='+Domain : ''; Secure = (Secure!= null)? '; secure' : ''; document.cookie = Name + '=' + escape(Value) + Expiry + Path + Domain + Secure; } function readCookie(Name) { var cookies = document.cookie; if (cookies.indexOf(Name + '=') == -1) return null; var start = cookies.indexOf(Name + '=') + (Name.length + 1); var finish = cookies.substring(start,cookies.length); finish = (finish.indexOf(';') == -1)? cookies.length : start + finish.indexOf(';'); return unescape(cookies.substring(start,finish)); } function setActiveStyleSheet(pTitle) { var vLoop, vLink; for(vLoop=0; (vLink = document.getElementsByTagName("link")[vLoop]); vLoop++) { if(vLink.getAttribute("rel").indexOf("style")!= -1 && vLink.getAttribute("title")) { vLink.disabled = true; if(vLink.getAttribute("title") == pTitle) vLink.disabled = false; } } } function selectStyle (vCookieName, vSelection) { makeCookie(vCookieName, vSelection, 90, '/'); setActiveStyleSheet(vSelection) } if (document.cookie.indexOf('style')!=-1) { css = readCookie('style'); setActiveStyleSheet(css) } a tady vytvořím protebe udělám stránku index.php. <!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=windows-1250" /> <title>Změna pozadí s JAVASCRIPTEM</title> <link rel="alternate stylesheet" href="pozadi1.css" type="text/css" title="vychozicss" media="screen" /> // vyběr pozadi <link rel="alternate stylesheet" href="pozadi2.css" type="text/css" title="darkvzhled" media="screen" /> // vyběr pozadi <link rel="alternate stylesheet" href="pozadi3.css" type="text/css" title="bluevzhled" media="screen" /> // vyběr pozadi <link rel="stylesheet" href="style.css" type="text/css" title="default" media="screen" /> // defautní style. <script type="text/javascript" src="styleswitch.js"></script> </head> <body> <div id="vzhled" title="vychozicss"><a href="javascript:selectStyle('style', 'vychozicss');"><span>Výchozí vzhled</span></a></div> <div id="vzhled2" title="darkvzhled"><a href="javascript:selectStyle('style', 'darkvzhled');"><span>Dark vzhled</span></a></div> <div id="vzhled3" title="bluevzhled"><a href="javascript:selectStyle('style', 'huovzhled');"><span>blue vzhled</span></a></div </body> </html> |
||
Alan Profil * |
#29 · Zasláno: 8. 8. 2010, 17:02:41
jo,u tebe bude lepší asi když si dáš kodování na UTF-8,já tam mám windows,jelikož mám databázi,prostě všechno nastavený na win 1250...
|
||
Alan Profil * |
#30 · Zasláno: 8. 8. 2010, 17:07:14
heh,ted jsem si uvědomil že jsem tam napsal výběr pozadí,má tam být ale výběr CSS!...:)
|
||
Časová prodleva: 14 let
|
0