Avatar billede haolan Nybegynder
18. december 2005 - 13:35 Der er 6 kommentarer og
2 løsninger

Upload, udvidelse + fejl

Jeg er ved at lave et uploadsystem, og det er første gang jeg arbejder med filhåndtering i php.

Jeg har fuldt den ellers udemærkede guide på webcafé.dk og har fået kodet følgene:

<?
$config['lib'] = "./uploads";
$config['max_file_size'] = "1000";

//Test af PHP-version

list($major, $minor, $rev) = explode(".", phpversion());
if($major < 4) {
    die("PHP4 og derover er påkrævet");
}

//Lav moderne arrays til ældre php-versioner
if($minor < 1) {
$_FILES = $HTTP_POST_FILES;
$_POST = $HTTP_POST_VARS;
$_SERVER = $HTTP_SERVER_VARS;
}

//FRA TMP TIL FIL

$fra = $_FILES["upfil"]["tmp_name"];
$til = $_FILES["config"]["lib"] . "/" . $_FILES["upfil"]["name"];

//TJEK FILSTØRRELSE

$file_size = filesize($fra)/1024;
if($file_size > $config["max_file_size"]) {
    die("Filen er for stor. Din fil må max fylde ".$config['max_file_size']."kb, og din fylder ".ceil($file_size)."kb");
}

//UPLOAD FIL
if(function_exists("move_uploaded_file")) {
    move_uploaded_file($fra, $til);
} else {
    copy($fra, $til);
}
?>

Når jeg prøver at uploade en fil får jeg følgene fejl:

Warning: move_uploaded_file(): SAFE MODE Restriction in effect. The script whose uid/gid is 1011/1011 is not allowed to access / owned by uid/gid 0/0 in /var/www/vivaa.dk/new/user/upload.php on line 33


Desuden skal den gerne udvides lidt, så den kun kan uploade nogle udvalgte filtyper, fx  .doc, .txt og den slags.
Og så vil jeg gerne have den brugerbaseret, så en bruger max kan have for 1MB filer liggende.

Jeg anvender gerne MySQL til formålet.

Nogen der kan hjælpe mig ud af disse problemer?
Avatar billede udvikler Nybegynder
18. december 2005 - 13:40 #1
Er du sikker på at du har givet mappen tilladelse ? (CHMOD 777)
-> http://www.webcafe.dk/artikler/diverse/ftp/#chmod
Avatar billede haolan Nybegynder
18. december 2005 - 13:41 #2
Jeps.. det har jeg gjort
Avatar billede hmortensen Nybegynder
18. december 2005 - 13:47 #3
Det er her den er gal:
$til = $_FILES["config"]["lib"] . "/" . $_FILES["upfil"]["name"];

Skal rettes til:
$til = $config["lib"] . "/" . $_FILES["upfil"]["name"];
Avatar billede udvikler Nybegynder
18. december 2005 - 13:48 #4
Avatar billede haolan Nybegynder
18. december 2005 - 14:11 #5
Najs.. nu kan den uploade :)

Tak for det hmortensen :)

Så mangler jeg bare udvidelserne..
Avatar billede haolan Nybegynder
07. februar 2006 - 19:46 #6
hm mortensen læg svar for points.. så får du halvdelen :)
Avatar billede haolan Nybegynder
15. marts 2006 - 21:51 #7
hmm.. ikke noget svar?
Avatar billede hmortensen Nybegynder
16. marts 2006 - 11:39 #8
Kommer her.
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