Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: PHP - Valikko ja hekemistot

Faarao [27.09.2005 11:30:37]

#

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.

tsuriga [27.09.2005 12:24:20]

#

-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

Faarao [27.09.2005 13:10:28]

#

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.

tsuriga [27.09.2005 16:17:08]

#

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.

Faarao [28.09.2005 00:13:47]

#

<?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

tsuriga [28.09.2005 01:20:08]

#

Käytä rtrimmiä - siellä rivin lopussa on aina rivinvaihto, joten yrität etsiä "hakemistonnimi"."rivinvaihto" nimistä hakemistoa.

Faarao [28.09.2005 18:52:44]

#

No niinpä tietenkin. Hyvä kun tuollasta ei tule ajatelleeksi. Mut siis nyt tää toimii. Kiitos vain :)

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta