Avatar billede docm Nybegynder
30. januar 2003 - 23:19 Der er 6 kommentarer og
1 løsning

Vis filer...

Jeg har lavet en php-fil-upload ting, og den fungerer! Det jeg gerne vil er herefter at lave en side hvor man kan se de filer der er blevet uploadet! Hvordan gør man det? Det skal være sådan at det kun er filerne der ligger i en mappe der skal vises, ikke noget med sådan et filtræ...
Avatar billede jespernaur Nybegynder
30. januar 2003 - 23:46 #1
Du kan bruge funktionerne opendir, readdir og closedir til at få informationer fra filerne i en mappe, her er et simpelt eksempel:

<?php
$handle=opendir('.');
echo "Directory handle: $handle\n";
echo "Files:\n";
while (($file = readdir($handle))!==false) {
    echo "$file\n";
}
closedir($handle);
?>
Avatar billede docm Nybegynder
31. januar 2003 - 00:08 #2
Kan dette også bruges, hvis jeg ønsker at kunne downloade filerne fra mappen?
Avatar billede docm Nybegynder
31. januar 2003 - 00:25 #3
Må smutte... Skal på ski i Tignes i 10 dage... vender tilbage i uge 7!
Avatar billede sqren Nybegynder
31. januar 2003 - 21:34 #4
Jeg er ikke særlig god til PHP, men har lige selv haft det samme problem. Jeg fandt et godt script der havde det indbygget.


<?
$extlimit = "yes"; //Hvis du kun vil have nogle specielle fil typer til skal du skrive "yes" nedenunder kan du angive hvilke.
$limitedext = array(".gif",".jpg",".png",".jpeg"); //Filertyper.
$sizelimit = "no"; //Vil du angive den maximume upload størrelse? angiv nedenunder.
$sizebytes = "200000"; //størrelse i bytes
$dl = "http://www.Sjovert.dk/demo/up-down"; //url hvor filerne skal uploades til (skal være et bibliotek og husk chmod)
$absolute_path = "/home/sjovert/public_html/demo/up-down"; //Den absolute sti hvor filerne skal uploades til (dette havde jeg svært ved har en vejledning nederst)
$websiteurl = "www.Sjovert.dk"; //Url til din side.
$websitename = "Sjovert"; Sidens navn

switch($action) {
default:
echo"
<html>
<head>
<title>Upload Or Download</title>
</head>
<body>
<a href=$PHP_SELF?action=upload>Upload File</a>
<a href=$PHP_SELF?action=download>Download File</a>
<a href=$websiteurl>Return to $websitename</a>
<br><br>
Powered by <a href=http://www.zachwhite.com/>PHP Uploader Downloader</a>
</body>
</html>";
break;
case "download":
echo "
<html>
<head>
<title>File Download</title>
</head>
<body><a href=$PHP_SELF?action=upload>Upload File</a> <a href=$websiteurl>Return to $websitename</a>";
$list = "<table width=700 border=1 bordercolor=#000000 style=\"border-collapse: collapse\">";
$list .= "<tr><td width=700><center><b>Click To Download</b></center></td></tr>";
$dir = opendir($absolute_path);
while($file = readdir($dir)) {
if (($file != "..") and ($file != ".")) {
//Download files with spaces fix by Kokesh
$list .= "<tr><td width=700><a href='$dl/$file'>$file</a></center></td></tr>";
}
}
$list .= "</table>";
echo $list;
echo"
<br><br>
Powered by <a href=http://www.zachwhite.com/>PHP Uploader Downloader</a>
</body>
</html>";
break;

case "upload":
echo"
<html>

<head>
<title>File Upload</title>
</head>

<body>

<form method=POST action=$PHP_SELF?action=doupload enctype=multipart/form-data>
<p>File to upload:<br>
<input type=file name=file size=30>
<p><button name=submit type=submit>
Upload
</button>
</form>
<br><br>
Powered by <a href=http://www.zachwhite.com/>PHP Uploader Downloader</a>
</body>

</html>";
break;


//File Upload
case "doupload":
$dir = "dir";
if ($file != "") {

if (file_exists("$absolute_path/$file_name")) {
die("File already exists");
}

if (($sizelimit == "yes") && ($file_size > $sizebytes)) {
die("File is to big. It must be $sizebytes bytes or less.");
}

$ext = strrchr($file_name,'.');
if (($extlimit == "yes") && (!in_array($ext,$limitedext))) {
die("The file you are uploading doesn't have the correct extension.");
}

@copy($file, "$absolute_path/$file_name") or die("The file you are trying to upload couldn't be copied to the server");

} else {
die("Must select file to upload");
}
echo "
<html>
<head>
<title>File Uploaded</title>
</head>
<body>";
echo $file_name." was uploaded";
echo "<br>
<a href=$PHP_SELF?action=upload>Upload Another File</a>
<a href=$PHP_SELF?action=download> Download File</a>
<a href=$websiteurl> Return to $websitename</a><br><br>
Powered by <a href=http://www.zachwhite.com/>PHP Uploader Downloader</a>
</body>
</html>";
break;

}
?>


Absolute Sti:
Sæt dette ind i et php dokument og upload det så kan du se hvad din absolute sti er.
<?php
echo "<html>" . $_SERVER["DOCUMENT_ROOT"] . "</html>";
?>
Avatar billede sqren Nybegynder
31. januar 2003 - 21:38 #5
glemte at skrive absolute sti er faktisk det samme som "url hvor filerne skal uploades til" Så du skal lægge absolut sti php filen i dit upload biliotek og så får du den absolute sti. Lidt kryptisk formuleret, men håber du forstår det.
Avatar billede docm Nybegynder
09. februar 2003 - 15:20 #6
Great... Det var lige det jeg manglede...
--> sgren vil du ikke lige lave et svar så du kan få dine point?
Avatar billede sqren Nybegynder
17. februar 2003 - 13:28 #7
Tak for point.
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