PHP Scripty

Programovacie jazyky, rady, poradňa...
MFa
Medium Professional
Medium Professional
Používateľov profilový obrázok
Príspevky: 1046
Registrovaný: 02 jan 2012, 0:56

Re: PHP Scripty

Príspevok od používateľa MFa »

Uz to ide, nasiel som 2 chybicky. Include nebolo v zatvorke (ale to asi nemusi byt), ale za poslednym else chybalo "}". Dakujem za Tvoj cas a ochotu. :)

Este som sa chcel spytat, ci by bolo mozne dorobit, aby sa dal includeovat subor s inym menom, nez je ta stranka. Napr bude ?stranka=uvod, ale zadefinovane bude, ze sa vlozi subor napr. "obsah.php".
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: PHP Scripty

Príspevok od používateľa audiotrack »

áno dá, sprav si to pole asociatívne. Klúče budú parametre, hodnoty budú skutočné súbory čo sa budú vkladať. Zmeny budú nasledovné:

Kód: Vybrať všetko

$aAllowedPages = array('str1', 'str2', 'hero_ma_chlpate_gule', 'fakt_ze_jo');
zmeň na

Kód: Vybrať všetko

$aAllowedPages = array(
'str1' => 'str1.php', 
'str2' => 'str2.php', 
'hero_ma_chlpate_gule' => 'nejaka_stranka_co_sa_vola_uplne_inak.php', 
'fakt_ze_jo' => 'index.html'
);
a potom to includovanie:

Kód: Vybrať všetko

if (array_key_exists($_GET['stranka'], $aAllowedPages) and file_exists($aAllowedPages[$_GET['stranka']])) {
        include $aAllowedPages[$_GET['stranka']];
    } else {
        header('HTTP/1.0 404 Not Found');
        include '404.php';
    }
a to $sPath nad tým môžeš zmazať. Radšej si tú stránku aj s príponou nadefinovať, lebo takto si odkázaný iba na php a nič iné
nika147
Expert
Expert
Používateľov profilový obrázok
Príspevky: 157
Registrovaný: 23 feb 2012, 17:04
Bydlisko: blízky východ
Kontaktovať používateľa:

Re: PHP Scripty

Príspevok od používateľa nika147 »

Zdravím, dá sa cez php nejako spraviť na stránke to, že ak som na nejakej podstránke tak v menu bude tá podstránka označená? Tak ako je tu http://zenit.svsbb.sk/old/13-14/slovak/ ... -2/?p=home , ak som na úvode, je pozadie sivé. Tam je to robené cez CSS. Tak to viem spraviť, ale chcela by som si na stránke spraviť to, že si menu vytvorím ako osobitný súbor menu.php a do ostatných súborov ho vložím cez include. Aby bolo jednoduchšie ho upravovať a nemusela som meniť každý súbor zvlášť.
sharky-no
King
King
Používateľov profilový obrázok
Príspevky: 1681
Registrovaný: 31 okt 2006, 19:53

Re: PHP Scripty

Príspevok od používateľa sharky-no »

to s tym includovanim je v pohode, mozes spravit nieco taketo

Kód: Vybrať všetko


/*subor index.php*/
$akt = "home";
include("menu.php"); 


/* toto je v subore menu.php */
<ul>
<li><a class="<?php if(isset($akt) && $akt == "home") echo "active"; ?>" href="./index.php">Home</a></li>
<li><a class="<?php if(isset($akt) && $akt == "about") echo "active"; ?>" href="./about.php">About</a></li>
</ul>

potom v about.php by si zmenila len hodnotu $akt

Kód: Vybrať všetko

$akt = "about";
include("menu.php");
nika147
Expert
Expert
Používateľov profilový obrázok
Príspevky: 157
Registrovaný: 23 feb 2012, 17:04
Bydlisko: blízky východ
Kontaktovať používateľa:

Re: PHP Scripty

Príspevok od používateľa nika147 »

To ma nenapadlo. Dík :)
MFa
Medium Professional
Medium Professional
Používateľov profilový obrázok
Príspevky: 1046
Registrovaný: 02 jan 2012, 0:56

Re: PHP Scripty

Príspevok od používateľa MFa »

A co ak by som mal "$akt" definovane az pod includnutim menu?
sharky-no
King
King
Používateľov profilový obrázok
Príspevky: 1681
Registrovaný: 31 okt 2006, 19:53

Re: PHP Scripty

Príspevok od používateľa sharky-no »

tak by to nefungovalo, resp. premena v menu by mala hodnotu null, pretoze nebola este definovana
MFa
Medium Professional
Medium Professional
Používateľov profilový obrázok
Príspevky: 1046
Registrovaný: 02 jan 2012, 0:56

Re: PHP Scripty

Príspevok od používateľa MFa »

A ako to spravit aby to islo?
sharky-no
King
King
Používateľov profilový obrázok
Príspevky: 1681
Registrovaný: 31 okt 2006, 19:53

Re: PHP Scripty

Príspevok od používateľa sharky-no »

jedine ma napada javascript riesenie.

ked nemas tu premenu definovanu pri vykreslovani menu, tak v PHP s tym nic neurobis.
Michaelo
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6177
Registrovaný: 16 júl 2008, 20:29
Bydlisko: Pri PC
Kontaktovať používateľa:

Re: PHP Scripty

Príspevok od používateľa Michaelo »

Tak nejak. Toto som tiez riesil a jedina moznost je potom len JS.
Ja osobne som si spravil script co zoberie URL na ktorej si, odstrani z nej vsetko aj po "/" a to potom porovnava s linkami v menu. Ak tam taky najde, tak mu da hodnotu active.
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: PHP Scripty

Príspevok od používateľa audiotrack »

sharky-no napísal:jedine ma napada javascript riesenie.

ked nemas tu premenu definovanu pri vykreslovani menu, tak v PHP s tym nic neurobis.
ale urobí, len komplikovane a neefektívne. Môže zapnúť output buffer, aby sa výstup neposielal hneď na klienta. Na konci si potom natiahne obsah z bufferu, regexom prepíše classu príslušnej položky, a flushne buffer aby sa obsah odoslal klientovi.
nika147
Expert
Expert
Používateľov profilový obrázok
Príspevky: 157
Registrovaný: 23 feb 2012, 17:04
Bydlisko: blízky východ
Kontaktovať používateľa:

Re: PHP Scripty

Príspevok od používateľa nika147 »

Mám ďalšiu otázku. Robím registráciu a má tam byť dátum príchodu a odchodu. Chcem dať na web 3x select, v jednom budú dni, v druhom mesiace a v treťom roky. Dájú sa nejako zapísať v databáze do tabuľky do rámčeka príchod všetky 3 hodnoty za sebou? Alebo musím spraviť rámčeky deň príchodu, mesiac a rok?
*****HERO*****
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2446
Registrovaný: 08 máj 2006, 1:34

Re: PHP Scripty

Príspevok od používateľa *****HERO***** »

da sa aj tak aj tak, ak teda myslis pojmom "rámček" bunku tabulky ..

najlepsie by to bolo ale ulozit do jednej bunky typu DATE
nika147
Expert
Expert
Používateľov profilový obrázok
Príspevky: 157
Registrovaný: 23 feb 2012, 17:04
Bydlisko: blízky východ
Kontaktovať používateľa:

Re: PHP Scripty

Príspevok od používateľa nika147 »

hej bunka, to slovo mi neprišlo na myseľ.
No ja by som chcela vlastne uložiť 3 hodnoty z 3 rôznych selectov do jednej bunky. Neviem, či je to teraz sformulované zrozumiteľnejšie. Ako sa to dá?
*****HERO*****
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2446
Registrovaný: 08 máj 2006, 1:34

Re: PHP Scripty

Príspevok od používateľa *****HERO***** »

ved ja chapem a aj som ti odpovedal.

da sa to ulozit milion sposobmi, napr do bunky typu DATE
nika147
Expert
Expert
Používateľov profilový obrázok
Príspevky: 157
Registrovaný: 23 feb 2012, 17:04
Bydlisko: blízky východ
Kontaktovať používateľa:

Re: PHP Scripty

Príspevok od používateľa nika147 »

Dobre ale ako to všetko uložím do jednej? Stavím sa že je to úplne primitívne a som asi jediný človek na svete čo to nevie...
*****HERO*****
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2446
Registrovaný: 08 máj 2006, 1:34

Re: PHP Scripty

Príspevok od používateľa *****HERO***** »

a s cim konkretne je problem? co mas uz hotove?

ved fungovat by to malo tak, ze z POSTu si vytiahnes tie 3 hodnoty (den, mesiac, rok), spojis ich napr do Y-m-d formatu a insertnes do DB
nika147
Expert
Expert
Používateľov profilový obrázok
Príspevky: 157
Registrovaný: 23 feb 2012, 17:04
Bydlisko: blízky východ
Kontaktovať používateľa:

Re: PHP Scripty

Príspevok od používateľa nika147 »

A s akým príkazom ich spojím? Skúšala som pole a to mi nefungovalo.
*****HERO*****
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2446
Registrovaný: 08 máj 2006, 1:34

Re: PHP Scripty

Príspevok od používateľa *****HERO***** »

audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: PHP Scripty

Príspevok od používateľa audiotrack »

nika147 najlepšie bude keď ukážeš čo si skúšala, aby sme ti vedeli konkrétnejšie poradiť a povedať čo robíš zle
Napísať odpoveď