|
| Upload funktion Fra : Jan Pedersen |
Dato : 02-08-05 19:32 |
|
Hej
Jeg har på mit web-hotel (surftown) et lille rodet sub domæne, hvor jeg
gemmer lidt forskellige billeder mv. som jeg støder på.
Men ville grene lave en mulighed for at lave en simpel upload funktion, så
jeg skal smide filer op via en browser frem for at skulle logge ind via ftp.
Nogen der kan hjælpe med en løsning
På forhånd tak
Jan Pedersen
| |
Ulrik Nielsen (02-08-2005)
| Kommentar Fra : Ulrik Nielsen |
Dato : 02-08-05 19:46 |
| | |
Thomas Larsen (04-08-2005)
| Kommentar Fra : Thomas Larsen |
Dato : 04-08-05 17:28 |
|
her er et komplet uploadscript håber det kan hjælpe dig lidt
<?php
//Hvis bruger trykker på upload button
if(isset($_POST['uploadbtn'])) {
//Tæl hvormange fil felter der bliver submitted
$antal = count($_FILES['upfil']['name'])."<br>";
//Upload dir
$uploaddir = "c:/upload/";
//Sæt filernes max størrelse i byte
$maxfilesize = 1000000;
//Her sættes tilladte filtyper
$allowedfiles = array("jpg", "jpeg", "gif", "bmp", "tif", "png");
//Kør det i en for løkke det antal gange der er fil felter
for ($x=0; $x<$antal; $x++) {
//find de tomme form felter, Her skal der intes gøre andet end måske skive
en fejlkode ud
if(empty($_FILES['upfil']['name'][$x])) {
//Evt udskrives fejl her
echo "fil nr $x er tom her skal der ikke gøres noget<br>";
} else {
//Her sættes lidt variabler man kan bruge i scriptet
//Det orginale filnavn
$filnavn = $_FILES['upfil']['name'][$x];
//Den orginale filstørrelse i byte
$filsize = $_FILES['upfil']['size'][$x];
//Den orginale mime filtype
$filtype = $_FILES['upfil']['type'][$x];
//Det tmp navn php giver filen
$tmpname = $_FILES['upfil']['tmp_name'][$x];
//Fil extension bruges til at tjekke om filtype er tilladt
$ext = pathinfo($filnavn);
$ext = strtolower($ext['extension']);
//Her testes om filens størrelse overskrider $maxsize
if($filsize > $maxfilesize) {
//Her udskrives en fejl besked hvis filen er for stor
echo "fil nr <b>$x ".$filnavn."</b> Er for stor den. filen er på:
".$filsize." byte og max størrelse er på: ".$maxfilesize ."<br>";
} else {
//Her testes om filtype er tilladt
if(!in_array($ext, $allowedfiles)) {
//Her udskrives en fejl meddelse hvis ikke filtype er tilladt
echo "Filtype: <b>.".$ext."</b> Er ikke tilladt<br>";
} else {
//Upload file
//Finder random filnavn til filen
$newfilename = md5(rand(0, 99999)).$filnavn;
//rykker uploadet fil til uploaddir
move_uploaded_file($tmpname, $uploaddir.$newfilename);
//Udskriver lidt info om filen
echo "fil nr: $x & Filnavn er " .$filnavn. " filtype er ". $filtype ."
Filstørrelse er ".$filsize. "Bytes. Det nye filnavn på fil er
$newfilename<br>";
}
}
}
}
} else {
echo "Du skal trykke på knappen";
}
?>
<form action="fil.php" method="POST" enctype="multipart/form-data">
<?php
//Her sættes antal filfelter der skal være i formen
$antalfiler = 50;
$i = 0;
for($i=0; $i<$antalfiler; $i++) {
?>
<input type="file" name="upfil[]"><br>
<?
}
?>
<input type="submit" name="uploadbtn" value="Upload">
</form>
| |
|
|