Obsah fóra
PravidláRegistrovaťPrihlásenie




Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie. [ Príspevkov: 23 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.09.07
Prihlásený: 30.11.11
Príspevky: 143
Témy: 37
Príspevok NapísalOffline : 20.07.2010 23:10

Mocem sa s problemom a mozno mi len zas unikaju zakladne suvislosti.

Riesim zobrazovanie aktualneho titlu na stranke. (podla aktualne vypisovanej udalosti, fotoalbumu a tak.. )

Momentalne to mam tak, ze volam funkciu ktora mi vypisuje nadpis s podnadpisom a nastavujem v nej aj session pre vypis do titlu:

Napr- volanie:
$page->RenderMainTitle("Fotogaléria",$kraj->menokraja);

Funkcia:
Kód:
   function RenderMainTitle($title, $title2)
   {
    
      echo '<h1 class="h1">' . $title . ' </h1>';
      
      echo "<h2 class='h1'>$title2</h2>";


$_SESSION['title']= array(       
            "podnadpis"  => $title2,
            "nadpis"  =>  $title);

   RenderTitle();
}


Title:

Kód:
<title><?php

echo $_SESSION['title']['podnadpis']."|".$_SESSION['title']['nadpis'];

   ?></title>


Takze mi ukazuje title minule stlacenej stranky a nie tej aktualnej.

Ako to spojazdnit?

Za kazdy napad dik...


Offline

Užívateľ
Užívateľ
opozdene <title>

Registrovaný: 26.11.06
Prihlásený: 22.01.24
Príspevky: 4118
Témy: 319
Bydlisko: HE/BA
Príspevok NapísalOffline : 20.07.2010 23:59

Nemôžeš najprv premennú zavolať a potom ju nastaviť. Zrejme bude problém v neskorom volaní fcie RenderMainTitle().


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.09.07
Prihlásený: 30.11.11
Príspevky: 143
Témy: 37
Príspevok Napísal autor témyOffline : 21.07.2010 0:23

Ale ako ju mozem volat este pred titlom? Obsah sa mi nacitava az v jadre.


Offline

Užívateľ
Užívateľ
opozdene <title>

Registrovaný: 05.09.09
Príspevky: 1141
Témy: 127
Bydlisko: Lehota pod ...
Príspevok NapísalOffline : 21.07.2010 8:33

Nie ako môžeš, ale logicky musíš...


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.09.07
Prihlásený: 30.11.11
Príspevky: 143
Témy: 37
Príspevok Napísal autor témyOffline : 21.07.2010 11:01

Ok. Tak teda ako to musim docielit? Snazil som sa header location na samu seba na konci funkcie, ale zaciklil som to.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 14.04.09
Prihlásený: 18.01.22
Príspevky: 1188
Témy: 198
Príspevok NapísalOffline : 21.07.2010 11:16

Podla mna to mas celkovo blbo premyslene :-) takto to nema zmysel. Ja zdy includujem do indexu obsah podla toho co mam v $_GET['page'] a podla toho aj vygenerujem titulok. Kazdopadne tu kontrolu aktualneho titulku musis umiesnit pred <title>. Cize na zaciatku suboru bude script, ktory vytvori titulok a ulozi ho do premennej a vypise ho v title. Viac ti asi neporadime kedze nevieme podla coho ziskavas $title a $title2. Ale takto sa to nebude dat ze urcujes titulok pri vypise nadpisu.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.09.07
Prihlásený: 30.11.11
Príspevky: 143
Témy: 37
Príspevok Napísal autor témyOffline : 21.07.2010 16:51

Milujem, ked mi niekto povie , ze sa nieco neda. Vtedy mi mozog pociti nutnost mysliet. :)

Prosto som musel vyriesit len spravny refresh stranky, bez toho aby som sa ocitol v slucke. To mi zabezpecila jednoducha podmienka, nech sa nenastavuje, ked je uz na danu hodnotu podnadpis nastaveny. Tu je update mojej funkcie:

Kód:
   function RenderMainTitle($title, $title2)
   {
    
      echo '<h1 class="h1">' . $title . ' </h1>';
      
      echo "<h2 class='h1'>$title2</h2>";

if ($title2 != $_SESSION['title']['podnadpis']){
$_SESSION['title']= array(       
            "podnadpis"  => $title2,
            "nadpis"  =>  $title);
header("location: ".$_SERVER["REQUEST_URI"].'');
}
}


Myslel som si, ze podobnu situaciu uz isto mnohy riesili(update hodnoty v nakupnom kosiku po pridani tovaru, ci ine manipulacie so sesion, ktore vyuzijete v aktualny vypis stavu).

Tak na zaver jedna strasne napomocna veta(pre programatora obzvlast): "Nepitaj sa preco sa to neda. Hladaj ako sa to da."

Pekny den priatelia.


Offline

Skúsený užívateľ
Skúsený užívateľ
opozdene <title>

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 21.07.2010 16:55

Feko, takže si spokojný so svojím riešením?? Zbytočný refresh len kvôli tomu, že si nenašiel iný spôsob?
Poradím ti ešte jednu vetu (pre programátora obzvlášť): keď niečo robíš, rob to poriadne

Necháp ma zle, proste to riešenie nie je dobré. Vieš si predstaviť podobný mechanizmus pri častejšie navštevovanej stránke? Čo to asi tak urobí? Porozmýšľaj ;)

Ale inak súhlasím, programátor musí hľadať riešenie a nevyhovárať sa.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.09.07
Prihlásený: 30.11.11
Príspevky: 143
Témy: 37
Príspevok Napísal autor témyOffline : 21.07.2010 16:58

No toto beriem. Bavime sa o rieseniach. Preco su zle, ci dobre. Pouc ma, rad sa necham. Pripadne porad lepsie ku konkretnej situacii. Vsak o tom forum je, ci sa mylim?


Offline

Skúsený užívateľ
Skúsený užívateľ
opozdene <title>

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 21.07.2010 17:13

Nemýliš, akurát na to bohužiaľ niektorí zabúdajú :)

Problém je v tom, že pri takomto spôsobe máš na server dve požiadavky - prvá od klienta a následne opäť refresh. Jednu stránku načítavaš zbytočne nadvakrát. Pri málo navštevovaných stránkach by to možno bolo jedno, ale je vždy lepšie počítať s vyššou ako nižšou návštevnosťou a neučiť sa zlé postupy.

Podľa môjho názoru je riešenie relatívne jednoduché - kde je problém, aby si niektoré veci načítal už na začiatku php súbora? Použiť session je tiež podľa mňa zbytočné, keďže session by sa malo využívať skôr na iné veci (info o prihlasení a podobne, proste niečo, čo potrebuješ vážne niekam uložiť).

Neviem ako to máš presne riešené a úprimne, s php už taký rok vôbec nerobím, takže budem hlavne v teoretickej rovine.

Skús presunúť časť kódu, kde získavaš názov kategórie/produktu/článku (prípadne aj samotné získanie povedzme produktu/článku do premennej) na úvod kódu. Uložíš si to do premennej (čo potrebuješ samozrejme môžeš pichnúť do title alebo descriptionu) a v hlavnej content časti (kde to chceš zobraziť do html) proste len využiješ už získané info, prípadne dozískavaš to, čo nemáš (povedzme výpis kategórie eshopu viacerých produktov v cykle, alebo zoznam článkov kategórie...).

Hádam sa chápeme, je mi to trochu zložité vysvetľovať nejako zmysluplno, lebo prešiel som na úplne iný štýl aj logiku programovania :lol: Ak dačo nie je jasné, pýtaj sa, skúsim ti to viac priblížiť.







_________________
C#, PHP, ...
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.09.07
Prihlásený: 30.11.11
Príspevky: 143
Témy: 37
Príspevok Napísal autor témyOffline : 21.07.2010 17:28

Hmm, chapem. Kedze som na toto myslel az na zaver (chyba, ja viem. Ale nimi sa clovek uci:), to presuvanie teraz pre mna znamena prekopavku skriptov celeho projektu, kedze jednotlive sql dotazy su az v contente. Preto tato moja "zaplata". V podstate pre vsetky podstrany ich musim vytiahnut vyzsie.

S tym ucenim zlych postupov mas pravdu. Navyknut si na take zaplaty a lenivost(teda skor slaba predvydavost) pri analyze a tvorbe navrhu je vcelku pruser. Pre takeho samouka ako ja je super ked ma niekto nielen za ne zvozy, ale aj povie preco su zle a pripadne ukaze spravny smer.

Tak sa pustam do roboty, caka ma jej kopec. :) Vdaka krasne za tvorciu debatu a za usmernenie.


Offline

Skúsený užívateľ
Skúsený užívateľ
opozdene <title>

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 21.07.2010 17:30

Nemáš začo, od toho tu fórum je ;) Inak nič si z toho nerob, stane sa raz za čas každému :lol: Dôležité je potom rozhodnutie "čo teraz?". Či sa uspokojíš s nejakou záplatou alebo či to radšej prerobiť a mať neskôr jednoduchšiu robotu v prípade problémov...







_________________
C#, PHP, ...
Offline

Užívateľ
Užívateľ
opozdene <title>

Registrovaný: 26.11.06
Prihlásený: 22.01.24
Príspevky: 4118
Témy: 319
Bydlisko: HE/BA
Príspevok NapísalOffline : 21.07.2010 22:49

Pre teba by bolo možné vhodné využiť nejaký templatovací súbor. Jeden je aj v často používaných skriptoch. Ten funguje tak, že si najprv do premenných načítaš hodnoty, ktoré až na konci (keď už máš všetky výbery z DB a všetky výpočty hotové) vypíšeš. Znamená to, že title môžeš zmeniť aj pred koncom skriptu a on bude taký ako potrebuješ. Skús sa pozrieť na Comper Parser. Ten používam a je fakt skvelý.


Offline

Užívateľ
Užívateľ
opozdene <title>

Registrovaný: 05.09.09
Príspevky: 1141
Témy: 127
Bydlisko: Lehota pod ...
Príspevok NapísalOffline : 22.07.2010 22:13

Flety:
Nevieš to opísať prosím nejako zrozumiteľnejšie. Ako to, že title môže vypísať až na konci, ak to len nekešuje....
Ešte sa to len chystám prečítať, ale ak by si mohol urobiť k tomu nejaký úvod, tak to uvítam...
Už som tak unavený, že to nevládzem čítať...


Offline

Užívateľ
Užívateľ
opozdene <title>

Registrovaný: 26.11.06
Prihlásený: 22.01.24
Príspevky: 4118
Témy: 319
Bydlisko: HE/BA
Príspevok NapísalOffline : 22.07.2010 23:17

Najprv si načítaš triedu(dúfam, že vieš v skratke čo je to trieda a čo to robí - je to v podstate funkcia ktorá sa hrá na niečo viac :)), ktorá zabezpečuje to čo ty chceš(template parser).

Následne v kde robíš všelijaké výbery z databázy, výpočty, úpravy textov(substr(), str_replace(), atp.). Tieto výbery iné hodnoty si načítaš do konkrétnych premenných.

Na konci súboru(php) všetky tie premenné pošleš tej triede a pošleš jej aj informáciu o template súbore. Tento template súbor má nejakú štruktúru, ktorá hovorí triede ako má výsledný dokument vyzerať. Tam môžeš mať cykly, premenné, v niektorých triedach includy, podmienky a iné. Teda v php nevypisuješ nič, iba načítavaš do premenných v tomto template súbore nenačítavaš žiadne premenné, nemanipuluješ nimi, iba ich vypisuješ medzi potrebné html značky.

Pre teba by to znamenalo to, že do premennej $values['title'] by si si počas vykonávania skriptu načítaval rôzne hodnoty. Napríklad na začiatku súboru máš iba názov stránky. Postupne, keď už načítaš napríklad názov tovaru, tak ho tam doplníš a potom tam môžeš napríklad aj pridať nejaké ID tovaru atp. následne na konci súboru ti trieda túto hodnotu vypíše vo výsledku.

Tento templatovací systém funguje na takom princípe, že najprv sa všetko vypočíta, so všetkým sa manipuluje, a vyberá z DB(a iné akcie) a potom ako posledný krok, sa to vypíše. Teda pred tým môžeš robiť čo chceš s čím chceš, dokonca aj presmerovávať, meniť session údaje a všetko sa ti zobrazí až na koniec. Je to obrovská výhoda. Ale pridáva ti to aj prácu. Ja som to nemal rád, ale bol som nptený to začať používať v jednej časti projektu a uvažujem, že to začlením neskôr aj do tej druhej.


Offline

Skúsený užívateľ
Skúsený užívateľ
opozdene <title>

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 22.07.2010 23:27

Flety, nehnevaj sa, ale povedať o triede, že je to funkcia... Normálne nemáš problém rúcať celú myšlienku a logiku oop :lol:







_________________
C#, PHP, ...
Offline

Užívateľ
Užívateľ
opozdene <title>

Registrovaný: 05.09.09
Príspevky: 1141
Témy: 127
Bydlisko: Lehota pod ...
Príspevok NapísalOffline : 23.07.2010 9:10

Flety:
Citácia:
Následne v kde robíš všelijaké výbery z databázy,

AHÁ... :lol:

Vďaka za námahu, ale nechápem, ako vie tá trieda, čo má robiť a kam má čo umiestniť. Resp. to asi neni moc flexibilné...
A ak sa všetko najprv spracuje a až potom sa to odosiela, tak to spomaľuje načítanie, nie?

PS: Pokiaĺ viem OOP je tiež len znôžka funkcíí, ku ktorým sa len inak pristupuje. Všetci vieme, že za tým sú funkcie a nie žiadny zázrak.


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2
Príspevok NapísalOffline : 23.07.2010 9:41

camo, je prirodzene ze dynamicky tvoreny content sa najprv musi vyskladat a az nasledne sa odosiela na klienta a to hlavne z dovodu potreby zistenia velkosti contentu ktory posielas v headri HTTP responsu ako "Content-Length". pri statickom contente je to nepotrebne nakolko je to subor ktory svoju velkost ma uvedenu na filesysteme.


Offline

Skúsený užívateľ
Skúsený užívateľ
opozdene <title>

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 23.07.2010 13:56

camo, aby si pochopil, že oop nie je zďaleka len znôžka funkcií, odporúčam naštudovať si o tom nejaké materiály a reálne si vyskúšať programovať napr v C#, a potom si to porovnaj ;) Nikto tu nehovorí o zázraku, píšem hlavne o tom, že je to úplne iný prístup, iná logika...







_________________
C#, PHP, ...
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.09.07
Prihlásený: 30.11.11
Príspevky: 143
Témy: 37
Príspevok Napísal autor témyOffline : 23.07.2010 14:31

Dik Flety. Pre mna novinka, ktora sa perspektivne hodi. Lebo to poradie je casto dost obmedzujuca vec.


Offline

Skúsený užívateľ
Skúsený užívateľ
opozdene <title>

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 23.07.2010 14:48

Feko, neuvažoval si napr. nad iným programovacím jazykom? pri webstránkach nie je človek obmedzený len phpčkom







_________________
C#, PHP, ...
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.09.07
Prihlásený: 30.11.11
Príspevky: 143
Témy: 37
Príspevok Napísal autor témyOffline : 23.07.2010 17:22

Uvazoval. Len je teraz hlavne dopit (aspon v mojom okoli) po phpckovskych vecickach. Co by si mi doporucoval? ASP? A cim je ten dany jazyk lepsi(schodnejsi, iny..)?


Offline

Čestný člen
Čestný člen
opozdene <title>

Registrovaný: 21.02.06
Prihlásený: 08.12.14
Príspevky: 5404
Témy: 30
Bydlisko: Bratislava
Príspevok NapísalOffline : 23.07.2010 17:27

Predpokladám, že otázka bola zodpovedaná (keďže sa tu rieši už iba offtopic), ak ťa zaujíma, ktorý jazyk si vybrať, založ na to tému (ak netrafíš sekciu, ja ti to presuniem).
Prípadne si môžeš prečítať aj toto
http://www.pcforum.sk/net-vs-java-vt93736.html







_________________
Neradím a nekomunikujem cez SS, ak niečo potrebujete, máte iné možnosti: Ak vám zmizla téma, alebo sa vám niečo nepáči. Ak potrebujete nahlásiť príspevok/človeka, reportujte ho. Ak máte s niečim problém, riešte to v danej téme.
Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie. [ Príspevkov: 23 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. <title> pomocou javascriptu

v JavaScript, VBScript, Ajax

8

830

10.10.2007 19:02

zero0x Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. JavaScript v <title>

v JavaScript, VBScript, Ajax

3

333

17.10.2012 11:58

Lier Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Hrúbka <frame> a <rules> v <table>

v HTML, XHTML, XML, CSS

7

667

25.01.2009 22:10

Ďuri Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. formular: presun <option> zo <select> do <select>

v JavaScript, VBScript, Ajax

2

751

28.09.2009 15:27

tomast7 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. >>> Java - connection problem ! <<<

v Assembler, C, C++, Pascal, Java

2

700

22.07.2009 8:38

johny3212 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. HTML, CSS - skombinovat <DIV> a <p>

v HTML, XHTML, XML, CSS

2

587

28.04.2016 18:08

doubleR Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Interpunkcia v elementoch <textarea> a <select>

v HTML, XHTML, XML, CSS

4

458

30.10.2016 12:01

alvar Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. <tr> riadok tabulky ako odkaz <a>

v HTML, XHTML, XML, CSS

3

569

15.03.2010 15:32

1daemon1 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Nazdielanie netu, LAN<-->PC<--wifi-->Notebook

v Siete

1

1084

15.04.2006 23:44

Spirit Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Chladiče procesorov >>Všetky problémy sem<<

v Chladiče a všetky druhy chladenia

3

491

30.01.2013 22:08

DropaDred Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. >>>Schvalenie zostavy<<<

v PC zostavy

10

657

16.12.2010 21:55

abcdefgh Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. <a href> around <div>

v HTML, XHTML, XML, CSS

9

961

17.01.2007 22:43

exot Zobrazenie posledných príspevkov

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie. tagy <em> a <strong>

v Internetový marketing, SEO, reklama

24

1403

01.12.2009 0:27

shaggy Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. <ul> <li> nemam odrazky

v HTML, XHTML, XML, CSS

1

561

09.04.2010 18:26

stenley Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Nacitanie udajov z databazy do <input> a <textarea&

v PHP, ASP

5

698

03.11.2007 21:46

Matho Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. <p><hr></p>

v HTML, XHTML, XML, CSS

6

585

08.07.2010 21:41

camo Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra