Avatar billede nizo Nybegynder
23. juni 2005 - 13:09 Der er 10 kommentarer og
1 løsning

Et problem med en upload funktion

Hej.

Jeg sidder med at meget simpelt upload script, som bare ikke vil virke..

Det virkede perfekt inden jeg flyttede til en anden server, men nu uploader det intet.

Scriptet:

exec("cp $billed billedesti.gif");


Kan det ha noget at gøre med at den gamle server kørte paa linux og denne paa Windows?

Men hvis ikke, er der saa nogle der kan hjælpe med en lige saa simpel upload funktion?

Paa forhaand tak!
Avatar billede delphinarious Nybegynder
23. juni 2005 - 13:29 #1
Altså når du exec'er noget, eksekverer du det jo på serveren. Jeg ved ikke lige hvad "cp" refererrer til, men det er sikkert en komponent, der har været installeret på Linux-serveren.

Mit råd er at lave et "normal" upload-script, der typisk ender med move_uploaded_file()-funktioen. Søg her på eksperten.dk - der er spandevis af eksempler, hvis du ikke kan finde hvad du skal bruge i PHP-manualen.
Avatar billede delphinarious Nybegynder
23. juni 2005 - 13:32 #2
Lad os antage at du har kaldt dit input-field "billede". Så henter du filens midlertidige navn på serveren sådan her, og lagrer i $fil:

$fil = $_FILES["billede"]["tmp_name"];

Så definerer du hvor det skal ligge, og hvad filen skal hedde:

$dest = "testbillede.jpg";

Og så kører du move_uploaded_file-funktionen:

move_uploaded_file($fil,$dest);
Avatar billede nizo Nybegynder
23. juni 2005 - 13:37 #3
Okay :) Jeg prøver det og vender tilbage om lidt.
Avatar billede nizo Nybegynder
23. juni 2005 - 13:47 #4
Det virker ikke :\ den uploader ikke noget og jeg faar ingen fejl :\
Avatar billede delphinarious Nybegynder
23. juni 2005 - 13:49 #5
Hmm... måske du lige skulle poste noget kode på både din formular og din PHP...
Avatar billede nizo Nybegynder
23. juni 2005 - 13:56 #6
Upload scriptet:

$uploaddir = "/home/tdduuelz/public_html/img/products/image_$prod.jpg";
move_uploaded_file($_FILES['billede']['tmp_name'],$uploaddir);
}

Formularen:

<form enctype="multipart/form-data" action="adds.php" method="post">
<input type="File" name="billed" size="25" />
<input type="submit" name="submit" value="Submit" />
</form>
Avatar billede delphinarious Nybegynder
23. juni 2005 - 14:00 #7
Ok. Første fejl: Dit input-field hedder "billed", mens du i PHP'en kalder "billede". Altså et "e" til forskel...
Avatar billede delphinarious Nybegynder
23. juni 2005 - 14:01 #8
Dernæst, behøver du ikke at angive hele stien til dit uploaddir.. bare angiv den fra den PHP-fil der eksekveres... Prøv f.eks. for at teste, at bare smide billedet i samme mappe som PHP-filen, eller mappen "over".
$uploaddir = "../image_".$prod.".jpg";
Avatar billede delphinarious Nybegynder
23. juni 2005 - 14:16 #9
... og jeg går ud fra at den afsluttende tuborg-klamme ("}") er taget ud af sin sammenhæng.. :-)
Avatar billede nizo Nybegynder
23. juni 2005 - 14:23 #10
Jep du havde ret :)

Tak for hjælpen!
Avatar billede delphinarious Nybegynder
23. juni 2005 - 14:28 #11
Så lidt. :-)
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