Avatar billede drockles Nybegynder
18. januar 2006 - 14:21 Der er 7 kommentarer og
1 løsning

hvordan bestemmer jeg navnet på uploadet?

hej eksperter

jeg har siddet og pillet ved nedenstående script. jeg mangler bare at kunne bestemme hvad filen(som uploades) skal hedde. nemlig "profilbillede"

hvordan gør jeg det?
Avatar billede drockles Nybegynder
18. januar 2006 - 14:22 #1
og scriptet

<?php

/**
* Hvor skal filerne uploades til?
* Husk, at webserveren skal kunne skrive til dette bibliotek
*/
$konfiguration["upload_bibliotek"] = "/billede";

/* Hvor mange kilobytes maa filerne fylde per styk? */
$konfiguration["max_stoerrelse"] = "30000";


/**
* Checker PHP-version
*/
list($major, $minor, $rev) = explode(".", phpversion());
if($major < 4) {
  die("Jeg kan kun arbejde med PHP 4.0.0 eller derover");
}


/**
* Udligner forskellene mellem 4.1.x og 4.0.x
* Bemaerk, at disse ikke er "superglobals"
*/
if($minor < 1) {
  $_FILES = $HTTP_POST_FILES;
  $_POST = $HTTP_POST_VARS;
  $_SERVER = $HTTP_SERVER_VARS;
}


if($_FILES["upfil"]["size"] > 0) {

  /**
  * Hvis der er en fil, saa uploader vi den.
  *
  * Foerst slaar vi lige fast, hvor filen skal flyttes fra og til.
  */

  $fra = $_FILES["upfil"]["tmp_name"];
  $til = $konfiguration["upload_bibliotek"] . "/" . $_FILES["upfil"]["name"];

  /**
  *  Checker lige om filen er for stor til at vi vil acceptere den.
  *  Vi bruger ceil() i stedet for round(), saa vi ikke faar den skoere
  *  situation, at fejlmeldingen siger, at filen er for stor, men angiver
  *  samme stoerrelse for filen og den oevre graense.
  */
  $fil_stoerrelse = filesize($fra)/1024;
  if($fil_stoerrelse > $konfiguration["max_stoerrelse"]) {
      die("Desv&aelig;rre - filen er for stor. Jeg accepterer kun " .
          $konfiguration["max_stoerrelse"] . "kb, og din fil fylder " .
          ceil($fil_stoerrelse) . "kb");
  }
  if(function_exists("move_uploaded_file")) {
    move_uploaded_file($fra, $til);
  } else {
    copy($fra, $til);
  }

  header("Location: " . $_SERVER["PHP_SELF"]);
  exit;

} else {

  /**
  * Intet tegn paa upload, saa vi viser bare listen over filer
  * og HTML-formularen til nye uploads.
  */
  $indhold = bygFormular($_SERVER["PHP_SELF"]);
  $output = bygSide("upload billede", $indhold);

}


/**
* Skriver ud til browseren
*/
echo $output;
exit;



/**************************************************\
**              Hjaelpefunktioner              **
\**************************************************/

function bygSide($titel, $indhold) {

  /**
  * Pakker indholdet ind i lidt formalia
  */
  return '<html>
            <head><title>' . $titel . '</title></head>
            <body bgcolor="#00248F">
            ' . $indhold . '</body>
          </html>
        ';

}

function bygFormular($action) {

  $formular = '<form action="' . $action . '" method="post" enctype="multipart/form-data">
                <table border="1" cellpadding="5" cellspacing="0" width="446" height="45">
                  <tr>
                    <td bgcolor="#cccccc">
                        <input type="file" name="upfil" size="28" />&nbsp;&nbsp;&nbsp;&nbsp; <input type="submit" value="upload" /></td>
                  </tr>
                  </table>
              </form>';
             
  return $formular;

}

?>
Avatar billede elskermad.dk Nybegynder
18. januar 2006 - 14:52 #2
det ændrer du i denne linie: $til = $konfiguration["upload_bibliotek"] . "/" . $_FILES["upfil"]["name"];

hvor det fx kunne være: $til = $konfiguration["upload_bibliotek"] . "/" . "profilbillede.jpg";
Avatar billede well_r Nybegynder
18. januar 2006 - 14:53 #3
denne linie
$til = $konfiguration["upload_bibliotek"] . "/" . $_FILES["upfil"]["name"]; << denne ændres til
$til = $konfiguration["upload_bibliotek"] . "/profilbillede.jpg]; hvis det er et jpg billede
Avatar billede well_r Nybegynder
18. januar 2006 - 14:53 #4
hehe..lidt for langsom!
Avatar billede drockles Nybegynder
18. januar 2006 - 14:56 #5
ok. mange tak :-)
Avatar billede drockles Nybegynder
18. januar 2006 - 15:03 #6
lige en anelse well_r.. et svar elskermad.dk?
Avatar billede drockles Nybegynder
18. januar 2006 - 15:10 #7
hov måske kan du/i hjælpe med at lave en funktion der; hvis der allerede eksisterer et billede der hedder profilbillede.jpg skal det slettes
Avatar billede elskermad.dk Nybegynder
18. januar 2006 - 15:52 #8
den overskriver selv billedet hvis det allerede findes... her er et svar, og har ikke noget i mod at deles med well_r :)
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