upload class fout

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Full stack developer

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 »

IoT Developer

Ben jij innovatief, heb jij passie voor energie en ben je data gedreven? Bouw dan mee aan IoT binnen Bredenoord. Samen met een gedreven team werk jij aan mooie technische en innovatieve oplossingen. Wat houdt de functie van IoT Developer in? Binnen Bredenoord zijn wij momenteel volop in ontwikkeling met ons IoT platform. Als uitbreiding van ons team zijn wij op zoek naar een IoT Developer. Je zal in projectverband meehelpen met het implementeren van IoT vraagstukken binnen Bredenoord. Als IoT Developer op onze R&D-afdeling word je verantwoordelijk voor het verder inrichten en beheren van ons nieuwe IoT platform. Dat

Bekijk vacature »

Back end developer Onderwijssoftware

Functie Als back end developer kom jij terecht in een klein, maar hecht team bestaande uit 5 andere developers (waarvan 2 senioren, 2 medior en 1 junior). Met de gezamenlijke missie om “ieder kind te helpen met onze software” wordt er dagelijks gepassioneerd en hard gewerkt aan ons in-house ontwikkeld platform. Deze software is gebaseerd is op AI, machine Learning en wetenschappelijke inzichten. Dagelijks zul jij werken met onze high traffic webapplicatie. We hebben ruim 300.00 gebruikers en meer dan 2 miljard records waar je te maken mee krijgt! Verder zul jij je bezighouden met: – Het ontwikkelen van hoogwaardige

Bekijk vacature »

Developer Full Stack

Functie omschrijving Developer gezocht! Ben jij een enthousiaste developer die graag wil bijdragen aan ontwikkelingen binnen een mooie organisatie? Solliciteer dan snel. Wij zijn op zoek naar een Full Stack Developer uit de regio Nijkerk die gaat bijdragen aan het door ontwikkelen, onderhouden en optimaliseren van een SaaS applicatie. Je moet beschikken over beheersing van zowel de Nederlandse als Engelse taal aangezien je samen met de klant gaat werken. Bedrijfsprofiel Je komt te werken binnen een echt familiebedrijf dat al sinds 1925 actief is binnen de FMCG branche. Het bedrijf heeft 40 medewerkers en er heerst een platte communicatiestructuur waarbij

Bekijk vacature »

Starter/junior Magento developer gezocht!

Functie Je komt te werken in een zelfsturend team waarin vertrouwen voorop staat en inbreng en ideeën worden gewaardeerd. Ook staat innovatie centraal. Ze bieden jou de mogelijkheid om jezelf door te ontwikkelen. Denk hierbij aan cursussen en een persoonlijk ontwikkelplan. Je komt terecht in het team van momenteel 4 (ervaren) collega’s en zal meewerken aan de doorontwikkeling en nieuwbouw van de Magento platformen van meerdere opdrachtgevers volgens Agile/Scrum. Denk hierbij aan nieuwe functionaliteiten, UX en koppelingen met verschillende back-end systemen. Als starter/junior developer zul je direct begeleid worden door een senior uit het team. Het is van belang dat

Bekijk vacature »

Back end developer Digital Agency

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 »

PHP Back-end Developer

Vacature details Vakgebied: Software/IT Opleiding: Starter Werklocatie: Nijmegen Vacature ID: 13633 Introductie OUr client develop websites, webshops, and digital environments that are used by many visitors daily. They are seeking an experienced PHP-Developer Back-end to join the team. If you're looking for a position where you can tackle challenging, innovative, and multidisciplinary ICT projects and make a difference, this vacancy might be for you! Functieomschrijving As a PHP developer, you'll develop websites and digital environments used by many visitors daily. You'll work as a back-end developer and want to continuously develop in this field. You can work independently and efficiently,

Bekijk vacature »

Lasrobotprogrammeur/operator

Heb je interesse in trekkers en beschik je overvlijmscherpse precisie? Solliciteer dan op deze vacature! Als Lasoperator ben je vooral bezig met het maken van nieuwe lasrobotprogramma’s en het optimaliseren van bestaande programma’s, zowel online als offline (incl. het bedienen van de Lasrobots). Daarnaast draag je bij aan een optimaal rendement van de las robots. Verder heb je de volgende werkzaamheden: Het meewerken als operator c.q. Robotlassen niveau 2 (van complexe samenstellingen/halffabricaten), het om- en instellen van de diverse stations van lasmallen (productdragers), het afwerken van laswerk (verwijderen lasspetters en oxiden), het bewaken van de machineplanning (op bewerkingen) incl. de

Bekijk vacature »

Ervaren Full stack developer

Functie omschrijving Ben jij op zoek naar een uitdagende in-house functie bij een bedrijf met enorme groeipotentie? Ben jij op zoek naar een nieuwe uitdaging vol afwisseling en gezelligheid? Dan ben je bij dit bedrijf aan het juiste adres! Wij zijn in omgeving Breda op zoek naar een ervaren full stack developer. Je gaat werken voor een zeer gewilde werkgever met goede arbeidsvoorwaarden. Je krijgt een plekje in het jonge IT team, work hard, play hard is hier duidelijk het motto! Jouw werkzaamheden zien er als volgt uit: Jij bent verantwoordelijk voor het ontwerpen en bouwen van webapplicaties. Je bent

Bekijk vacature »

Senior .Net developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als .Net Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling. Mede hierdoor zij wij dit jaar Microsoft Partner of the year geworden. Sogetisten staan klaar voor elkaar, hebben lol met elkaar en daarmee behalen we de mooiste resultaten! Werken bij Sogeti

Bekijk vacature »

Software Developer

Bij een bedrijf in de machinebouw, regio Roosendaal, zijn we op zoek naar een: Software Developer Waar ga je werken? Onze opdrachtgever is gespecialiseerd in de grondverzetmachines. Al meer dan 50 jaar leveren ze zowel nationaal als internationaal diverse machines. Het is een familiebedrijf met een informele werksfeer. Wat ga je doen? Als Software Developer je verantwoordelijk voor: - Je werkt voortdurend aan oplossingen voor het op afstand bewaken en besturen van oogstmachines; - Het visualiseren van gegevens in rapporten, apps of andere formaten; - Voorspellend machineonderhoud; - Taakplanning; - Je schrijft aangepaste plug-ins om gegevens te importeren of exporteren

Bekijk vacature »

Robot Programmeur

In het kort Drie redenen waarom deze vacature uniek is! Modern, innovatief en Informeel bedrijf waar veel mogelijk is Werken met diverse robot merken Meehelpen met inbedrijfstellingen bij de klant De organisatie Hier ga je aan de slag Dit groeiende bedrijf van totaaloplossingen in de automatisering van productieprocessen, is hoofdzakelijk actief in de Benelux. Vanuit het kantoor in regio Amersfoort worden veel oplossingen geboden in de vorm van robotica. Geen project is hetzelfde wat garant staat voor bijzonder veel afwisseling. De bedrijfsgrootte is ongeveer 80 man. Van gerobotiseerde machinebeladingen tot aan assemblage automatiseringen wordt vanuit krachtige engineering maatwerk equipment geleverd.

Bekijk vacature »

Junior Java Developer

Dit ga je doen Je ontwikkelt innovatieve, maatschappelijk belangrijke applicaties; Je implementeert nieuwe features; Je gaat in gesprek met eindgebruikers en designers om de applicaties continu te finetunen; Je draait mee in een professionele Agile/Scrum omgeving. Hier ga je werken Onze klant is een internationale organisatie gevestigd in de omgeving van Amsterdam. Ze staan zeer goed bekend in de markt door hun innovatieve dienstverlening op IT gebied en hun gepassioneerde werknemers. Voor hun inspanningen op het gebied van IT hebben ze meerdere prijzen gewonnen! Onze klant is onderdeel van een Corporate werkgever en heeft zelf 300 mensen in dienst. Om

Bekijk vacature »

Front-end Developer (HTML/CSS, Angular/React/Vue,

Functie Je zal aan de slag gaan in een klein, hecht team met front-end development experts die de ambitie delen mooi werk te leveren. Samen met hen zal je werken aan het gebruiksvriendelijk en interactief maken van complexe webapplicaties, websites en mobile apps. Je levert klanten wat ze nodig hebben terwijl je actief aan jezelf blijft werken met de ondersteuning vanuit je werkplek. Talen als Javascript programmeer jij vloeiend en je hebt kennis van frameworks als React en Angular. Je zou je het liefst nog veel meer ontwikkelen in verschillende front-end talen. Deze kennis deel je graag met je collega’s,

Bekijk vacature »

Full Stack Java ontwikkelaar

Functieomschrijving Voor de politie zijn wij op zoek naar een Full stack Java ontwikkelaar. Als ervaren full stack Java ontwikkelaar binnen de gewenste deadlines meewerken aan de totstandkoming van de gewenste werkzaamheden. Taken Upgraden van GeoServer, SOLR, Oracle Spatial database, Tomcat Migreren Oracle Spatial naar PostgreSQL/PostGIS Migreren SOLR naar ElasticSearch Geografische gegevens op het interne netwerk beschikbaar maken Doorontwikkelen en actualiseren van de geografische services Het up to date brengen van de CI/CD pipeline, samen met medewerkers die verantwoordelijk zijn voor de CI/CD tooling Aanspreekbaar op de solution architectuur en stemt die met collega's in het cluster Geo De opdracht

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

15/05/2024 08:24:03
 
- 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.