upload class fout

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

C#.NET/Unity Developer

Functieomschrijving Voor een gewaardeerde werkgever in de omgeving van Breda zijn wij op zoek naar een software ontwikkelaar. Dit bedrijf houdt zich bezig met de ontwikkeling van WMS Software (C#/Unity & SQL). Past dit bij jou? Lees snel verder! Jouw werkzaamheden zullen er als volgt uitzien: Je werkt aan innovatieve softwareoplossingen voor het verbeteren en/of vernieuwen van processen; Samen met 6 applicatieontwikkelaars hebben jullie de verantwoordelijkheid voor de uitbreiding en ontwikkeling van de webapplicaties; Het uitvoeren van updates/aanpassingen aan de huidig draaiende applicaties; Je bent een luisterend oor naar klanten en vertaalt hun wensen door naar bruikbare software. Bedrijfsprofiel Wie

Bekijk vacature »

Full stack .NET developer Microsoft 365

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

Full-stack developer

Als Full-stack developer bij KUBUS houd je je bezig met het ontwikkelen van de (web)applicatie en services van BIMcollab. Samen met je SCRUM team werk je aan zowel de front- als de back-end. Als softwarebedrijf bevindt KUBUS zich in een unieke positie. We bouwen aan onze eigen producten die wereldwijd door tienduizenden gebruikers worden gebruikt. Ons bedrijf heeft precies de juiste grootte: groot genoeg om echt impact te maken in de markt, maar klein genoeg om als individuele ontwikkelaar invloed uit te kunnen oefenen en echt het verschil te kunnen maken. Ons ontwikkelteam bestaat uit ruim 40 ontwikkelaars, testers, scrum

Bekijk vacature »

Applicatie Ontwikkelaar

Bedrijfsomschrijving DUO verzorgt als uitvoeringsorganisatie, zijnde onderdeel van het Ministerie van Onderwijs, Cultuur en Wetenschap de uitvoering van complexe wet- en regelgeving en heeft een uitgebreid dienstenpakket. DUO financiert en informeert onderwijsdeelnemers en onderwijsinstellingen. Voor verdere informatie zie www.duo.nl Functieomschrijving Wie zoeken we? Jij bent een enthousiaste, flexibele OPS’er die het leuk vindt om het bestaande examenlandschap te vernieuwen. Je bent leergierig en hebt interesse in cloud- en containertechnieken zoals OpenShift, Docker en Helm. Je gaat een uitdaging niet uit de weg en wil je nieuw opgedane kennis graag delen met de collega’s binnen en buiten het team. Doordat de

Bekijk vacature »

Fullstack Software Developer

Functieomschrijving Voor een ambitieuze werkgever in regio Roosendaal zijn wij op zoek naar een Full Stack C#.NET Developer. Als software programmeur ben je verantwoordelijk voor het bouwen van webapplicaties, apps en dashboards voor de eigen IOT-oplossingen. Je werkt samen met andere developers en engineers om de sensoren in machines uit te lezen en deze data om te zetten in management informatie voor jullie klanten. Taken en verantwoordelijkheden: Verder ontwikkelen en onderhouden van webapplicaties, dashboards en apps voor de eigen IOT-oplossingen; Testen en goedkeuren van de software; Je gaat aan de slag met de volgende technologieën en frameworks: C#, JS frameworks,

Bekijk vacature »

Front end developer React

Functie Wij zijn van origine een wordpress bureau, maar sinds 2006 zijn wij dit wel redelijk ontgroeid. Naar mate de jaren verstreken zijn we gegroeid in omvang, maar ook in de complexiteit van opdrachten waarin wij onze klanten kunnen bedienen. Momenteel bestaat onze organisatie uit 4 front end developers, 12 back end developer 3 projectmanagers en een 2 koppig management. Wij zijn een hele informele, bijna familiaire organisatie. Geen strak pak of overhemd, nee gewoon dragen waar jij je prettig bij voelt. De gemiddelde leeftijd ligt tussen de 25 en 30 en wij doen er veel aan om onze hechte

Bekijk vacature »

ERP Developer fleet managementsysteem

Wat ga je doen als ERP Developer fleet managementsysteem? Als ERP developer speel jij een belangrijke rol bij het doorvoeren van wijzigingen en verbeteringen binnen het fleet managementsysteem. Jouw expertise op het gebied van ERP systemen stelt jou in staat om de applicatie optimaal te laten functioneren en te blijven ontwikkelen. Als lid van het IT-team werk je nauw samen met andere developers en het business team om het fleet managementsysteem te integreren met andere systemen. Je bent verantwoordelijk voor het ontwikkelen van nieuwe functionaliteiten en het implementeren van verbeteringen op basis van de wensen en eisen van onze klanten.

Bekijk vacature »

Front-end developer

Functie Als front-end developer kom je te werken in een team van 30 gedetacheerde, en het team is momenteel flink aan het groeien. Je hebt ervaring met het bouwen van complexe bedrijfsapplicaties waar je gebruik maakt van de nieuwste technologieën waarmee jij elke klant omver blaast. Het gaat om uitdagende projecten met een gemiddelde doorlooptijd van 2 jaar. Hierdoor heb jij echt de volledige focus op een project en kun je flinke impact maken. Het team zit boordevol met ervaren developers die samen dezelfde ambitie delen. Aan de hand van opleidingen en trainingen kun je certificaten halen in jouw expertise

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET Core developer wordt jij onderdeel van ons team met drie breed ontwikkelde software engineers en een flexibele schil met zes ervaren freelancers. Jij gaat mee in de visie van onze organisatie om als IoT partner in deze branche specifieke markt “het” platform te blijven innoveren en deze ook steeds slimmer te maken. Wij hopen dan ook zeker dit in de toekomst te kunnen realiseren met bijvoorbeeld Artificial Intelligence. De architectuur van ons platform is opgemaakt uit een deel eigen protocol, een interface laag en een laag welke de protocollen van derde partijen vertaald naar het eigen

Bekijk vacature »

Full stack Python developer

Functie Samen met andere collega’s (een product owner, een software manager en een ervaren ontwikkelaar) ga jij onze producten verder ontwikkelen. Jouw verantwoordelijkheden zullen bestaan uit: – Verder wil gaan met de ontwikkeling van onze bestaande producten; nieuwe features! – Meedenkt over de roadmap van onze producten – Als sparringpartner kan optreden op het gebied van development – Zelf ook nieuwe ideeën op tafel durft te leggen en deze van scratch af aan wilt bouwen Hieronder ook een paar voorbeelden van projecten waar we momenteel mee bezig zijn of binnenkort aan willen beginnen: – Real-time interactie creëren in onze web

Bekijk vacature »

Software Developer C++ en Perl

Ben je een slimme en enthousiaste universitair opgeleide bèta die graag bij een relatief klein softwarebedrijf wil werken waar de sfeer goed is en eigen inbreng gewaardeerd wordt? Wij, IntelliMagic in Leiden, ontwikkelen technisch hoogwaardige software op het gebied van IT infrastructuur performance analytics. Het type software zorgt voor intellectueel interessante uitdagingen. We ontwerpen de producten zelf en verkopen deze als off-the-shelf software aan grote bedrijven in Europa en de VS. Wij zoeken een ervaren C++ software engineer met kennis van Perl voor een van onze ontwikkelteams. Werkzaamheden Samen met de andere ontwikkelaars specificeren, ontwerpen en implementeren van nieuwe functionaliteit

Bekijk vacature »

Front-end developer

Functie Jij komt te werken in een team van 5 developers. het product is continue in beweging. Nieuwe en bestaande klanten vragen om vaak nieuwe features. Hierin ben jij zeer belangrijk om te zorgen dat de functionaliteiten goed opgezet worden op technisch vlak. Designs krijg je aangeleverd van een externe partij zodat jij je primair kan focussen op de techniek! Je hebt daarbij alle vrijheid om je eigen creativiteit toe te passen en mee te denken over de gebruikte technieken. Het gezamenlijke doel is een product dat functioneel zeer gebruiksvriendelijk is en het bedrijfsproces van de gebruikers versneld en kwalitatief

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Als PHP developer bijdragen aan beter onderwijs?

Functie Momenteel zijn ze op zoek naar een PHP developer die mee gaat werken aan de (door)ontwikkeling van de producten en zo helpt aan de uitvoering van hun ontwikkelprojecten. Je komt te werken binnen hun development team bestaande uit 6 ontwikkelaars. Ze staan zowel open voor meer junior als medior/senior developers. Je kunt snel veel verantwoordelijkheid krijgen en doorgroeien binnen het bedrijf. Bovendien ben je betrokken bij het bepalen van de product roadmap en de inbreng van (nieuwe) technologieën. De applicaties waaraan je werk worden gebruikt op onderwijsinstellingen door heel Nederland. De tech-stack bestaat voornamelijk uit Laravel (PHP), Vue.js en

Bekijk vacature »

Senior Java Developer

Als Senior Java Developer bij Sogeti ben je onderdeel van onze toonaangevende community die bestaat uit ruim 100 gepassioneerde Java professionals. In teamverband lever je mooie prestaties. Daarmee draag je aan bij de meerwaarde die wij leveren aan onze top-opdrachtgevers. Geen werkdag is hetzelfde! Je bent voortdurend bezig met het oplossen van allerlei complexe vraagstukken binnen bedrijfs kritische systemen voor onze klanten in regio Noordoost zoals DUO, ING, CJIB en Tendernet. Natuurlijk krijg jij de mogelijkheid je verder te certificeren in dit vakgebied. We organiseren regelmatig technische Meetups en doen veel aan kennisdeling. Sogetisten hebben plezier in hun werk en

Bekijk vacature »
Jeroen valcke

jeroen valcke

06/08/2019 00:49:50
Quote Anchor link
Hoi,
Ik gebruik voor het uploaden van mijn plaatjes/foto's Upload.class.php
Dit werkt perfect met foto's van mijn iphone.
Nu als in een foto van unsplash.com download krijg ik de melding Dit bestands type is niet toegestaan.
En dit is een gewone jpg.



upload.php
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
31
32
33
34
35
36
37
38
// als er op submit werd gedrukt
 if(isset($_POST['naam'])){
 



 
 include("Upload.class.php");                             // voegt de class toe aan de code

 
 
 // hier wordt de foto geupload zonder de resize functie te gebruiken
 // de foto wordt opgeslagen in de : uploads_normale map
 $upload_t = new upload_class("foto","../data/");  # hier wordt opgegeven welke path de foto moet komen
 $upload_t->resize = true;                                  // maakt de resize functie actief in de class
 $upload_t->resizeType = 1; // resize op basis van width (max breedte)
 $upload_t->width = 464;      // breedte van het plaatje       * dit is aanpasbaar *
 $upload_t->height = 464;     // hoogte van het plaatje        * dit is aanpasbaar *
 $upload_t->file();

 
 // hier wordt de thumbnail opgeslagen in de maop : upload_thumbnail
 $upload = new upload_class("foto","../data/");  // geeft aan hoe heet foto veld heet, en waar de foto heen moet
 $upload->resize = true;                                  // maakt de resize functie actief in de class

 // toevoeging
 $upload->resizeType = 1; // resize op basis van width (max breedte)
 
 $upload->width = 64;      // breedte van het plaatje       * dit is aanpasbaar *
 $upload->height = 64;     // hoogte van het plaatje        * dit is aanpasbaar *
 $upload->file();


 
 if($upload->name)
 {
 $file = $upload->name
 ?>



Upload.class.php
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
<?
class upload_class
{

var
$field_name;
var
$target_path;
var
$name;

var
$resize = false;
var
$resizeType = 1; // 0 = vaste maten, 1 = variabel
var $width;
var
$height;

var
$type;
var
$custom_types;


  function
upload_class($field,$target)
  {

   $this->target_path = $target;
   $this->field_name = $field;
  }
  
  function
file()
  {

    if($this->php_check() == true)
    {

       if($this->file_check() == true)
       {

         $this->move();
       }

        else
            {
             echo "<script>alert('Dit bestands type is niet toegestaan')</script>";
            }
    }

     else {
          echo "<script>alert('Het is niet toegestaan om PHP bestanden te uploaden !')</script>";
          }
  }

  function
move()
  {

   $input_name = $_FILES[$this->field_name]['name'];
   $file_name = $this->genRandomString().$name.rand(5, 15).rand(5, 15).rand(5, 15).rand(5, 15).strstr($input_name,  '.');
   $this->name = $this->target_path . $file_name;

  
    #if(move_uploaded_file($_FILES[$this->field_name]['tmp_name'], $this->name))
    if(copy($_FILES[$this->field_name]['tmp_name'], $this->name))
    {

     $this->name = str_replace("../","",$this->name); // verwijderd de directory tags
      if($this->resize == true)
      {

       $this->makeimage($this->name);
      }
     }

      else
          {
            echo "Er is een fout opgetreden bij het uploaden van het bestand probeer later nog eens<br/>";exit;
          }
    
  }
  
  function
php_check()
  {

     $clean = true;
     $blocklijst = array(".php",".php5",".xhtml",".dhtml",".PHP",".php3");
    
     foreach ($blocklijst as $item)
     {

       if(preg_match("/$item\$/i", $_FILES[$this->field_name]['name']))
       {
  
         $clean = false;
       }
      }

      
      return $clean;
   }
  
  
  
  function
file_check()
  {

   $allowed = array("image/jpeg", "image/JPG", "image/JPEG", "image/JPG", "image/jpg", "image/pjpeg", "image/gif","image/png","image/tif");
   #$imageinfo = getimagesize($_FILES[$this->field_name]['tmp_name']);
   $header = $_FILES[$this->field_name]['type'];
  
   # if (in_array($imageinfo['mime'], $allowed))
    # {

         if (in_array($header, $allowed))
         {

            return true;
         }

          else {
                return false;
               }

    #} else {
    #        return false;
    #       }

                                          
  }
  
  function
genRandomString() {
     $length = 10;
     $characters = "0123456789abcdefghijklmnopqrstuvwxyz";
     $string = "";    
 
    for ($p = 0; $p < $length; $p++) {
         $string .= $characters[mt_rand(0, strlen($characters))];
     }

 
    return $string;
 }
    
    
    function
makeimage($filename)
    {

     // hier wordt gecontrolleerd of filename ../ directory tags bevat
     // anders wordt de image type niet correct gepakt
      #copy("uploads_normale/rrpusrd0xo712146.jpg", "upload_thumbnail/rrpusrd0xo712146.jpg");

      
     if (strpos($filename, "../") !== false) {
      $edit_filename = str_replace("../","",$filename); // verwijderd de directory tags
      $image_type = strstr($edit_filename,  '.');       // pakt vervolgens de image type
     }
      else
          {
           $image_type = strstr($filename,  '.');
          }

          
      
        switch($image_type) {
            case
'.jpg':
                $source = imagecreatefromjpeg($filename);
                break;
               case
'.JPG':
                $source = imagecreatefromjpeg($filename);
                break;
            case
'.jpeg':
                $source = imagecreatefromjpeg($filename);
                break;     
            case
'.png':
                $source = imagecreatefrompng($filename);
                break;
            case
'.gif':
                $source = imagecreatefromgif($filename);
                break;
            case
'.tif':
                $source = imagecreatefromgif($filename);
                break;
            default:

                echo("Error Invalid Image Type ");
                die;
                break;
            }

    
    $fullpath = $filename;
    list($org_width, $org_height) = getimagesize($fullpath);
    
    if ($this->resizeType == 0)
    {

        // resize op vaste maten
        $newX = $this->width;
        $newY = $this->height;
    }

    else
    {
        $percentage = ($org_width > $org_height) ? ($this->width / $org_width) : ($this->width / $org_height);
        $newX = round($org_width * $percentage);
        $newY = round($org_height * $percentage);
    }


    $thumb = imagecreatetruecolor($newX, $newY);
    
    if(($image_type == ".gif") or ($image_type == ".png"))  
    {

        // Indien het om een gif of png bestand gaat zal deze extra gerenderd worden
        // zodat het plaatje niet automatisch een zwarte achtergrond krijgt.

        imagealphablending($thumb, false);
        imagesavealpha($thumb,true);
        $transparent = imagecolorallocatealpha($thumb, 255, 255, 255, 127);
        imagefilledrectangle($thumb, 0, 0, $newX, $newY, $transparent);
    }

    
    imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newX, $newY, $org_width, $org_height);
    imagejpeg($thumb, $fullpath,  100);

  }

}
  

?>
 
PHP hulp

PHP hulp

10/05/2024 01:14:49
 
- Ariën  -
Beheerder

- Ariën -

06/08/2019 01:35:55
Quote Anchor link
Dan komt de mime-type niet overeen met deze array:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
   $allowed
= array("image/jpeg", "image/JPG", "image/JPEG", "image/JPG", "image/jpg", "image/pjpeg", "image/gif","image/png","image/tif");
?>


Echo eens voor de snelle handigheid eens even $header in de function file_check() { .. } functie?
Dan weet je wat het wel is.

Onthoud wel dat dit een oude class is, die in PHP 7 uiteindelijk niet meer zal werken. (geen visibilty en vooral geen constructor).
Iets actueels kan je op Verot.net vinden.
Gewijzigd op 06/08/2019 01:38:43 door - Ariën -
 
Jeroen valcke

jeroen valcke

06/08/2019 11:28:28
Quote Anchor link
Bedankt Ariën,

Ik gebruik nu de source van vero en deze werkt perfect :)
 



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.