Miten tarkistan tiedostosta onko siellä samaa merkkijonoa kuin hakemiston nimi. Eli sellainen tarkistus joka näyttää pelkästään ne hakemistot jotka löytyvät tekstitiedostosta.
Tämä siksi että hakemistoissa ei voi käyttää ääkkösiä. Ja muutenkin valikon otsikot saattavat olla erillaisia kuin hakemiston nimet.
Eli yksinkertaisuudessaan sellainen valikko jolla voi navigoida hakemistissa ja joka tarkistaa hakemiston otsikot tekstitiedostosta.
-Luet tiedoston file:llä ja looppaat sen forilla
-erottelet vaikka explodella hakemiston nimen ja hakemiston otsikon (en nyt tiedä missä muodossa sinulla ne siellä tiedostossa on, esim. "kuvahakemisto|kuvia", missä "kuvahakemisto" on hakemiston nimi ja "kuvia" hakemiston kuvaus)
-Tulostat valikon, jossa lukee tuo hakemiston kuvaus ja siitä on linkki itse hakemistoon
No okei. Jäikin mainitsematta että siis tekstitiedosto sisältää kaikki hakemistot eli myös alihakemistot. eli siis näitä alihakemistoja ei tulosteta vaan ensin ylähakemistot ja sitten alahakemistot
ensin näkymä on tämä:
[ylähakemisto 1]
[ylähakemisto 2]
[ylähakemisto 3]
ja kun valitaan joku ylähakemisto, näkymä on tämä:
[ylähakemisto 3]
...[alahakemisto 1]
...[alahakemisto 2]
...[alahakemisto 3]
Muut ylähakemistot piilotetaan.
Noh, sehän riippuu siitä miten olet alahakemistot erotellut sinne tekstitiedostoon. Missä kohtaa koodissa sulla on ongelmia? Periaatehan on melko selkeä, kuljetat nykyistä hakemistoa vaikka osoiterivillä $_GET-taulukossa ja luet tekstitiedostosta tuon kyseisen hakemiston kohdan.
<?php $hakemisto = ? (isset($_GET['hakemisto'])) ? $_GET['hakemisto'] : ''; $filu = file("hakemistot.txt"); looppaa filu { etsi hakemisto $hakemisto tiedostosta $filu jos löytyi, tulosta alihakemistot } jos ei löytynyt niin tulosta vaikka virheilmoitus ?>
Oppaista ja omista mietinnöistä löytyy eväät.
<?php $tt = file("valikkosuomi.txt"); foreach ($tt as $rivi) { $tieto = explode("|", $rivi); $hak = $tieto[1]; if (is_dir($hak)) { echo "löyty"; } } ?>
SAin tämmöisen koodin väsättyä. Mutta tuo nyt ei jostain syystä löydä hakemistoa. omasta mielestä tuon pitäis olla oikein. ainakin periaate. vai onko?
valikkosuomi.txt on siis tätä muotoa:
Hakemisto1|sivut/suo/hakemisto1 Hakemisto2|sivut/suo/hakemisto2 Hakemisto3|sivut/suo/hakemisto3
Käytä rtrimmiä - siellä rivin lopussa on aina rivinvaihto, joten yrität etsiä "hakemistonnimi"."rivinvaihto" nimistä hakemistoa.
No niinpä tietenkin. Hyvä kun tuollasta ei tule ajatelleeksi. Mut siis nyt tää toimii. Kiitos vain :)
Aihe on jo aika vanha, joten et voi enää vastata siihen.