Avatar billede hansen24aar Nybegynder
27. november 2005 - 19:11 Der er 3 kommentarer

hjælp til upload script

Jeg har en del når du har oprettet en profil skal man selv kunne vælge om man vil have billed på sin profil eller ikke have billed på. min php script ser sådan her ud...

<?php
$extlimit = "ja";
$limitedext = array(".gif",".jpg",".png",".jpeg",".bmp");
$sizelimit = "nej";
$sizebytes = "15000";
$absolute_path = $sti."img/upload";


if($submit=="Upload"){
  $dir = "dir";
if ($file != "") {
  $ext=strrchr($file_name,'.');
  $ext=strtolower($ext);

if (file_exists($absolute_path."/".$profilid."".$ext)) {
  die("Billedet eksisterer allerede");
}

if (($sizelimit == "ja") && ($file_size > $sizebytes)) {
  die("Billedet er for stort. Det må højest fylde 15 kb.");
}


if (($extlimit == "ja") && (!in_array($ext,$limitedext))) {
  die("Filen er en forkert filtype.");
}

@copy($file, $absolute_path."/".$profilid."".$ext) or die("Filen kunne ikke kopieres til serveren ".$absolute_path."/".$profilid."".$ext);

    #-+ Read the source image
    $src_img = ImageCreateFromJPEG($absolute_path."/".$profilid."".$ext);

    #Vælg bredden
    $tn_w = "160";

    #Hent billedets bredde og højde
    $imginfo = getimagesize($absolute_path."/".$profilid."".$ext);
    $org_w= $imginfo[0];
    $org_h = $imginfo[1];

    #Beregn højden i forhold til bredden
    $tn_h = floor($tn_w * $org_h / $org_w);
           
    #Sæt det nye billede
    $dst_img = imagecreatetruecolor($tn_w,$tn_h);
       
    #Ændre det!
    ImageCopyResized($dst_img, $src_img, 0, 0, 0, 0, $tn_w, $tn_h, $org_w, $org_h);
               
    #Gem det!
    ImageJPEG($dst_img, $absolute_path."/".$profilid."".$ext);
   
    #slet "midlertidige" filer fra serveren.
    imagedestroy($dst_img);
} else {
  die("Husk at vælge et Billede");
}
echo "<p />";
echo $file_name." blev uploaded";
mysql_query("UPDATE profil SET billede='".$profilid."".$ext."' WHERE id='$id'");
}
?>

<form method=POST action="upload.php?ske=minside&adr=upload" enctype=multipart/form-data>
<p>Vælg et Billed:<br>
<input type=file name=file size=30>
<p><button name=submit type=submit value=Upload>
Upload
</button>
</form>

men det virker ikke. nogen som kan hjælpe mig med hvorfor det ikke virker og hvis det er kan i gå in og logge jer på som gæst og prøve at uploade et billed...

http://80.163.22.100/joy-palaze/dating/login.php

brugernavn: test
password: 1234
Avatar billede jakobdo Ekspert
27. november 2005 - 19:17 #1
Prøv istedet for copy at brug move_uploaded_file()
Avatar billede egeriis Nybegynder
27. november 2005 - 19:18 #2
En god ting i sådanne situationer er at se om man overhovedet kommer igennem de if-sætninger som man skal. Lad os for eksempel tage den første:

if($submit=="Upload")

Hvis nu du imellem dine brackets { } skriver echo "ok"; Så kan du se om brugeren kommer herind - som man jo skal når man har klikket på Upload.

Hvis man ikke gør, så er det muligvis fordi du har register globals off, og derfor skal skrive $_POST['submit'] fremfor $submit.

Hvis du prøver det en gang, så skal jeg nok hjælpe dig igennem :)
Avatar billede egeriis Nybegynder
27. november 2005 - 19:19 #3
Jeg lagde også lige mærke til at du bruger copy i stedet for move_uploaded_file(), brug den i stedet, og unlad at sætte @ foran til at starte med, da dette forhindrer eventuelle fejlmeddellelser.
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