Bestanden unieke naam toewijzen (upload.php)

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ricardo van der Spoel

Ricardo van der Spoel

03/02/2014 23:54:53
Quote Anchor link
Hallo allemaal,


Ik ben aan het proberen een site te maken, en het gaat best wel goed, maar nu zit ik vast. Het lukt mij niet op bestanden een unieke naam toe te wijzen.

Hier het originele bestand, wat moet ik wijzigen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
$output_dir
= "uploads/";
if(isset($_FILES["myfile"]))
{

    $ret = array();

    $error =$_FILES["myfile"]["error"];
    //You need to handle  both cases
    //If Any browser does not support serializing of multiple files using FormData()

    
    if(!is_array($_FILES["myfile"]["name"])) //single file
    {
          $fileName = $_FILES["myfile"]["name"];
         move_uploaded_file($_FILES["myfile"]["tmp_name"],$output_dir.$fileName);
        $ret[]= $fileName;
    }

    else  //Multiple files, file[]
    {
      $fileCount = count($_FILES["myfile"]["name"]);
      for($i=0; $i < $fileCount; $i++)
      {

          $fileName = $_FILES["myfile"]["name"][$i];
        move_uploaded_file($_FILES["myfile"]["tmp_name"][$i],$output_dir.$fileName);
          $ret[]= $fileName;
      }
    
    }

    echo json_encode($ret);
 }

 ?>



alvast bedankt
Gewijzigd op 04/02/2014 08:50:15 door Ricardo van der Spoel
 
PHP hulp

PHP hulp

19/10/2021 14:29:50
 
Mark Markson

Mark Markson

04/02/2014 09:16:17
Quote Anchor link
Doe iets van

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php

// Tijdelijke naam enctrypten voor unieke waarde
$filename = $_FILES['file']['tmp_name'];
$random = md5($_FILES['myfile']['tmp_name']);

move_uploaded_file($_FILES['myfile']['name'][$i], $ouput_dir.$filename);

?>


Kijk maar even of dat is wat je zoekt?
 
Simo Mr

Simo Mr

04/02/2014 10:39:22
Quote Anchor link
Gebruik deze functie.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
$file_naam = $_FILES['myfile']['name'];
$ext = pathinfo($file_naam, PATHINFO_EXTENSION);
$uniq_bestand_name = crypt(uniqid($file_naam),'rl').$ext;
move_uploaded_file($_FILES["myfile"]["tmp_name"],$output_dir.$uniq_bestand_name);

Note:
Jouw upload systeem is helemaal niet secure!
Gewijzigd op 04/02/2014 10:40:10 door Simo Mr
 
Ivo P

Ivo P

04/02/2014 11:00:38
Quote Anchor link
je wilt de geuploade file vast ook weer terug kunnen vinden?

Hoe ga je dat bijhouden? Database? Dan heb je vast al een soort auto-increment id beschikbaar om een uniek nummer te verkrijgen.
 
Ricardo van der Spoel

Ricardo van der Spoel

05/02/2014 16:49:16
Quote Anchor link
Heel erg bedankt, ik heb het nu werkend gekregen!

Dan heb ik nog 1 klein vraagje, is er een mogelijkheid dat ik alle bestanden naar 2 verschillende mappen upload? een backup map?

$output_dir = "uploads/" ;
$output_dir = "uploads2/" ;

werkte niet, maar ik snap echt nog heel weinig van php.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.