Autor | Zpráva | ||
---|---|---|---|
shaman171 Profil |
#1 · Zasláno: 11. 4. 2010, 00:34:15
Ahoj,
nevím jak to přesně nazvat, ale jde o to, že mám rozpis (vždy na měsíc dopředu) , dle kterého vysíláme internetové rádio. Rozpis nechci každý den na stránkách složitě editovat a tak používám script na Svátek na den kdy jsem smazal dny a do kazdého dnu si vkládám můj rozpis, který vypadá například: if ($den==22) echo"23.BŘEZNA 2010= FÉNIX REVUE=17:00-20:00= Luboš Zemanec + Lukáš Černosta </br> 24.BŘEZNA 2010 = VEČERNÍ ŠPLECHTY = 17:00-20:00 = Honza Hejduk </br> 26.BŘEZNA 2010= FÉNIX REVUE=17:00-20:00= Mirka Strádalová + Vojta Kačírek </br> 28.BŘEZNA 2010 = HVĚZDY JAKO HVĚZDY = 16:00-19:00 = Luboš Zemanec + <a href=\"http://www.fenixradio.net/newfenixuvhost.htm\" target=\"_top\">HOST</a> </br> <span class=\"redaktori\">[Redaktoři: Dáša Vildová a Jakub Müller]</span> + <a href=\"http://www.fenixradio.net/newfenixuvhost.htm\" target=\"_top\">HOST</a> </br> <span class=\"redaktori\">[Redaktoři: Dáša Vildová a Jakub Müller]</span> </br> 29.BŘEZNA 2010= FÉNIX REVUE=17:00-20:00= Mirka Strádalová + Lukáš Černosta </br> 31.BŘEZNA 2010 = VEČERNÍ ŠPLECHTY = 17:00-20:00 = Honza Hejduk"; if ($den==23) echo"23.BŘEZNA 2010= FÉNIX REVUE=17:00-20:00= Luboš Zemanec + Lukáš Černosta </br> 24.BŘEZNA 2010 = VEČERNÍ ŠPLECHTY = 17:00-20:00 = Honza Hejduk </br> 26.BŘEZNA 2010= FÉNIX REVUE=17:00-20:00= Mirka Strádalová + Vojta Kačírek </br> 28.BŘEZNA 2010 = HVĚZDY JAKO HVĚZDY = 16:00-19:00 = Luboš Zemanec + <a href=\"http://www.fenixradio.net/newfenixuvhost.htm\" target=\"_top\">HOST</a> </br> <span class=\"redaktori\">[Redaktoři: Dáša Vildová a Jakub Müller]</span> + <a href=\"http://www.fenixradio.net/newfenixuvhost.htm\" target=\"_top\">HOST</a> </br> <span class=\"redaktori\">[Redaktoři: Dáša Vildová a Jakub Müller]</span> </br> 29.BŘEZNA 2010= FÉNIX REVUE=17:00-20:00= Mirka Strádalová + Lukáš Černosta </br> 31.BŘEZNA 2010 = VEČERNÍ ŠPLECHTY = 17:00-20:00 = Honza Hejduk"; if ($den==24) echo"24.BŘEZNA 2010 = VEČERNÍ ŠPLECHTY = 17:00-20:00 = Honza Hejduk </br> 26.BŘEZNA 2010= FÉNIX REVUE=17:00-20:00= Mirka Strádalová + Vojta Kačírek </br> 28.BŘEZNA 2010 = HVĚZDY JAKO HVĚZDY = 16:00-19:00 = Luboš Zemanec + <a href=\"http://www.fenixradio.net/newfenixuvhost.htm\" target=\"_top\">HOST</a> </br> <span class=\"redaktori\">[Redaktoři: Dáša Vildová a Jakub Müller]</span> + <a href=\"http://www.fenixradio.net/newfenixuvhost.htm\" target=\"_top\">HOST</a> </br> <span class=\"redaktori\">[Redaktoři: Dáša Vildová a Jakub Müller]</span> </br> 29.BŘEZNA 2010= FÉNIX REVUE=17:00-20:00= Mirka Strádalová + Lukáš Černosta </br> 31.BŘEZNA 2010 = VEČERNÍ ŠPLECHTY = 17:00-20:00 = Honza Hejduk"; Jak vidéte je to změť znaků, kdy každý následující den je umazán den předchozí a zobrazí se to bez něj, je to podle mého názoru velice krkolomné řešení (v PHP se moc nevyznám) Jak to vyřešit lépe? Napríklad tím, že bych udělal TXT soubor s rozpisem a k tomu dodělat PHP script, který by určité dny mazal jeden řádek a zbytek zobrazil? Problém by pak asi byl v tom, že né na každý den je rozpis napsaný, některé dny jsou vynechané a rozpis by musel zůstat stejný... napadá Vás lepší řešení? Poslední problém je, že nemám prozatím přístup k databázy, ovšem v krajním případě bych jí možná dokázal zařídit, zatím mi ji hosting nedal. Moc děkuju za každou pomoc. |
||
Majkl578 Profil |
#2 · Zasláno: 11. 4. 2010, 00:59:24 · Upravil/a: Majkl578
Napadá mě takové poměrně zajímavé řešení. Využilo by se konfiguračního INI souboru, ve kterém by se stanovily jednotlivé hodnoty pro daná data.
Abych nastínil jak to řešit: foo.ini: 1 = a 4 = b 6 = c 14 =d 18 = e 22 = f $data = parse_ini_file('foo.ini');//načte pole, kde číslo dne bude asociativní klíč for ($day = date('d'), $last = date('t'); $day <= $last; $day++) { echo 'Den ' . $day . (isset($data[(string) $day]) ? ': ' . $data[(string) $day] : ' nemá žádný záznam') . "\n"; } |
||
shaman171 Profil |
#3 · Zasláno: 11. 4. 2010, 01:07:38
Majkl578:
Moc děkuju za reakci, ovšem mě tohle nic neříká, jak jsem psal řeším to tímto způsobem protože v PHP jsme vážně začátečník a nebyl pro mě problém tenhle script předělat, ale s tímhle co píšeš nevím moc jak si poradit :-( |
||
Majkl578 Profil |
#4 · Zasláno: 11. 4. 2010, 01:12:01
shaman171:
V tom případě zkus lépe specifikovat, jak to má fungovat. Jestli se zobrazují pouze položky aktuálního měsíce nebo nějakého období apod. Moje současné řešení vypíše položky pro zbytek aktuálního měsíce. |
||
shaman171 Profil |
#5 · Zasláno: 11. 4. 2010, 01:19:35
Moc děkuju.
Ano, vždy by se měl vypisovat aktuální měsíc, s tím, že dny co už byly se vypisovat nesmí a až budou zbývat poslední dva dny v měsící, musí se k tomu dovypisovat i výpis na další měsíc. |
||
Majkl578 Profil |
#6 · Zasláno: 11. 4. 2010, 01:43:36 · Upravil/a: Majkl578
Dobře tedy.
Zde je PHP script, který by to měl obstarat. <?php $data = parse_ini_file(dirname(__FILE__) . '/rozpis.ini');//načte pole, kde číslo dne bude asociativní klíč $dates = array(); for ($day = 29, $last = date('t'); $day <= $last; $day++) { $dates[] = $day . '.' . (int) date('m') . '.'; } if (29 > date('t') - 2) { for ($day = 1, $last = date('t', strtotime('+3 days')); $day <= $last; $day++) { $dates[] = $day . '.' . (int) date('m', strtotime('+3 days')) . '.'; } } foreach ($dates as $date) { echo 'Den ' . $date . (isset($data[(string) $date]) ? ': ' . $data[(string) $date] : ' nemá žádný záznam') . "<br>"; } 1.4. = a 4.4. = b 6.4. = c 14.4. = d 18.4. = e 22.4. = f 27.4. = g 2.5. = h den.měsíc. = hodnota Obojí v archivu zde. |
||
shaman171 Profil |
#7 · Zasláno: 11. 4. 2010, 01:52:22
Moc děkuju, opravdu, ovšem když jsem t zkoušel, (zapoměl jsi tam ukončit PHP znaky "?> ") coý je v pohdoe, ovšem když jsem to nahrál a vyzkoušel vyhodilo mi to toto:
Den 29.4. nemá žádnĂ˝ záznam Den 30.4. nemá žádnĂ˝ záznam Den 1.4.: a Den 2.4. nemá žádnĂ˝ záznam Den 3.4. nemá žádnĂ˝ záznam Den 4.4.: b Den 5.4. nemá žádnĂ˝ záznam Den 6.4.: c Den 7.4. nemá žádnĂ˝ záznam Den 8.4. nemá žádnĂ˝ záznam Den 9.4. nemá žádnĂ˝ záznam Den 10.4. nemá žádnĂ˝ záznam Den 11.4. nemá žádnĂ˝ záznam Den 12.4. nemá žádnĂ˝ záznam Den 13.4. nemá žádnĂ˝ záznam Den 14.4.: d Den 15.4. nemá žádnĂ˝ záznam Den 16.4. nemá žádnĂ˝ záznam Den 17.4. nemá žádnĂ˝ záznam Den 18.4.: e Den 19.4. nemá žádnĂ˝ záznam Den 20.4. nemá žádnĂ˝ záznam Den 21.4. nemá žádnĂ˝ záznam Den 22.4.: f Den 23.4. nemá žádnĂ˝ záznam Den 24.4. nemá žádnĂ˝ záznam Den 25.4. nemá žádnĂ˝ záznam Den 26.4. nemá žádnĂ˝ záznam Den 27.4.: g Den 28.4. nemá žádnĂ˝ záznam Den 29.4. nemá žádnĂ˝ záznam Den 30.4. nemá žádnĂ˝ záznam Ty paznaky mi nevadí, to je kódování, ovšem proč mi to vyhuzuje i dny co nemají záznam? A navíc to vypisuje celý měsíc a né měsíc od aktuálního data, aby tam nebyly staré záznamy. |
||
Majkl578 Profil |
#8 · Zasláno: 11. 4. 2010, 02:12:29 · Upravil/a: Majkl578
Kdyby jenom to, udělal jsem tam i ošklivou chybku. :)
Tady je upravená verze. Snad už funkční. Kódování je UTF-8. |
||
shaman171 Profil |
#9 · Zasláno: 11. 4. 2010, 02:19:18
Majkl578:
tohle už je úžasný! Moc děkuju opravdu! Ulehčil jsi mi tím orovsky náročnou editaci tech mejch střeštěnejch souborů. Škoda že tu nefunguje něco jako virtuální peníze jako na jiných fórech poslal byhc ti co bych měl. Moc děkuju!! |
||
Majkl578 Profil |
#10 · Zasláno: 11. 4. 2010, 02:29:34
shaman171:
Není zač. |
||
Časová prodleva: 3 dny
|
|||
shaman171 Profil |
#11 · Zasláno: 13. 4. 2010, 18:23:31
Ahoj, tak jsem narazil trochu na problém, nenašel jsem na netu návod jakou syntaxy má ini soubor, potřebuju do něj dát i moje definovyný CSS třídy a různý další znaky, vím že v PHP se to neguje například zpětným lomítkem nevíte jak je to tady v INI souborech? jak tam napsat HTML tagy aby mi to neházelo chyby? Moc díky.
|
||
Časová prodleva: 14 let
|
0