Avatar billede voyager_dfs Nybegynder
12. februar 2005 - 22:38 Der er 2 kommentarer og
1 løsning

ingen fejl.. men det er ikke godt

har jeg lavet et upload script af billeder.. men hvis billedet er for storet for server skal den skrive man selv må laver det lidt minder.. men den besked kommer ikke.. den skriver IGEN ting.. ikke en gang en php fejl.

require("./cont.php");

//Laver et random fil navn
//$img_name = rand();
$img_name = $_GET[id];
if ($userfile){
        //$uploaddir = $pixdir.$img_name.'.jpg';
        $uploaddir2 = basename($HTTP_POST_FILES['userfile']['name']);
        //Se om det er et jpg
        switch($HTTP_POST_FILES['userfile']['type']) {
              case "image/jpeg":
              case "image/pjpeg":
                    $uploaddir2 = $uploaddir.$img_name.'.jpg';
                    break;
              default:
                      header('Location: ../index.php?linkset=admin&linksub=uploadpiz&id='.$_GET['id'].'&err=1');
                      //echo "Filen du vil uploade skal være jpg (jpeg)";
                    die;
      }
        //Se om der findes en fil ved navnet
          if (file_exists($uploaddir2)) {
                  unlink($uploaddir2);
          }
            //Flyt fra temp til hvor det skal være
            if (move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], $uploaddir2)) {


                      //Giver navnet til det lille billede
                      $filename = $pixdir.$img_name.'_thumb'.'.jpg';

                      // Fil størlse
                      $percent = 0.5;

                      // Set ny størlse
                      list($width, $height) = getimagesize($uploaddir2);
                      $new_width = $width * $percent;
                      $new_height = $height * $percent;

                      // Resample
                      $image = @imagecreatefromjpeg($uploaddir2);
                      if($image){
                      echo 'Billedet er for stort lav det minder ved af klippe noget af sidene eller lav det minder.\n';
                      //header('Location: ../index.php?linkset=admin&linksub=uploadpiz&id='.$_GET['id'].'&err=5');

                      }else {
                          $image_p = imagecreatetruecolor($new_width, $new_height);
                          imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
                          ImageDestroy($image);
                                    // Gemmer og slettet
                                    imagejpeg($image_p, $filename, 60);
                                    if(file_exists($uploaddir2)){
                                      unlink($uploaddir2);
                                    }
                                    //echo 'Billedet er bliver lagt op. luk bare dette vindu igen.\n';
                                    header('Location: ../index.php?linkset=pro');
                      }
          } else {
              header('Location: ../index.php?linkset=admin&linksub=uploadpiz&id='.$_GET['id'].'&err=2');
              // echo "Fejl ved upload.\n";
        }
}else{
    header('Location: ../index.php?linkset=admin&linksub=uploadpiz&id='.$_GET['id'].'&err=4');
    // echo 'userfile er ikke sat';
}
Avatar billede bojo Nybegynder
14. februar 2005 - 10:29 #1
fjern @ her, så får du fejlmeddelsen, som form. er Fatal error: Allowed memory size of ??????? bytes exhausted

$image = @imagecreatefromjpeg($uploaddir2);
Avatar billede bojo Nybegynder
14. februar 2005 - 10:36 #2
@ bør bruges med omtanke da det undertrykker fejl.
Avatar billede voyager_dfs Nybegynder
22. december 2006 - 14:15 #3
lukket
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