Forum » Izdelava spletišč » PHP funkcija ki poišče datoteko v mapi in jo includa
PHP funkcija ki poišče datoteko v mapi in jo includa
![](https://static.slo-tech.com/stili/avatar_gray.gif)
winlins ::
Pozdravljeni,
Zanima me če kdo ve za php funkcijo. Imam funkcijo:
Ta deluje približno tako: ko kliknem na prvi link (menu) na indexni strani mi preveri če je stran v istem direktoriju in includa stran. Problem pa nastane če jaz imam indexne strani v podmapah vrže error da strani ni mogoče najti. Jaz bi pa rabil funkcijo da če ta pogoj ne drži gre avtomatično iskat file v drug direktorij in ko ga najde ga vstavi.
Lp, Gregor
Zanima me če kdo ve za php funkcijo. Imam funkcijo:
<?php $x = $_GET['stran']; if (isset($_GET['stran'])) { include_once $x . ".php"; } else { echo "nekaj"; } ?>
Ta deluje približno tako: ko kliknem na prvi link (menu) na indexni strani mi preveri če je stran v istem direktoriju in includa stran. Problem pa nastane če jaz imam indexne strani v podmapah vrže error da strani ni mogoče najti. Jaz bi pa rabil funkcijo da če ta pogoj ne drži gre avtomatično iskat file v drug direktorij in ko ga najde ga vstavi.
Lp, Gregor
![](https://static.slo-tech.com/stili/avatar_gray.gif)
videc ::
Težka bo, ker se ne ukvarjam s PHP-jem. Lahko ti v psevdo kodi napišem.
Funkcija idx_file()
if file exists end
else idx_File();
}
torej, kličeš isto funkcijo znotraj same sebe. Tole sem našel, če bi ti pomagalo:
http://php.net/manual/en/function.readd... (skrolaj dol)
Funkcija idx_file()
if file exists end
else idx_File();
}
torej, kličeš isto funkcijo znotraj same sebe. Tole sem našel, če bi ti pomagalo:
http://php.net/manual/en/function.readd... (skrolaj dol)
A variation on listing all the files in a directory recursively. The code illustrates a basic technique : the use of an auxiliary function. It avoids building temporary lists which are merged on the way back. Note that the array which collects the information must be passed by reference. <?php function listdir($dir='.') { if (!is_dir($dir)) { return false; } $files = array(); listdiraux($dir, $files); return $files; } function listdiraux($dir, &$files) { $handle = opendir($dir); while (($file = readdir($handle)) !== false) { if ($file == '.' || $file == '..') { continue; } $filepath = $dir == '.' ? $file : $dir . '/' . $file; if (is_link($filepath)) continue; if (is_file($filepath)) $files[] = $filepath; else if (is_dir($filepath)) listdiraux($filepath, $files); } closedir($handle); } $files = listdir('.'); sort($files, SORT_LOCALE_STRING); foreach ($files as $f) { echo $f, "\n"; } ?>
![](https://static.slo-tech.com/stili/avatar_gray.gif)
HardFu ::
upam da tega ne mislis kam v javnost dat, taka koda kar klice po zlorabi.
http://codeable.io
![](https://static.slo-tech.com/stili/avatar_gray.gif)
SeTAr ::
funkcija isset ne preverja če datoteka obstaja, to počne funkcija file_exists. Tako da niti tvoja zgornja koda ne počne tega, kar ti misliš...
![](https://static.slo-tech.com/stili/avatar_gray.gif)
winlins ::
Pa je to sploh možno narediti ali naj poiščem drugo pot. Sem pa začetnik v php in to kar delam je pa bolj tak tak.
Jaz samo rabim to: da ko includa file in ga ne najde naj gre iskat v drug direktorij kjer je npr. 40 datotek.php
Jaz samo rabim to: da ko includa file in ga ne najde naj gre iskat v drug direktorij kjer je npr. 40 datotek.php
Zgodovina sprememb…
- spremenil: winlins ()
![](https://static.slo-tech.com/stili/avatar_gray.gif)
HardFu ::
Drugo pot si najdi, po moznosti taksno z bazo. Ce pa ze moras prek includov potem pa opusti iskanje ampak se enostavno prepricaj da file tam je.
http://codeable.io
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | PHP in objektno programiranje (strani: 1 2 )Oddelek: Programiranje | 11829 (10296) | kivi113 |
» | Download vsebine strani s JSOddelek: Izdelava spletišč | 2519 (1817) | MrBrdo |
» | Osnovno php vprašanjeOddelek: Izdelava spletišč | 1541 (1262) | R33D3M33R |
» | IncludanjeOddelek: Izdelava spletišč | 1035 (879) | McAjvar |
» | konec vseh php ukazovOddelek: Programiranje | 992 (824) | mustafa111 |