• 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

  • nieuwe game

    frio 31 oktober 2026 om 18:06
  • [Beta] Ottomaan: gratis browserspel met een echte, levende stad. Feedback gezocht!

    frio 27 oktober 2026 om 12:22
  • Port Father: beta van een browsergame in Antwerpen 1931, feedback welkom

    Jeroen.G 26 oktober 2026 om 10:33
  • Maffia Hotel: een browsergame waarin je van lobbygast naar spil van het hotel groeit

    eeyk 22 oktober 2026 om 18:43
  • Crime Club volledig herschreven vanaf nul

    frio 19 oktober 2026 om 23:57
  • Malavita (nieuwe maffia game, van 0)

    jos 19 oktober 2026 om 23:18
  • Herkent deze Notion-structuurscan echte problemen?

    Jeroen.G 19 oktober 2026 om 15:09
  • 🚀 WE ZOEKEN TESTERS! 🚀

    Servertjee 3 oktober 2026 om 10:56

Marktplaats

  • [Aanbod] Stadskaart voor je browsergame: van menu naar klikbare stad, vanaf €200

    frio 29 oktober 2026 om 18:17
  • [Verkoop] G4G (Gangsters 4 Gangsters): volledige broncode, nieuw gebouwd in PHP 8.3 | € 30 per domein

    frio 27 oktober 2026 om 18:54
  • [TE KOOP] Malavita.be [Maffiaspel, gebaseerd op omicidio.nl, unieke code]

    Dpm_x 26 oktober 2026 om 00:22

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

ICT Nieuws

  • PHP waarschuwt voor twee ernstige bugs die makkelijk uit te buiten lijken

    Aaron 22 oktober 2026 om 22:19

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
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design