• Inloggen
  • Registreer
  • Zoeken
Dit topic
  • Overal
  • Dit topic
  • Dit forum
  • Artikelen
  • Pagina's
  • Forum
  • Downloads
  • Meer opties

ICTscripters

Dé plek voor IT

Dé plek voor IT

Aanmelden

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • 🚀 WE ZOEKEN TESTERS! 🚀

    Servertjee 3 oktober 2026 om 10:56
  • Port Father: beta van een browsergame in Antwerpen 1931, feedback welkom

    Syntax 1 oktober 2026 om 11:11
  • Luchtvaartsoftware: Hoe technologie de moderne luchtvaart verandert

    saggy2829 30 september 2026 om 19:31
  • Hoe gebruiken jullie WhatsApp voor marketing en klantopvolging?

    aiqanobzfsej5 29 september 2026 om 12:55
  • [PROJECT] Gamekeuring.nl - Hét onafhankelijke keuringsplatform voor maffiagames & RPG's!

    frio 22 september 2026 om 16:40
  • Ictscripters / Koen

    Aaron 22 september 2026 om 15:07
  • Kweekrijk - van stekje tot Imperium

    Lijno 14 september 2026 om 23:00
  • Crimora.nl

    Jeffrey.Hoekman 8 september 2026 om 18:49

Marktplaats

  • Verschillende domeinen te koop (sommige hebben website / content)

    frio 2 oktober 2026 om 14:45
  • 295 Nieuwe Domeinnamen September 2026

    shiga 1 oktober 2026 om 19:09
  • Straatbaas.eu – complete Nederlandstalige en Engelstalige online maffia-RPG

    Jeroen.G 1 oktober 2026 om 17:48

File upload

  • ditismenno
  • 20 januari 2014 om 21:54
  • ditismenno
    Baas van universal-games
    Berichten
    563
    • 20 januari 2014 om 21:54
    • #1

    Hallo,


    Ik ben bezig met een soort marktplaats script en daarvoor zorg ik dat je 3 foto's kan uploaden:

    PHP
    if (isset($_POST['file1'])){
    						$allowedExts = array("gif", "jpeg", "jpg", "png");
    						$temp = explode(".", $_FILES["file1"]["name"]);
    						$extension = end($temp);
    						if ((($_FILES["file1"]["type"] == "image/gif")
    						|| ($_FILES["file1"]["type"] == "image/jpeg")
    						|| ($_FILES["file1"]["type"] == "image/jpg")
    						|| ($_FILES["file1"]["type"] == "image/pjpeg")
    						|| ($_FILES["file1"]["type"] == "image/x-png")
    						|| ($_FILES["file1"]["type"] == "image/png"))
    						&& in_array($extension, $allowedExts)){
    							if ($_FILES["file1"]["error"] > 0){
    								echo 112;
    							} else {
    								echo 1;
    								$url1 = 'upload/'.$ran1.''.$_FILES["file1"]["name"].'';
    								move_uploaded_file($_FILES["file1"]["tmp_name"],
    								"upload/" . $ran1 . $_FILES["file1"]["name"]);
    							}
    						} else {
    							echo 2;
    						}
    					}
    					
    					if (isset($_POST['file2'])){
    						$allowedExts = array("gif", "jpeg", "jpg", "png");
    						$temp = explode(".", $_FILES["file2"]["name"]);
    						$extension = end($temp);
    						if ((($_FILES["file2"]["type"] == "image/gif")
    						|| ($_FILES["file2"]["type"] == "image/jpeg")
    						|| ($_FILES["file2"]["type"] == "image/jpg")
    						|| ($_FILES["file2"]["type"] == "image/pjpeg")
    						|| ($_FILES["file2"]["type"] == "image/x-png")
    						|| ($_FILES["file2"]["type"] == "image/png"))
    						&& ($_FILES["file2"]["size"] < 20000)
    						&& in_array($extension, $allowedExts)){
    							if ($_FILES["file2"]["error"] > 0){
    								
    							} else {
    								$url2 = 'upload/'.$ran2.''.$_FILES["file2"]["name"].'';
    								move_uploaded_file($_FILES["file2"]["tmp_name"],
    								"upload/" . $ran2 . $_FILES["file2"]["name"]);
    							}
    						}
    					}
    					if (isset($_POST['file3'])){
    						$allowedExts = array("gif", "jpeg", "jpg", "png");
    						$temp = explode(".", $_FILES["file3"]["name"]);
    						$extension = end($temp);
    						if ((($_FILES["file3"]["type"] == "image/gif")
    						|| ($_FILES["file3"]["type"] == "image/jpeg")
    						|| ($_FILES["file3"]["type"] == "image/jpg")
    						|| ($_FILES["file3"]["type"] == "image/pjpeg")
    						|| ($_FILES["file3"]["type"] == "image/x-png")
    						|| ($_FILES["file3"]["type"] == "image/png"))
    						&& ($_FILES["file3"]["size"] < 20000)
    						&& in_array($extension, $allowedExts)){
    							if ($_FILES["file3"]["error"] > 0){
    								
    							} else {
    								$url3 = 'upload/'.$ran3.''.$_FILES["file3"]["name"].'';
    								move_uploaded_file($_FILES["file3"]["tmp_name"],
    								"upload/" . $ran3 . $_FILES["file3"]["name"]);
    							}
    						}
    					}
    Meer tonen


    Maar omdat dit niet werkt ben ik gaan debuggen met het bovenste stukje:

    PHP
    if (isset($_POST['file1'])){
    						$allowedExts = array("gif", "jpeg", "jpg", "png");
    						$temp = explode(".", $_FILES["file1"]["name"]);
    						$extension = end($temp);
    						if ((($_FILES["file1"]["type"] == "image/gif")
    						|| ($_FILES["file1"]["type"] == "image/jpeg")
    						|| ($_FILES["file1"]["type"] == "image/jpg")
    						|| ($_FILES["file1"]["type"] == "image/pjpeg")
    						|| ($_FILES["file1"]["type"] == "image/x-png")
    						|| ($_FILES["file1"]["type"] == "image/png"))
    						&& in_array($extension, $allowedExts)){
    							if ($_FILES["file1"]["error"] > 0){
    								echo 112;
    							} else {
    								echo 1;
    								$url1 = 'upload/'.$ran1.''.$_FILES["file1"]["name"].'';
    								move_uploaded_file($_FILES["file1"]["tmp_name"],
    								"upload/" . $ran1 . $_FILES["file1"]["name"]);
    							}
    						} else {
    							echo 2;
    						}
    					}
    Meer tonen


    Maar ik snap niet waarom hij 2 echo't?

    Alvast bedankt.

    TEST ughost nu zelf "Klik hier voor trial"
    Let op:
    -Je pakket eindigd naar 2 weken dan worden ook alle bestanden verwijderd.
    -Je moet een eigen domein regelen (hebben,kopen)

  • Gast, wil je besparen op je domeinnamen? (ad)
  • M.Beers
    Elite members
    Berichten
    460
    • 20 januari 2014 om 22:22
    • #2

    Upload je toevallig een .JPG file ipv .jpg? want hij checkt niet of de extensie van het bestand uit grote/kleine letters bestaat :)

    Dit was mijn spreekbeurt, zijn er nog vragen?

  • ditismenno
    Baas van universal-games
    Berichten
    563
    • 20 januari 2014 om 22:23
    • #3
    Citaat van M.Beers

    Upload je toevallig een .JPG file ipv .jpg? want hij checkt niet of de extensie van het bestand uit grote/kleine letters bestaat :)


    net met een .jpg ook even geprobeerd met .png maar dat werkt ook niet

    TEST ughost nu zelf "Klik hier voor trial"
    Let op:
    -Je pakket eindigd naar 2 weken dan worden ook alle bestanden verwijderd.
    -Je moet een eigen domein regelen (hebben,kopen)

  • M.Beers
    Elite members
    Berichten
    460
    • 20 januari 2014 om 22:31
    • #4
    PHP
    <?php
    $allowedExts = array("gif", "jpeg", "jpg", "png");
    $temp = explode(".", $_FILES["file"]["name"]);
    $extension = end($temp);
    if ((($_FILES["file"]["type"] == "image/gif")
    || ($_FILES["file"]["type"] == "image/jpeg")
    || ($_FILES["file"]["type"] == "image/jpg")
    || ($_FILES["file"]["type"] == "image/pjpeg")
    || ($_FILES["file"]["type"] == "image/x-png")
    || ($_FILES["file"]["type"] == "image/png"))
    && ($_FILES["file"]["size"] < 20000)
    && in_array($extension, $allowedExts))
      {
      if ($_FILES["file"]["error"] > 0)
        {
        echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
        }
      else
        {
        echo "Upload: " . $_FILES["file"]["name"] . "<br>";
        echo "Type: " . $_FILES["file"]["type"] . "<br>";
        echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
        echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";
    
    
        if (file_exists("upload/" . $_FILES["file"]["name"]))
          {
          echo $_FILES["file"]["name"] . " already exists. ";
          }
        else
          {
          move_uploaded_file($_FILES["file"]["tmp_name"],
          "upload/" . $_FILES["file"]["name"]);
          echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
          }
        }
      }
    else
      {
      echo "Invalid file";
      }
    ?>
    Meer tonen

    Dit zou moeten werken ;)

    Dit was mijn spreekbeurt, zijn er nog vragen?

  • ditismenno
    Baas van universal-games
    Berichten
    563
    • 20 januari 2014 om 22:32
    • #5
    Citaat van M.Beers
    PHP
    <?php
    $allowedExts = array("gif", "jpeg", "jpg", "png");
    $temp = explode(".", $_FILES["file"]["name"]);
    $extension = end($temp);
    if ((($_FILES["file"]["type"] == "image/gif")
    || ($_FILES["file"]["type"] == "image/jpeg")
    || ($_FILES["file"]["type"] == "image/jpg")
    || ($_FILES["file"]["type"] == "image/pjpeg")
    || ($_FILES["file"]["type"] == "image/x-png")
    || ($_FILES["file"]["type"] == "image/png"))
    && ($_FILES["file"]["size"] < 20000)
    && in_array($extension, $allowedExts))
      {
      if ($_FILES["file"]["error"] > 0)
        {
        echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
        }
      else
        {
        echo "Upload: " . $_FILES["file"]["name"] . "<br>";
        echo "Type: " . $_FILES["file"]["type"] . "<br>";
        echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
        echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";
    
    
        if (file_exists("upload/" . $_FILES["file"]["name"]))
          {
          echo $_FILES["file"]["name"] . " already exists. ";
          }
        else
          {
          move_uploaded_file($_FILES["file"]["tmp_name"],
          "upload/" . $_FILES["file"]["name"]);
          echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
          }
        }
      }
    else
      {
      echo "Invalid file";
      }
    ?>
    Meer tonen

    Dit zou moeten werken ;)


    Is er ook op gebaseerd maar hoe doe je dat me 3 verschillende foto's?

    TEST ughost nu zelf "Klik hier voor trial"
    Let op:
    -Je pakket eindigd naar 2 weken dan worden ook alle bestanden verwijderd.
    -Je moet een eigen domein regelen (hebben,kopen)

  • M.Beers
    Elite members
    Berichten
    460
    • 20 januari 2014 om 22:40
    • #6

    file[] in je input field zetten als name ... vervolgens is het makkelijk om een sorteer functie te gebruiken waarmee je vervolgens alles kan uploaden d.m.v. een for-loopje

    Onderstaand de functie

    PHP
    function multiple_files(array $_files, $top = TRUE)
    {
        $files = array();
        foreach($_files as $name=>$file){
            if($top) $sub_name = $file['name'];
            else    $sub_name = $name;
            
            if(is_array($sub_name)){
                foreach(array_keys($sub_name) as $key){
                    $files[$name][$key] = array(
                        'name'     => $file['name'][$key],
                        'type'     => $file['type'][$key],
                        'tmp_name' => $file['tmp_name'][$key],
                        'error'    => $file['error'][$key],
                        'size'     => $file['size'][$key],
                    );
                    $files[$name] = multiple_files($files[$name], FALSE);
                }
            }else{
                $files[$name] = $file;
            }
        }
        return $files;
    }
    
    
    $files = multiple_files($_FILES);
    print_r($files);
    Meer tonen

    Dit was mijn spreekbeurt, zijn er nog vragen?

  • ditismenno
    Baas van universal-games
    Berichten
    563
    • 21 januari 2014 om 07:21
    • #7
    Citaat van M.Beers

    file[] in je input field zetten als name ... vervolgens is het makkelijk om een sorteer functie te gebruiken waarmee je vervolgens alles kan uploaden d.m.v. een for-loopje

    Onderstaand de functie

    PHP
    function multiple_files(array $_files, $top = TRUE)
    {
        $files = array();
        foreach($_files as $name=>$file){
            if($top) $sub_name = $file['name'];
            else    $sub_name = $name;
            
            if(is_array($sub_name)){
                foreach(array_keys($sub_name) as $key){
                    $files[$name][$key] = array(
                        'name'     => $file['name'][$key],
                        'type'     => $file['type'][$key],
                        'tmp_name' => $file['tmp_name'][$key],
                        'error'    => $file['error'][$key],
                        'size'     => $file['size'][$key],
                    );
                    $files[$name] = multiple_files($files[$name], FALSE);
                }
            }else{
                $files[$name] = $file;
            }
        }
        return $files;
    }
    
    
    $files = multiple_files($_FILES);
    print_r($files);
    Meer tonen


    Oke dus als ik het nu goed begrijp moeten alle 3 de file inputs nu file[] als name hebben?

    TEST ughost nu zelf "Klik hier voor trial"
    Let op:
    -Je pakket eindigd naar 2 weken dan worden ook alle bestanden verwijderd.
    -Je moet een eigen domein regelen (hebben,kopen)

  • M.Beers
    Elite members
    Berichten
    460
    • 21 januari 2014 om 09:56
    • #8

    wat je had is makkelijker dus file1, file2 etc. had de code uit een projectje van mezelf gepakt zonder het even goed door te lezen... hij maakt er nu automatisch een mooie array van d.m.v. die sorteer functie anders had je namelijk conflicten als je $_FILE ging vardumpen

    Dit was mijn spreekbeurt, zijn er nog vragen?

  • ditismenno
    Baas van universal-games
    Berichten
    563
    • 21 januari 2014 om 17:54
    • #9

    Hmm ik probeer het zo apart mogelijk te laten verlopen want 3 foto's zijn niet verplicht.
    Maar de fout zit dus in:

    PHP
    if ((($_FILES["file1"]["type"] == "image/gif")
                            || ($_FILES["file1"]["type"] == "image/jpeg")
                            || ($_FILES["file1"]["type"] == "image/jpg")
                            || ($_FILES["file1"]["type"] == "image/pjpeg")
                            || ($_FILES["file1"]["type"] == "image/x-png")
                            || ($_FILES["file1"]["type"] == "image/png"))
                            && in_array($extension, $allowedExts)){


    Maar mag ["file1"] dan geen file1 zijn want meestal is dat alleen file

    TEST ughost nu zelf "Klik hier voor trial"
    Let op:
    -Je pakket eindigd naar 2 weken dan worden ook alle bestanden verwijderd.
    -Je moet een eigen domein regelen (hebben,kopen)

  • GiovanniK
    Gevorderd
    Berichten
    252
    • 22 januari 2014 om 21:49
    • #10

    Stel je hebt dit:

    <input type="blabla" name="hoi[]" value="1">
    <input type="blabla" name="hoi[]" value="2">
    <input type="blabla" name="hoi[]" value="3">

    Dan krijg je dus een array met de naam hoi met de waardes 1 t/m 3.

  • cakemasher
    Developer
    Berichten
    225
    • 23 januari 2014 om 00:08
    • #11

    En om te kijken wat er precies in die array staat, print 'm even. Kan je ook meteen zien hoe je je script moet aanpassen.

    Code
    <input name="bestand[]" type="file" />
    <input name="bestand[]" type="file" />
    <input name="bestand[]" type="file" />
    PHP
    <?php
    	
    	if ($_SERVER['REQUEST_METHOD'] == 'POST')
    	{
    		echo "<pre>";
    		
    		print_r ($_FILES);
    		
    		echo "</pre><br /><br />";
    	}
    	
    ?>
    Meer tonen

Registratie

Nog geen account? Registreer je nu en word deel van onze community!

Nu registreren Aanmelden

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37

Gebruikers die dit topic bekijken

  • 1 Gasten
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacyverklaring
  10. Contact
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design