Miten tarkistetaan toimivasti onko kansio olemassa? Alla oleva ei jostain syystä toimi.
$userinfo = file("a/acc/{$kayttaja}.txt");
for($k = 0; $k < sizeof($userinfo); $k )
{
$polku = "kansiot/$userinfo[$k]"; // testatusti toimiva osoite
if (file_exists("$polku")) { // tämä ei tulostu ikinä
echo '
< li> < a href="kansiot/'.$userinfo[$k].'/index.php" target="oikea"> '.$userinfo[$k].'< /li>
';
}
}
echo "< a href=\"$polku\"> $polku< /a> < br> "; // osoitteen toimivuus tarkistettu tällä
onko kansio olemassa?
4
359
Vastaukset
- phoopo
Olisiko PHP-dokkarista apua
http://fi2.php.net/manual/en/class.dir.php - keksa1
suhteellisilla osoiteilla eli jotenkin näin:
< ?php
if( file_exists( $_SERVER{'DOCUMENT_ROOT'} . "/my_images/abc.jpg")) {
...
}
? >- kansioita
Sain homman toimimaan lopulta hyvinkin helposti lukemalla tiedot taulukkoon, ja vertaamalla taulukoiden sisältöjä. Ehkä kuulostaa purkkaviritykseltä, mutta toimiihan se näinkin. Tässä tulevaisuutta ajatellen itsellenikin muistiinpanona mallikoodi... Olennainen osa oli tuo preg_replace, jota en heti huomannut lisätä.
$nim = opendir("kansiot/");
while ($hak = readdir($nim)) {
if (!is_file($hak) and ($hak!= "." && $hak!= ".." ))
{
$hak = preg_replace('/\s*/m', '', $hak);
$kaikki[] = $hak;
}
}
closedir($nim);
$file = file("tiedosto.txt");
for($k = 0; $k < sizeof($file); $k )
{
$file[$k] = preg_replace('/\s*/m', '', $file[$k]);
if (in_array( $file[$k], $kaikki))
{
// tee jotain
}
} - kauppa50
kansioita kirjoitti:
Sain homman toimimaan lopulta hyvinkin helposti lukemalla tiedot taulukkoon, ja vertaamalla taulukoiden sisältöjä. Ehkä kuulostaa purkkaviritykseltä, mutta toimiihan se näinkin. Tässä tulevaisuutta ajatellen itsellenikin muistiinpanona mallikoodi... Olennainen osa oli tuo preg_replace, jota en heti huomannut lisätä.
$nim = opendir("kansiot/");
while ($hak = readdir($nim)) {
if (!is_file($hak) and ($hak!= "." && $hak!= ".." ))
{
$hak = preg_replace('/\s*/m', '', $hak);
$kaikki[] = $hak;
}
}
closedir($nim);
$file = file("tiedosto.txt");
for($k = 0; $k < sizeof($file); $k )
{
$file[$k] = preg_replace('/\s*/m', '', $file[$k]);
if (in_array( $file[$k], $kaikki))
{
// tee jotain
}
}näin
$log = 'ur file.txt';
if (!file_exists($log)) {
do something
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Miten Eerolan silmäkuvat voivat levitä muutamassa tunnissa ympäri maailmaa?
Seuraako koko maailma persujen ja erityisesti Eerolan somea reaaliajassa? Edes kansanedustajan itsemurha eduskuntatalos4045911Miten löydän sinut
Ja saan sanottua kaiken mitä haluan sinulle kertoa? Ja kuinka kuuntelisit minua sen hetken? Kuinka voin ilmaista sen mit251829Suomen kansa haluaa Antti Lindtmanista pääministerin
Lindtman on miltei tuplasti suositumpi kuin etunimikaimansa Kaikkonen. Näin kertoo porvarimedian teettämä kysely. http721319Moraaliköyhä S-ryhmä
S-ryhmä on kehystänyt Israel-boikottipäätöksen “ihmisoikeuslinjaukseksi”, mutta toteutus paljastaa sen onttouden: valiko107967- 57958
- 58948
Yöllinen autolla kaahari Heinolan seudulla
Asukkaita häiriköivän nuoren herran autokaahaus keskustelu poistettu, onko jokin hyvävelijärjestelmä käytössä ?133929- 78871
- 39841
Vaikea tilanne
Hieman kolkuttaa omatuntoa, kun on osoittanut kiinnostusta väärää naista kohtaan. En ymmärrä miten toinen on voinut te75831