Avatar billede n_j_b Nybegynder
17. august 2009 - 14:02 Der er 4 kommentarer og
1 løsning

PHP, upload til mappe...

Jeg Har i MEGET lang tid prøvet, at uploade billeder til en mappe på min server, men det er aldrig lykkedes mig. senest har jeg prøvet nedenstående. Hvad er der galt med det?


<html>
<head>
      <title>Title here!</title>
</head>
<body>
<center>
<font face="arial" size="1">
<form enctype="multipart/form-data" action="<? $php_self ?>" method="post">
Vælg den fil der skal uploades:<br>
<input name="file" type="file" style="width: 300"><br>
Skriv overskrift:<br>
<input name="overskrift" type="text" style="width: 300"><br>
Skriv tekst til billedet:<br>
<textarea name="tekst" style="width: 300" rows="5"></textarea><br>
<input type="submit" value="Upload" name="upload">
</form>
<?
$file_name=$_POST['file'];
$overskrift=$_POST['overskrift'];
$tekst=$_POST['tekst'];

if ($upload) {
    if ($file_type=="image/gif" || $file_type=="image/jpg" || $file_type=="image/png"){

        // Indsætter tekst og billedets navn i databasen
include("db_connect.php");
        $query = mysql_query("INSERT INTO upload_billede (billede, overskrift, tekst)" . "VALUES
('$file_name','$overskrift','$tekst')");
       
        // Lægger billedet ind i mappen billeder
        copy($file_name,"billeder/$file_name");
        echo "Du har uploadet dette:<br>";
        echo "<img src=\"billeder/$file_name\"><br>";
        echo "$tekst";
    } else {
        echo "Du må kun uploade billeder (jpg, gif eller png)";
    }
}
?>

</body>
</html>
Avatar billede mcb2001 Nybegynder
17. august 2009 - 14:18 #1
tripple post????
Avatar billede snowball Novice
17. august 2009 - 14:19 #2
Jeg har fjernet de 2 andre.
Avatar billede tfswebguy Nybegynder
18. august 2009 - 13:38 #3
Hvor dælen får du $file_type fra????

Og så hedder det ikke $_POST['file'] men $_FILES['file']
Avatar billede tfswebguy Nybegynder
18. august 2009 - 13:39 #4
Og du kan ikke bare lave en copy fra lokal comp til server.
Du skal bruge move_uploaded_file!

http://dk.php.net/manual/en/function.move-uploaded-file.php
Avatar billede foo85 Novice
19. august 2009 - 23:33 #5
Jeg lavede for lidt tid siden et system som uploadede og flyttede billeder på en cms side.

if (!$_FILES["forhandler_logo"]["error"]){
  $filedir = "../img/public/ProducentLogo/";
  $filename = $_FILES["forhandler_logo"]["name"];
  //fix the filename
  if(file_exists($filedir.$filename) && $filename != ""){
    //omdøb fil hvis den findes i forvejen.
  }
  move_uploaded_file($filename,$filedir.$filename); //flyt uploadet fil til billede mappe.
}

lidt forklaring:
$_FILES arrayet er et 2D array, og i den første if-sætning tjekker jeg at der ikke er fejl (at der er valgt en fil osv)
navnet på min input type="file" felt er forhandler_logo.
$fileDir er den relative sti til den mappe der skal flyttes til.
$filename filnavnet der er blevet uploadet (hentes også i $_FILES arrayet)
jeg lavet hernæst et tjek på om filen eksisterer allerede - her skal man så lave noget rename, medmindre man tillader filer overskrives.
til sidste anvendes move_uploaded_file(flyt fra, flyt til); til at flytte filen.
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
Kurser inden for grundlæggende programmering

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