Avatar billede snolle Nybegynder
10. juli 2003 - 09:35 Der er 23 kommentarer og
1 løsning

php kodning hentning af word.doc filer fra en mappe

Jeg er ikke så sikker på php, jeg skal bruge en php kode til en html side hvor den skal henvise til en mappe hvor der kun ligger word.doc filer i. den skal lave en liste med alle de doc filer der ligger i mappen, og lave dem til links til hvert enkelte doc fil navnet på linket skal bare være navnet på doc filen den heviser til.

Det haster lidt derfor 150 point jeg skal bruge hele den side der henviser til den mappe eller i hvert fald bare php koden.

Takker på forhånd
Avatar billede sukos Juniormester
10. juli 2003 - 09:43 #1
<?php

$sti = dirname($_SERVER["DOCUMENT_ROOT"] . $_SERVER["PHP_SELF"]) ."/"; // Dir som denne fil ligger i

$path = opendir($sti); // åben dir

while (false !== ($files = readdir($path))) { // læs dir igennem

$ext = pathinfo($files); // find filtype

if (@strtolower($ext["extension"]) == "doc") { // er det en doc-fil?
    echo"<a href=\"". dirname($_SERVER["PHP_SELF"]) ."/". $files ."\">". $files ."</a><br>\n";
    }
}
?>
Avatar billede sukos Juniormester
10. juli 2003 - 09:45 #2
Hvis der er mangee, er det ikke nogen dum ide at sortere:

<?php

$sti = dirname($_SERVER["DOCUMENT_ROOT"] . $_SERVER["PHP_SELF"]) ."/"; // Dir som denne fil ligger i

$path = opendir($sti); // åben dir

while (false !== ($files = readdir($path))) { // læs dir igennem

$ext = pathinfo($files); // find filtype

if (@strtolower($ext["extension"]) == "doc") { // er det en doc-fil?

sort($files);

    echo"<a href=\"". dirname($_SERVER["PHP_SELF"]) ."/". $files ."\">". $files ."</a><br>\n";
    }
}
?>
Avatar billede sukos Juniormester
10. juli 2003 - 09:48 #3
hov
Avatar billede sukos Juniormester
10. juli 2003 - 09:58 #4
<?php

if(dirname($_SERVER["PHP_SELF"]) == "\\") {
$dir = "/";
}else{
$dir = dirname($_SERVER["PHP_SELF"]) ."/";
}

echo dirname($_SERVER["PHP_SELF"]);
$sti = dirname($_SERVER["DOCUMENT_ROOT"] . $_SERVER["PHP_SELF"]) ."/"; // Dir som denne fil ligger i

$path = opendir($sti); // åben dir

while (false !== ($files = readdir($path))) { // læs dir igennem

$ext = pathinfo($files); // find filtype

if (@strtolower($ext["extension"]) == "php") { // er det en doc-fil?
    echo"<a href=\"". $dir . $files ."\">". $files ."</a><br>\n";
    }
}
?>
Avatar billede snolle Nybegynder
10. juli 2003 - 09:59 #5
dirname skal bare udskiftes med min sti?
Avatar billede sukos Juniormester
10. juli 2003 - 10:03 #6
Næh, du lægger bare filen i det dir den skal bruges i.

dirname() finder dir du er i, f.eks. /docfiler
Men ligger den i roden af domainet, bliver dirname() til \ og det dutter jo ikke når man vil linke! :O)
Avatar billede snolle Nybegynder
10. juli 2003 - 10:03 #7
ja det er en doc fil
Avatar billede snolle Nybegynder
10. juli 2003 - 10:06 #8
". $files ."
\n"; } } ?>


Det er hvad der kommer frem på siden
Avatar billede snolle Nybegynder
10. juli 2003 - 10:08 #9
har bare lige lavet en enkel html side

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<?php

if(dirname($_SERVER["PHP_SELF"]) == "\\") {
$dir = "/";
}else{
$dir = dirname($_SERVER["PHP_SELF"]) ."/";
}

echo dirname($_SERVER["PHP_SELF"]);
$sti = dirname($_SERVER["DOCUMENT_ROOT"] . $_SERVER["PHP_SELF"]) ."/"; // Dir som denne fil ligger i

$path = opendir($sti); // åben dir

while (false !== ($files = readdir($path))) { // læs dir igennem

$ext = pathinfo($files); // find filtype

if (@strtolower($ext["extension"]) == "doc") { // er det en doc-fil?
    echo"<a href=\"". $dir . $files ."\">". $files ."</a><br>\n";
    }
}
?></body>
</html>
Avatar billede snolle Nybegynder
10. juli 2003 - 10:08 #10
det skal være doc
Avatar billede sukos Juniormester
10. juli 2003 - 10:12 #11
Den her echo dirname($_SERVER["PHP_SELF"]); skal jo heller ikke være med.
Smed den på for at teste.

Men virker det?
Avatar billede sukos Juniormester
10. juli 2003 - 10:13 #12
Er ikke med?
Filen som læser dir igennem, skal jo være en phpfil?
Ellers bliver koden jo ikke afviklet?
Avatar billede snolle Nybegynder
10. juli 2003 - 10:14 #13
min fejl
Avatar billede snolle Nybegynder
10. juli 2003 - 10:16 #14
Ja det virker accepter dit svar nu mange tak
Avatar billede snolle Nybegynder
10. juli 2003 - 10:20 #15
1 ting til hvor sætter jeg target?
Avatar billede snolle Nybegynder
10. juli 2003 - 10:26 #16
i xp vil den gerne downloade doc files det kan man ikke komme udenom vel? så den bare åbner det
Avatar billede sukos Juniormester
10. juli 2003 - 10:29 #17
hmm, jo, er ikke lige helt sikker på det.
Men kan vel så også linke til en "download fil" i stedet?
Avatar billede snolle Nybegynder
10. juli 2003 - 10:30 #18
altså den skal ikke downloade det men bare åbne det direkte...men vigtigere hvor sætter jeg target?
Avatar billede sukos Juniormester
10. juli 2003 - 10:31 #19
En hurtig løsning er jo at bruge højreklik og vælge "gem destination som"
Avatar billede sukos Juniormester
10. juli 2003 - 10:33 #20
Nåh, je gtroede ikke den skulle åbnes! :O)

Target?

æh, det gør du jo når linket laves:

echo"<a href=\"". $dir . $files ."\" target=\"_BLANK\">". $files ."</a><br>\n";

for at få linket åbnet i et nyt vindue
Avatar billede snolle Nybegynder
10. juli 2003 - 10:39 #21
takker
Avatar billede sukos Juniormester
10. juli 2003 - 11:13 #22
Forresten, så mangler der lige en
closedir($path);

efter

while (false !== ($files = readdir($path))) { // læs dir igennem

$ext = pathinfo($files); // find filtype

if (@strtolower($ext["extension"]) == "doc") { // er det en doc-fil?
    echo"<a href=\"". $dir . $files ."\">". $files ."</a><br>\n";
    }
}
closedir($path);
?>
Avatar billede snolle Nybegynder
10. juli 2003 - 12:08 #23
hvad gør den?
Avatar billede snolle Nybegynder
10. juli 2003 - 12:31 #24
lige meget
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester