Simppeli PHP navigointi haussa

hinaaja 5

Pitäisi saada yksinkertainen vertikaalinavigaatio toteutettua niin ettei samoja linkkejä joutuisi kopiomaan moneen HTML dokumenttiin.

PHP:llä varmaan saa tehtyä niin että linkit haetaan jostain ulkoisesta tiedostosta. Varmaan .css muotoilut saadaan kyytiin?

Tyyliin:

eka linkki
toka linkki
kolmas
jne.

10

1441

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Sahrah

      include("valikko.php");

      tuon komennnon kun läjäytät php koodiisi, niin saat valikko.php:n sisällön juuri siihen kohtaan, jossa include lukee.

      jokaiseen sivudokumenttiin vain tuo, simppeliä eikös? :O:O:O:O

      • hinaaja5

        Kiitos, mutta anna vielä tarkemmin.

        Miten tuo valikko.php dokumentti rakennetaan? tarviiko kaikki normaali HTML-koodit alkuun etc.

        Kerro niinkuin idiootille :)


      • Sahrah
        hinaaja5 kirjoitti:

        Kiitos, mutta anna vielä tarkemmin.

        Miten tuo valikko.php dokumentti rakennetaan? tarviiko kaikki normaali HTML-koodit alkuun etc.

        Kerro niinkuin idiootille :)

        noo jos nyt idjootille pitää kertoa, niin se voisi mennä vaikka sillain, että teet eusivun kokonaan valmiiksi html css kaikki php yms mitä ikinä siihen haluatkaan.

        Kun sinulla on valmis etusivu, nappaa siitä KAIKKI koodi pois, joka tulee ennen itse asiasisältöä (siis sitä joka sivulla muuttuu aina kun selailee sivustoasi), ne kaikki kopioit valikko.php tiedostoon.

        en osaa oikein ymmärrettävämmin kirjoittaa tuota, mutta täällä: http://www.ohjelmointiputka.net/opas.php?tunnus=phpj4#sivupohjat

        on hyvä selostus siitä ja esimerkkikin vielä :)


      • -------
        Sahrah kirjoitti:

        noo jos nyt idjootille pitää kertoa, niin se voisi mennä vaikka sillain, että teet eusivun kokonaan valmiiksi html css kaikki php yms mitä ikinä siihen haluatkaan.

        Kun sinulla on valmis etusivu, nappaa siitä KAIKKI koodi pois, joka tulee ennen itse asiasisältöä (siis sitä joka sivulla muuttuu aina kun selailee sivustoasi), ne kaikki kopioit valikko.php tiedostoon.

        en osaa oikein ymmärrettävämmin kirjoittaa tuota, mutta täällä: http://www.ohjelmointiputka.net/opas.php?tunnus=phpj4#sivupohjat

        on hyvä selostus siitä ja esimerkkikin vielä :)

        Include on tarkoitettu lähinnä PHP tiedostojen includettamiseen, joten kannattaa vilkasta http://fi.php.net/readfile tuo on myös tietoturvallisempikin...

        Sekä tuollaisenaan noissa on se ongelma että jos nimeät vahingossa valikko.html .htm päätteiseksi, niin kaikki sivut ovat ilman valikkoa ;) Siksi tuohon kannattaa lisätä ainakin http://fi.php.net/file-exists pieni tarkistus ja miettiä miten toimiitaan virhetilanteessa.

        Ja tuollaisissa template jutussa on omat ongelmansa, mutta ei niistä sen enempää, kun tuo kuitenkin riittää pienille sivuille.


        Mitä tuohon Ohjelmointiputkan oppaaseen tulee niin esim kasittely.php sisältää XSS aukon, sekä tuolla on hieman kyseenalaista tietoa joka tarkoittaa, että PHP 6 tultua scriptit eivät toimi. http://us3.php.net/manual/en/ini.core.php#ini.register-globals


      • hinaaja5
        ------- kirjoitti:

        Include on tarkoitettu lähinnä PHP tiedostojen includettamiseen, joten kannattaa vilkasta http://fi.php.net/readfile tuo on myös tietoturvallisempikin...

        Sekä tuollaisenaan noissa on se ongelma että jos nimeät vahingossa valikko.html .htm päätteiseksi, niin kaikki sivut ovat ilman valikkoa ;) Siksi tuohon kannattaa lisätä ainakin http://fi.php.net/file-exists pieni tarkistus ja miettiä miten toimiitaan virhetilanteessa.

        Ja tuollaisissa template jutussa on omat ongelmansa, mutta ei niistä sen enempää, kun tuo kuitenkin riittää pienille sivuille.


        Mitä tuohon Ohjelmointiputkan oppaaseen tulee niin esim kasittely.php sisältää XSS aukon, sekä tuolla on hieman kyseenalaista tietoa joka tarkoittaa, että PHP 6 tultua scriptit eivät toimi. http://us3.php.net/manual/en/ini.core.php#ini.register-globals

        Hienoa ja kiitos, Its ALIVE!!

        Niinkuin aina, se on helppoa sitten kun sen osaa mutta ei ennen.

        Murehditaan tietoturvaa myöhemmin.


      • Sahrah
        ------- kirjoitti:

        Include on tarkoitettu lähinnä PHP tiedostojen includettamiseen, joten kannattaa vilkasta http://fi.php.net/readfile tuo on myös tietoturvallisempikin...

        Sekä tuollaisenaan noissa on se ongelma että jos nimeät vahingossa valikko.html .htm päätteiseksi, niin kaikki sivut ovat ilman valikkoa ;) Siksi tuohon kannattaa lisätä ainakin http://fi.php.net/file-exists pieni tarkistus ja miettiä miten toimiitaan virhetilanteessa.

        Ja tuollaisissa template jutussa on omat ongelmansa, mutta ei niistä sen enempää, kun tuo kuitenkin riittää pienille sivuille.


        Mitä tuohon Ohjelmointiputkan oppaaseen tulee niin esim kasittely.php sisältää XSS aukon, sekä tuolla on hieman kyseenalaista tietoa joka tarkoittaa, että PHP 6 tultua scriptit eivät toimi. http://us3.php.net/manual/en/ini.core.php#ini.register-globals

        include on tarkoitettu kaikenlaisten tiedostojen sisällyttämiseen toiselle sivulle. Toki readfilekin toimii, mutta joskin vähän hitaammin ja varaa turhaan muistia enemmän kuin include ;)

        Se on sanomattakin selvää, että jokin tarkistus on tehtävä sille onko valikkotiedosto olemassa, käytti sitten includea taikka readfileä.


      • -------
        Sahrah kirjoitti:

        include on tarkoitettu kaikenlaisten tiedostojen sisällyttämiseen toiselle sivulle. Toki readfilekin toimii, mutta joskin vähän hitaammin ja varaa turhaan muistia enemmän kuin include ;)

        Se on sanomattakin selvää, että jokin tarkistus on tehtävä sille onko valikkotiedosto olemassa, käytti sitten includea taikka readfileä.

        "include on tarkoitettu kaikenlaisten tiedostojen sisällyttämiseen toiselle sivulle."

        Niin no, toki se siinäkin toimii tietyin ehdoin, mutta include ja require on tarkoitettu lähinnä PHP-scripti tiedoston sisällyttämiseen PHP-scriptiin. Usein include_once ja require_once ovat siihen käyttöön parempia.


        "Toki readfilekin toimii, mutta joskin vähän hitaammin ja varaa turhaan muistia enemmän kuin include ;)"

        Hymiöstä päätellen tiedät miten asia on ;)
        Mutta include se hitaampi on ja kuluttaa enempi muistia, koska include laittaa tiedoston PHP-tulkin kautta jota readfile ei tee.

        Jos olet erimieltä niin voinet varmaankin perustella, miksi esim HTML tiedosto kannattaa laittaa PHP-tulkin kautta vaikka siinä mitään PHP juttuja ei ole?

        Ja jos includea käyttää niin tuo PHP-tulkki on muistettava tietoturvan ja toimivuuden takia.


        "include on tarkoitettu kaikenlaisten tiedostojen sisällyttämiseen toiselle sivulle."

        Tätä on pakko kommentoida uudestaa, kokeileppas huviksesi sisällyttää includella tiedosto jossa on niin onnisuuko ;)


      • -------
        ------- kirjoitti:

        "include on tarkoitettu kaikenlaisten tiedostojen sisällyttämiseen toiselle sivulle."

        Niin no, toki se siinäkin toimii tietyin ehdoin, mutta include ja require on tarkoitettu lähinnä PHP-scripti tiedoston sisällyttämiseen PHP-scriptiin. Usein include_once ja require_once ovat siihen käyttöön parempia.


        "Toki readfilekin toimii, mutta joskin vähän hitaammin ja varaa turhaan muistia enemmän kuin include ;)"

        Hymiöstä päätellen tiedät miten asia on ;)
        Mutta include se hitaampi on ja kuluttaa enempi muistia, koska include laittaa tiedoston PHP-tulkin kautta jota readfile ei tee.

        Jos olet erimieltä niin voinet varmaankin perustella, miksi esim HTML tiedosto kannattaa laittaa PHP-tulkin kautta vaikka siinä mitään PHP juttuja ei ole?

        Ja jos includea käyttää niin tuo PHP-tulkki on muistettava tietoturvan ja toimivuuden takia.


        "include on tarkoitettu kaikenlaisten tiedostojen sisällyttämiseen toiselle sivulle."

        Tätä on pakko kommentoida uudestaa, kokeileppas huviksesi sisällyttää includella tiedosto jossa on niin onnisuuko ;)

        "Se on sanomattakin selvää, että jokin tarkistus on tehtävä sille onko valikkotiedosto olemassa, käytti sitten includea taikka readfileä."

        Noin sen pitäisikin olla, mutta nykyään monelle (kuten hinaaja5:lle) riittää kunhain toimii, jos joskus ei toimisi niin korjataan sitten jos jaksetaan. Ja monella ei ole edes perus asiat tietoturvasta hallussa ja silti tehdään isoillekkin yrityksille sivuja. Eräällä TV-yhtiön sivuilla oli include( $_GET['sivu'] ); josta sitten uutisoitiin paljon että taitavat hakkerit murtautuivat ja sabotoivat sivuja.

        Siksi kerralla kannattaa asiat opetella tekemään kunnolla, niin välttyy monelta ongelmalta ja aikaa säästyy paljon.


      • Sahrah
        ------- kirjoitti:

        "Se on sanomattakin selvää, että jokin tarkistus on tehtävä sille onko valikkotiedosto olemassa, käytti sitten includea taikka readfileä."

        Noin sen pitäisikin olla, mutta nykyään monelle (kuten hinaaja5:lle) riittää kunhain toimii, jos joskus ei toimisi niin korjataan sitten jos jaksetaan. Ja monella ei ole edes perus asiat tietoturvasta hallussa ja silti tehdään isoillekkin yrityksille sivuja. Eräällä TV-yhtiön sivuilla oli include( $_GET['sivu'] ); josta sitten uutisoitiin paljon että taitavat hakkerit murtautuivat ja sabotoivat sivuja.

        Siksi kerralla kannattaa asiat opetella tekemään kunnolla, niin välttyy monelta ongelmalta ja aikaa säästyy paljon.

        Juu ei kyllä onnistu, jos koitamme sisällyttää includella tiedoston, jossa on virheellistä PHP-koodia, se on itsestään selvyys.

        Mokoma perkele olet oikeassa!! Perjaatteessa ole mitään järkeä ajaa tulkin läpi pelkkää HTML koodia, mutta mitä jos herra Hinaaja5 joskus laittaakin jonkun pienen kellonaika scriptin näkyville valikkotiedostoonsa? Sitten ei readfilet toimi, mutta tuskin Herra Hinaaja5 osaa niin tehdä.

        Olen saannut koko elämäni ajan kasvatuksena oppia, että readfile on paha, hyi hyi sitä ei saa käyttää se on tarkoitettu vain paskaiseen työhön esim. lukemaan binääritiedosto kun sitä selaimelle lähetetään. Nyt olen siinäkin asiassa viisastunut ja tiedän, että readfileä voidaan käyttää sivistyneeseenkin scriptin osaan :)

        ps. kummasta saa muutes pahemman tuhon aikaiseksi?

        include($_GET['sivu']);

        vai:

        readfile($_GET['sivu']);


      • -------
        Sahrah kirjoitti:

        Juu ei kyllä onnistu, jos koitamme sisällyttää includella tiedoston, jossa on virheellistä PHP-koodia, se on itsestään selvyys.

        Mokoma perkele olet oikeassa!! Perjaatteessa ole mitään järkeä ajaa tulkin läpi pelkkää HTML koodia, mutta mitä jos herra Hinaaja5 joskus laittaakin jonkun pienen kellonaika scriptin näkyville valikkotiedostoonsa? Sitten ei readfilet toimi, mutta tuskin Herra Hinaaja5 osaa niin tehdä.

        Olen saannut koko elämäni ajan kasvatuksena oppia, että readfile on paha, hyi hyi sitä ei saa käyttää se on tarkoitettu vain paskaiseen työhön esim. lukemaan binääritiedosto kun sitä selaimelle lähetetään. Nyt olen siinäkin asiassa viisastunut ja tiedän, että readfileä voidaan käyttää sivistyneeseenkin scriptin osaan :)

        ps. kummasta saa muutes pahemman tuhon aikaiseksi?

        include($_GET['sivu']);

        vai:

        readfile($_GET['sivu']);

        "Juu ei kyllä onnistu, jos koitamme sisällyttää includella tiedoston, jossa on virheellistä PHP-koodia, se on itsestään selvyys."

        Tuo oli vain esimerkki, lyhkäset tagit sallittu niin silloin jo XML tiedostokin aiheuttaa ongelmia.


        "mitä jos herra Hinaaja5 joskus laittaakin jonkun pienen kellonaika scriptin näkyville valikkotiedostoonsa?"

        Silloin muuttaa readfilet -> includeksi ;) Vaikka sivuja olisi paljon niin pienellä scriptillä tuo muutos käy hetkessä.

        Mutta tosiaan jos tietää että tarttee myös PHP-scriptejä suorittaa, niin silloin ei kannata käyttää readfile.


        "ps. kummasta saa muutes pahemman tuhon aikaiseksi?

        include($_GET['sivu']);

        vai:

        readfile($_GET['sivu']);"

        Includella. Readfilellä pystyy vain XSS ja katsomaan palvelimella olevien tiedostojen sisältöä (jotka näkyvät sinun oikeuksilla). Tosin jos palvelimella vaikka phpMyAdmin niin silloin pääsee tietokantaankin käsiksi kun tietää tunnuksen/salasanan.

        Mutta includella pystyy tekemään kaikki samat mitä readfilellä, sekä suorittamaan omia PHP-scriptejä joka tekee tuosta tosi pahan, halutessa voit tuhota tietokannat jne... Tai muokata tiettyjä tiedostoja niin, että ne logittaa kaikki salasanat ja mielenkiintoiset jutut laittaa ne julkiseen hakemistoon josta ne on helppo käydä katsomassa.

        Tekemällä hyvin pieniä muutoksia ja korjaamalla alkuperäisen ja muutkin huomaamansa aukot tuota on todella vaikea huomata.

        Jos sivuilla noin on, niin korjaamiseksi ei todellakaan riitä enään pelkän include kohdan korjaaminen, vaan kaikki tiedostot on poistettava ja siirrettävä uudestaan, myös tietokantakin olisi palautettava siihen varmuuskopioon joka on otettu ennen aukon hyödyntämistä, näin varmistetaan datan oikeellisuus. Mutta tässä on taas omat ongelmansa. Tietenkin tuota palauttamista pystyy helpottamaan esim vertailemalla milloin tiedostoja muokattu jne...

        Asia muuttuu jos allow_url_include = 0, mutta näin jostain syystä ei useinkaan ole, tuo ei vaikuta readfileen. Vaikka tuon sallimiselle ei ole oikein mitään perusteita, jos tuommosta tarttee niin silloin tehdään vaan hieman toisin.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Orpo räyhää: kansan on muututtava

      Orpon mukaan kansa ei elä kokoomuksen kanssa samassa todellisuudessa, ja sen vuoksi kansan on muututtava. Kas kun ei san
      Maailman menoa
      263
      3281
    2. Muovikassikartelli

      Kauppaketjut ovat yhdessä sopineet muovikassin yksikköhinnaksi 59 senttiä. Milloin viranomaiset puuttuvat tähän kartell
      Talousrikokset
      20
      1819
    3. Aidon persun tunnistaa Marinin palvonnasta

      Oli kyse sitten Halla-ahosta tai Putinista. Ensimmäisenä aidolle persulle tulee mieleen Marin.
      Maailman menoa
      24
      1485
    4. Mikä tekee sen

      Vetovoiman kaivatussasi?
      Ikävä
      81
      1324
    5. Harmittaako joku

      Harmittaako joku asia tai asiat, mitä on tapahtunut tai jäänyt tapahtumatta?
      Ikävä
      137
      1028
    6. Miksi et vain uskalla!?

      On niin ikävä...
      Ikävä
      81
      974
    7. Hallintooikeus..

      "Asemakaavapäätös pysyy voimassa.Poikkeamista ja rakentamista koskevat luvat hylättiin" kertoo Pyhäjärven Sanomat netti.
      Pyhäjärvi
      61
      778
    8. Olen rakastunut

      varattuun joka ei eroa. Miten tunteista eroon? Tämä ei ole tavanomaista. On elämäni suuri rakkaus.
      Ikävä
      86
      726
    9. Jos se joskus oli molemminpuolista

      niin hyvin me molemmat onnistuttiin pitämään toinen epätietoisena.
      Ikävä
      60
      658
    10. Laita nyt se viesti

      Tiedän että haluat tavata. Kirjoitat, pyyhit, kirjoitat... Lähetä se viesti 😗
      Ikävä
      50
      616
    Aihe