Autor | Zpráva | ||
---|---|---|---|
Blskr1 Profil * |
#1 · Zasláno: 31. 12. 2007, 23:29:22
Dobry den mam problem s titulkem stranky, vkladam stranky z databaze ktere se generuji a vybiraji az uprostred stranky, a chtel bych aby kazda stranka mela svuj vlastni title. Potrebuji to realizovat pomoci php, aby promena ktera je ve zdrojovem kodu nize nez by se mela zobrazit tak aby se zobrazila vyse. Jak to provest?
|
||
Str4wberry Profil |
#2 · Zasláno: 31. 12. 2007, 23:32:09
Přečti si Nejčastější potíže s PHP (FAQ) — najdeš tam odpověď.
|
||
Blskr1 Profil * |
#3 · Zasláno: 31. 12. 2007, 23:33:12
Cetl jsem, je tam 5 moznosti, z nichz nektere nevyhovuji a ostatni s tim object start sem nepochopil.
|
||
Alphard Profil |
#4 · Zasláno: 31. 12. 2007, 23:39:25
Jak vypadá ta stránka? Byl by problém nejdříve vytáhnout data z databáze a pak vypsat hlavičku a pokračovat?
jinak zbývá asi jen bufferování |
||
Blskr1 Profil * |
#5 · Zasláno: 31. 12. 2007, 23:41:03
Alphard
Problem by to byl protoze jsem mluvil o tom ze data taham z databaze, ale taky tam mam par statickych stranek ktere by mely tu promenou s tim titulkem take uprostred |
||
Alphard Profil |
#6 · Zasláno: 31. 12. 2007, 23:48:16
Problem by to byl protoze jsem mluvil o tom ze data taham z databaze
to je těžké, ono by mohlo být třeba include "pripojeni_db.php"; $result = mysql_query ("..."); list ($title) = mysql_fetch_row ($result); include "head.php"; // pokracujeme těžko radit na základě daných informací a statické stránky stejně tak, includuje se obsah nebo se includuje hlavička, nebo nic? apod. |
||
Blskr1 Profil * |
#7 · Zasláno: 31. 12. 2007, 23:56:08
Alphard
ne je to tak, proste uprosted stranky bude promena treba: $page_title = mysql_result...... // pro dynamicke stranky $page_title = "Neco neco"; // pro staticke stranky a ja potrebuji aby se promena $page_title objevila nahore mezi tagy title, <title>$page_title</title> Kod ma vypadat nejak takto ... <head> <title>$page_title</title> </head> <body> $page_title = mysql_result...... // pro dynamicke stranky $page_title = "Neco neco"; // pro staticke stranky </body> ... ale jak to udelat aby se promena deklarovana nize ve zdrojovem kodu zobrazila vyse???? |
||
tiso Profil |
#8 · Zasláno: 1. 1. 2008, 00:49:14
Blskr1 - Alphard ti už odpovedal - pozri si funkcie na bufferovanie výstupu (ob funkcie).
|
||
v6ak Profil |
#9 · Zasláno: 1. 1. 2008, 09:37:40
Blskr1
To spíš: echo '<title>'.htmlspecialchars($page_title).'</title>'; apod. Já mám titulek jako pole a pak vše spojím pomocí implode. |
||
Blskr1 Profil * |
#10 · Zasláno: 1. 1. 2008, 16:07:37
No tak dival sem se na ten buffer a nejak mi porad nedochazi jak tu promenou zobrazit vyse nez se nachazi, pomuze mi nekdo a napise tady funkcni zdrojak?
|
||
tiso Profil |
#11 · Zasláno: 1. 1. 2008, 17:04:41
Blskr1:
1. na začiatku stránky ob_start(); 2. po vybraní titulku z DB $content=ob_get_contents(); 3. str_replace('$page_title', $page_title, $content); 4. echo $content; Ale skôr sa prihováram za zmenu logiky skriptu, aby si nemusel používať takéto barličky. |
||
pecan987 Profil * |
#12 · Zasláno: 2. 1. 2008, 02:30:44
Ono možná nejlepší by bylo kdyby jsi oddělil PHP kód od HTML a použil nějaký šablonovací systém a tohle by pro tebe nebyl žádný problém. Nejznámější asi SMARTY, ale dají se použít i méně "robustní" systémy.
|
||
Mastodont Profil |
#13 · Zasláno: 2. 1. 2008, 09:03:35
Blskr1
Nic ti snad nebrání ukládat si různé údaje do proměnných a začít vypisovat do výstupu až poté, kdy budeš mít všechna potřebná data, ne? |
||
AM Profil * |
#14 · Zasláno: 2. 1. 2008, 21:57:07
Souhlas s temi, co doporuci data nejdriv precist. Rekl jsi si, ze data budes cist prubezne jak to jde, protoze je to jednodussi, a hle, ono se to stalo slozitejsim :)
|
||
Časová prodleva: 16 let
|
0