PHP tiedostolistaus (määritys mitkä tied. näkyvät)

Moukan tuurilla

Pohjana olen käyttänyt: http://www.ohjelmointiputka.net/koodit_nayta.php?tunnus=286

Millä konstilla saisi määriteltyä joko ne tiedostot mitkä listataan (esim: jpg, gif, pdf...) ... tai vastaavasti mitä tiedostoja ei listata.

Olen fiilannut html/php:tä niin, että tiedostot avautuvat listauksen alla olevaan iframeen ja sinne aukee tietty myös tuon index.php (sama listaus aukeaa silloin myös iframeen - näkyvät päällekäin). Samaten hakemistossa on .htaccess -tiedosto, eikä senkään tarvitsisi listauksessa näkyä: iframeen avautuu ainoastaan virheilmoitus.

Php-taidot on luokka "moukan tuurilla", joten jos viitsitte vastata, huomioikaa tuo.

4

237

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • BC

      Laitat tuohon if is_dir -ehtolauseen else kohtaan uuden ehtolauseen, jossa tarkistat muuttujasta $ltied onko tiedoston nimi kiellettyjen listalla. Tämän voisi toteuttaa vaikka näin:

      $estetyt = array("index.php", ".htaccess", "jne", "jne");
      if(in_array($ltied, $estetyt))
      {
      echo "";
      echo "$ltied";
      echo "".filesize($ltied)."";
      echo "".date("d.m.y H:i",filectime($ltied))."";
      echo "";
      $tied ;
      $tiedk=$tiedk filesize($ltied);
      }

      • BC

        Anteeksi, tohon tuli perustavanlaatuinen moka. Siis tietenkin ehtolausekkeessa tulee olla käänteinen in_array -- eli suomeksi ehtolausekkeen tulisi mennä if(!in_array($ltied, $estetyt))

        Tää foorumi nähtävästi poisti tagit aaltosulkeen ja muita olennaisia merkkejä... Mutta siis muutat sen elsen sisällä olevan tulostuksen ehdolliseksi siten, että:

        else
        {
        $estetyt = array(".htaccess", ".htpasswd", "index.php");
        if(!in_array($ltied, $estetyt))
        {
        // Tulostus, eli noi echot ja niiden alla olevat laskennat
        // kopsaat vaan noi edelliset ja liität tähän väliin
        }
        }

        Ja jos hifistellä haluat, niin voit muuttaa elsen ehdolliseksi itsessään muuttamalla sen muotoon:

        elseif(!in_array($ltied, $estetyt))

        Tällön vaan toi $estetyt taulukkomuuttuja pitää olla jossain ylempänä koodissa. Vaikka just ennen while -ketjua.


    • Voisi käyttää myös
      if(in_array($ltied, $estetyt)) continue;

      Skippaa aina kierroksen kun löytyy estetty tiedosto

      • ----------

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

    Luetuimmat keskustelut

    1. Maataloustuet pois

      Jokainen maksakoon harrastuksensa itse. Eihän golfin peluutakaan maksa yhteiskunta.
      Maailman menoa
      278
      6323
    2. Kotihoito suomussalmella

      Mitämieltä ootte suomussalmen kotihoidosta?
      Suomussalmi
      53
      6225
    3. Australia, Britannia ja Kanada tunnustivat Palestiinan

      Aikooko Petteri Lapanen pysytellä persujen ja uskovaisten panttivankina ja jättää Suomen historian väärälle puolelle?
      Maailman menoa
      92
      5814
    4. Kohtalokas laukaus

      IL 20.9.25 "Ihminen kuoli baarin edustalla Kajaanissa Poliisi ei epäile tapauksessa rikosta." "Kajaanin keskustassa on k
      Kajaani
      42
      5225
    5. Joko alkaa menemään tajuntaan tämä yliluonnollinen yhteys?

      Varmaan pikkuhiljaa. Muista olla kiltisti ❤️
      Ikävä
      52
      4834
    6. Työeläkkeen saamiseksi olisi tehtävä töitä

      Meillä on Suomessa iso joukko ihmisiä, joilla olisi vielä työkykyä jäljellä, mutta joilta puuttuu arjesta mielekäs tekem
      Maailman menoa
      226
      4178
    7. Sählyhallitus 2023-2025, mailat heiluvat, mutta pallo karkaa kulmaan

      Salibandy on organisoitua. Sähly on taas sitä, kun joku tuo mailat ja palloja on ehkä yksi. Sitä tämä hallituskin on: pe
      Maailman menoa
      4
      3991
    8. Mitä juuri sinulle kuuluu?

      Tänään? Rehellisesti.
      Ikävä
      151
      3686
    9. Muistattekos kun Sannan aikana suomalaisten varallisuuteen lisättiin viidennes

      Köyhät voittivat eniten mutta rikkaimmat kuitenkin köyhtyi!
      Maailman menoa
      39
      3252
    10. Joulukinkku NYT

      Sian kankuista tulee vielä pula. Nyt on oikea aika hankkia joulukinkku.
      Maailman menoa
      28
      3163
    Aihe