Avatar billede weeelo Nybegynder
23. maj 2006 - 11:36 Der er 9 kommentarer og
1 løsning

Upload problemer..

Hejsa,

Jeg har problemer med en upload-funktion, som ellers har virket fint tidligere.

Her er scriptet:

<?
if(isset($UploadedFile))
{
$desti.="pics/$UploadedFile_name";
copy($UploadedFile,$desti);
unlink($UploadedFile);
print("Billedet er gemt. <BR>");
}
?>
<form enctype="multipart/form-data" action="upload.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="5024000"><br>
<input name="UploadedFile" type="file"><br>
<input type="submit" value="Upload Billede">
</form>

Problemet er at mappen hvori scriptet ligger og hvori billeder skal gemmes er chmodded til 755, men ændrer jeg den til 777 laver den "Internal Server Error" på scriptet.

Hvad kan der være galt?

upload_tmp_dir er sat til "no value" - har det nogen betydning?

MVH Weeelo
Avatar billede erikjacobsen Ekspert
23. maj 2006 - 12:55 #1
Du skal nok bruge http://php.net/move_uploaded_file i stedet for copy
Avatar billede jakobdo Ekspert
23. maj 2006 - 13:10 #2
Og istedet for: $UploadedFile
Så brug: $_FILES['UploadedFile']['tmp_name']
Prøv evt som test at udskriv:

echo '<pre>';
print_r($_FILES);
echo '</pre>';

Så kan du se hvad $_FILES indeholder.
Du skal nemlig flytte TMP_NAME og bruge navnet i NAME. :o)
Avatar billede weeelo Nybegynder
23. maj 2006 - 13:12 #3
Jeg vil da lige prøve jeres muligheder..

Men det underlige er jo, at det virker upåklageligt på en anden server?
Avatar billede jakobdo Ekspert
23. maj 2006 - 13:15 #4
Den har måske GLOBALS ON.
Det er altid en god ide at bruge: $_POST['navn'], $_GET['navn'] eller $_FILES['navn'] og ikke bare $navn.
Avatar billede weeelo Nybegynder
23. maj 2006 - 13:59 #5
Jeg udskiftede:

if(isset($UploadedFile))
{
$desti.="pics/$UploadedFile_name";
copy($UploadedFile,$desti);
unlink($UploadedFile);

Med:

if(isset($_FILES['UploadedFile']['tmp_name']))
{
$desti.=$_FILES['UploadedFile']['name'];
move_uploaded_file($_FILES['UploadedFile']['tmp_name'],$desti);

Og det virkede. Så i skal vel egentlig bare dele pointene :)

Smid et par svar og mange tak for hjælpen..
Avatar billede jakobdo Ekspert
23. maj 2006 - 14:06 #6
Svar!
Avatar billede jakobdo Ekspert
23. maj 2006 - 14:07 #7
Dog ville jeg nok ændre:
if(isset($_FILES['UploadedFile']['tmp_name']))
ti:
if($_FILES['UploadedFile']['size']>0)
Avatar billede erikjacobsen Ekspert
23. maj 2006 - 14:08 #8
Jeg samler ikke på point, tak.
Avatar billede weeelo Nybegynder
23. maj 2006 - 14:09 #9
Tak for hjælpen..!
Avatar billede jakobdo Ekspert
23. maj 2006 - 14:17 #10
Takker 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