Gå til innhold

Legge til funksjon i upload-script


Anbefalte innlegg

Her er en kode jeg har drevet med. Alt fungerer perfekt som det skal. Men jeg vil gjerne legge til en funksjon, har prøvd mye selv men får det ikke til.

 

Jeg vil legge til en funksjon som gjør at man kan bestemme hva bildet skal omdøpes til når det lastes opp. Altså et felt hvor man skriver inn f.eks "Brille", da vil bildet bli omdøpt til det selvom det originalt sett har et helt annet navn.

 

Noen som har forslag? Evig takknemmelig, dette plager meg.

 

.. Og vis det evt. er mulig skal

etternavnet på filen skal bli døpt .jpg uansett hvordan bildefil det egentlig er. Ikke konverteres, bare døpes om. Men det er ikke en så viktig detalj.

 

<?php



include("config.php");


if (isset($_POST['upForm'])){

      $file_type = $_FILES['imgfile']['type'];
      $file_name = $_FILES['imgfile']['name'];
      $file_size = $_FILES['imgfile']['size'];
      $file_tmp = $_FILES['imgfile']['tmp_name'];

      if(!is_uploaded_file($file_tmp)){
         echo "Error: Please select a file to upload!. <br>--<a href=\"$_SERVER[PHP_SELF]\">back</a>";
         exit(); //exit the script and don't do anything else.
      }

      $ext = strrchr($file_name,'.');
      $ext = strtolower($ext);
      if (($extlimit == "yes") && (!in_array($ext,$limitedext))) {
         echo "Wrong file extension.  <br>--<a href=\"$_SERVER[PHP_SELF]\">back</a>";
         exit();
      }

      $getExt = explode ('.', $file_name);
      $file_ext = $getExt[count($getExt)-1];


      $rand_name = md5(time());
      $rand_name= rand(0,999999999);
      //get the new width variable.
      $ThumbWidth = $img_thumb_width;


      if($file_size){
         if($file_type == "image/pjpeg" || $file_type == "image/jpeg"){
              $new_img = imagecreatefromjpeg($file_tmp);
          }elseif($file_type == "image/x-png" || $file_type == "image/png"){
              $new_img = imagecreatefrompng($file_tmp);
          }elseif($file_type == "image/gif"){
              $new_img = imagecreatefromgif($file_tmp);
          }

          list($width, $height) = getimagesize($file_tmp);
          $imgratio=$width/$height;
          if ($imgratio>1){
             $newwidth = $ThumbWidth;
             $newheight = $ThumbWidth/$imgratio;
          }else{
                $newheight = $ThumbWidth;
                $newwidth = $ThumbWidth*$imgratio;
          }

          if (function_exists(imagecreatetruecolor)){
          $resized_img = imagecreatetruecolor($newwidth,$newheight);
          }else{
                die("Error");
          }
          imagecopyresized($resized_img, $new_img, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

          ImageJpeg ($resized_img,"$path_thumbs/$rand_name.$file_ext");
          ImageDestroy ($resized_img);
          ImageDestroy ($new_img);

          echo "<br>Thumb: <a href=\"$path_thumbs/$rand_name.$file_ext\">$path_thumbs/$rand_name.$file_ext</a>";
       }


       move_uploaded_file ($file_tmp, "$path_big/$rand_name.$file_ext");

       echo "<br>Stort: <a href=\"$path_big/$rand_name.$file_ext\">$path_big/$rand_name.$file_ext</a>";

       echo "<br><br>--<a href=\"$_SERVER[PHP_SELF]\">Tilbake</a>";

}else{ 


     echo "<script>
     function view_img(img_name){
        document[img_name].src = upForm.imgfile.value;
           document[img_name].width = 150;
     }
     </script>\n\n
     <br><h3>:: Velg bilde du vil laste opp:</h3>\n
     <form method=\"post\" name=\"upForm\" enctype=\"multipart/form-data\" action=\"$_SERVER[PHP_SELF]\">\n
     <input type=\"file\" name=\"imgfile\" onchange=\"javascript:view_img('img_vv');\"> <img src='' name='img_vv' width='0'><br>\n
     Bildet vil bli forminsket til <b>$img_thumb_width</b>
     <br><input type=\"Submit\" name=\"upForm\" value=\"Upload & Resize\">\n
     </form>
     <a href=\"view_gallery.php\">View Images</a>";

}


//print copyright;)
echo"<p align=\"right\"><br>frisyre</p>
</body>
</html>";

?>

Lenke til kommentar
Videoannonse
Annonse

Endre

move_uploaded_file ($file_tmp, "$path_big/$rand_name.$file_ext");

til

move_uploaded_file ($file_tmp, "$path_big/".htmlentities($_POST['navnpaanavnefelt']).".$file_ext");

 

Da vil filen faa navnet fra POST feltet navnpaanavnefelt... Ville muligens lagt inn en shorthand if for aa vaere sikker paa at den faar et navn slik som dette:

move_uploaded_file ($file_tmp, "$path_big/".(empty($_POST['navnpaanavnefelt']) ? $rand_name : htmlentities($_POST['navnpaanavnefelt']).".$file_ext");

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...