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
342
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
Hei! Halusin vain kertoa.
En tiedä luetko näitä, mutta näimme n.4vk sitten, vaihdoimme muutaman sanan ja tunsin edelleen kipinän välillämme. Katso214317Maatalous- ja yritystuet pois, työeläkevaroilla valtion velka pois
Suomi saadaan eheytettyä kädenkäänteessä, kun uskalletaan tehdä rohkeita ratkaisuja. Maatalous- ja yritystuet ovat hait1514067Miksi ikävä ei helpotu vuosien jälkeenkään?
Tänään olin ensimmäistä kertaa sinun lähtösi jälkeen tilassa, jossa vuosia sitten nähtiin ensimmäistä kerta. Ollessani133256Riikka on siis suomalaisille velkaa 84 mrd
Jos kauhukabinetti istuu vaalikauden loppuun. Keskimäärin yli 20 miljardia uutta velkaa rikkaiden veronalennuksiin jokai673056- 862674
Sanna on suomalaisille siis velkaa 24 mrd euroa
Muistanette vielä kuinka Italian remonttirahoja perusteltiin sillä, että italialaiset ostaa suomalaisilta paidatkin pääl1512632Luotathan siihen tunteeseen, joka välillämme on?
Uskothan myös, että se kestää tämän? Kaipaan sinua valtavasti. Vielä tehdään yhdessä tästä jotain ihmeellistä ja kaunist282323- 331954
"Sanna Marinin kirja floppasi", kertoo eräs median otsikko
"Miljardien tappio - Sanna Marin vaikenee", kertoo toinen otsikko. Marin ei siis siinä kirjassaan kerro sanallakaan For1201605- 201555