teveel geheugen gebruik

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Front-end developer (Vue.js) gezocht!

Functie Als Front-end developer is het jouw doel om efficiënte en effectieve frontend code te ontwerpen, ontwikkelen en onderhouden die goed aansluit bij de functionele behoefte vanuit de klant. Je zorgt voor optimale SEO-resultaten, sitespeed en frontend security. You build it, you run it, you own it! Je maakt deel uit van een DevOps Scrum team en werkt samen met back-end developers, test-engineers, interaction designers en een projectmanager. Er zijn verschillende groepen Scrum teams. Een roadmap team is jouw ‘’thuisbasis’’, daar wordt gewerkt aan doorontwikkeling van bestaande omgevingen voor een aantal klanten. Hiernaast zijn er projectteams waar nieuwe omgevingen worden

Bekijk vacature »

3D BIM Add-on Developer

As a 3D BIM add- on developer at KUBUS, you will develop add-ons (called BCF- Managers) to the leading building information modeling (BIM) programs Revit, Navisworks, Archicad, AutoCAD and Tekla Structures. BCF Managers enable data transfer between BIM software and BIMcollab. You will work on both the front- and the back-end. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact in the market, but small enough that as an individual

Bekijk vacature »

PHP Developer

Functie Middels Scrum en sprints bouw jij in deze functie mee aan complexe webapplicaties en ons SaaS platform. Hierbij hoort ook architectuur tot een van je taken. Daarnaast ben je één van de leden van het Scrum team. Dat betekent dat je naast je kerntaken ook in contact staat met de product owner. Oftewel, je bent bij het gehele ontwikkelproces betrokken. Tools die hierbij gebruikt worden zijn o.a. PHP, Symfony en Git. Eisen • Minimaal HBO werk- en denkniveau • Minimaal 3 jaar aantoonbare ervaring met PHP • Kennis en ervaring Symfony (Laravel is pré) & Lando • Kennis van

Bekijk vacature »

Account Developer

Voor Bol.com zijn wij per direct op zoek naar een Account Developer voor 32-40 uur per week op het kantoor in Utrecht. Wil jij een directe bijdrage leveren door partners van de juiste data-inzichten te voorzien en via campagnes op nieuwe platformkansen en features te wijzen? Ben jij analytisch sterk en kun jij dit vertalen naar plannen en inspirerende gesprekken? Lees dan snel verder! wat bieden wij jou Salaris van €2400 - €2600 obv 40 uur Minimaal 6 maanden Werklocatie is Utrecht Werken bij bol.com wie ben jij Jij bent commercieel gedreven en weet altijd aan de juiste knoppen te

Bekijk vacature »

Starter/junior PHP developer

Functie Momenteel zijn ze op zoek naar een junior PHP developer om het team te versterken. Als back-end developer bouw je de enterprise software die hun bedrijf helpt bij haar primaire processen. Afhankelijk van de omvang van het project werk je in een klein team aan een project. Ze hebben dagelijkse stand-ups en elke twee weken een scrumsessie, begeleid door de Scrum Master, waar je je ideeën kunt presenteren en samen met de Product Owner kunt werken aan het beste product. Ze vertrouwen enorm op hun eigen bedrijfssoftware. Dit geeft hun een groot voordeel ten opzichte van hun concurrentie. Zo

Bekijk vacature »

Junior .NET developer

Functie Wij zijn bezig met het ontwikkelen van een nieuw product en wij hebben jouw hulp hierbij nodig! Als junior .NET ontwikkelaar krijg jij de kans om samen met ons deze nieuwe uitdaging aan te gaan! Momenteel bestaat ons team uit drie interim Software Engineers. Twee hiervan zijn zeer ervaren .NET specialisten die inmiddels hun strepen in dit vakgebied al hebben behaald. Ook hebben wij een junior als onderdeel van ons team die zich op dit moment nog bezig houdt met de Front-end (Angular/TypeScript), maar zich nu ook meer gaat verdiepen in de backend. Wij willen ons team graag verder

Bekijk vacature »

Junior PHP Developer

Functieomschrijving Junior PHP Developer gezocht! Voor een opdrachtgever in de regio Gelderland zijn wij op zoek naar een Junior PHP Developer die onderdeel gaat worden van het ontwikkelingsteam van deze organisatie. In deze functie ga jij aan de slag met het schrijven van software voor de aansturing van en het managen van windparken en bijbehorende onderdelen. Hiernaast ga jij je bezighouden met het ontwikkelen, testen en onderhouden van diverse webapplicaties. Het team waarin je komt te werken bestaat uit 3 developers, hierdoor krijg je veel verantwoordelijkheid en de kans om jezelf verder te ontwikkelen. Er wordt echter wel van je

Bekijk vacature »

.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 »

Ervaren PHP developer gezocht!

Functie Het team bestaat inmiddels uit zo’n 25 collega’s met specialisten op het gebied van development, data(analyse), marketing, infrastructuur en finance. Ze hebben een supermodern pand en bieden hiernaast veel vrijheid en verantwoordelijkheid. Ze doen er alles aan om jou op te gemak te stellen. Zo kun je je eigen werkplek inrichten naar persoonlijke wensen, maar gaan ze bijvoorbeeld ook jaarlijks met elkaar wintersporten en zijn er andere leuke uitjes. Als onderdeel van één van de scrumteams ga je aan de slag, samen ben je medeverantwoordelijk voor het doorontwikkelen van hun business applicatie waar het traffic team dagelijks mee werkt.

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 »

Software Developer

Dit ga je doen Ontwerpen, ontwikkelen en onderhouden van (mobiele) internettoepassingen; Ontwikkelen en onderhouden van Microservices; Ontwerpen en optimaliseren van databases; Identificeren van nieuwe trends/ontwikkelingen binnen de branche. Hier ga je werken Deze marktleider op gebied van fietsen en fietservaring is gevestigd in twee provincies, verspreid over meerdere locaties. Jij zult voornamelijk in regio Joure aan de slag gaan. De organisatie doelt zich op het leveren van kwalitatief hoogwaardige producten aan alle hun klanten. De organisatie telt circa 4.000 medewerkers in meer dan 10 verschillende landen. Momenteel is de organisatie op zoek naar een Software Developer wilt meewerken aan het

Bekijk vacature »

Senior Airport Developer ( System engineer)

De functie Nice to know (you) De nieuwe A-pier wordt de duurzaamste van Schiphol. Als deze af is ligt er 4000 vierkante meter zonnepanelen op het dak. En de toiletten? Die spoelen door met regenwater. we gaan ervoor: het creëren van de meest duurzame en hoogwaardige luchthavens ter wereld. een toekomstbestendig en duurzaam Schiphol. Daar werken we elke dag hard aan in team Development & Sustainability. Jij bent regisseur, expert én aanjager van de ontwikkeling van Schiphol. Connecting your world Hoe maak je de ambities en doelstellingen van Schiphol concreet in een project? De waarde voor Schiphol naar eisen die

Bekijk vacature »

Senior PHP developer

Functie Als Senior PHP developer heb je een sterke mening over de architectuur van projecten en de processen binnen het team. Je bent de sparringpartner voor je Team Lead. Ook ondersteun je met jouw kennis de minder ervaren developers in jouw team. Ze werken regelmatig aan projecten vanaf scratch en dit geeft ruimte om voor nieuwe technieken te kiezen. Naast het ontwikkelen van software ben je continue bezig om ook jezelf te ontwikkelen. Ze werken met o.a.: PHP, Laravel, Doctrine, PHP Unit, Behat, React, TypeScript, (My)SQL, Postgress, Redis, ElasticSearch, Docker, Nginx, GIT flow, JIRA, AWS. Eisen • HBO werk- en

Bekijk vacature »

Senior PHP Developer

Als Senior PHP Developer bij Coolblue zorg je ervoor dat onze webshops elke dag een beetje beter zijn en coach je andere developers op de hard en soft skills. Wat doe je als Senior PHP Developer bij Coolblue? Als PHP Developer werk je met andere development teams samen om onze webshop zo optimaal mogelijk te laten werken en onze klanten blij te maken. Hoewel je een PHP Developer bent, sta je open om C# of Typescript in te zetten of te leren. Ook PHP Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om

Bekijk vacature »

C#.NET Developer

Dit ga je doen Ontwikkelen van de Back-end in .NET6 / C# en WebAPI (Focus);) Ontwikkelen van de Front-End in Nodje.js en Angular (secundair); Opstellen van een technisch ontwerp; Testen, documenteren en implementeren van de nieuwe applicatie; Verzorgen van de nazorg, na de implementatie; Het oplossen van bugs en incidenten. Hier ga je werken Als C#.NET Developer binnen deze organisatie kan jij het verschil maken. Zij werken momenteel nog met programmatuur die is ontwikkeld in C++. Hiervan gaan zij afscheid nemen zodra alle nieuwe software in C#.NET geschreven is. Een grootschalig en langdurig project. Voor hen is deze software van

Bekijk vacature »
Marlies Maalderink

Marlies Maalderink

09/05/2011 17:38:52
Quote Anchor link
Ik wil een fotoupload functie maken waarbij de tumbnails automatisch gekropt worden. Nu heb ik niet genoeg php ervaring om zelf zo'n script te schrijven, maar heb in het verleden vaak met veel succes gebruik gemaakt van het "SimpleImage.php" script (vast wel bekend).

Maar momenteel ben ik met een site bezig waarbij de thumbnails allemaal gecropped moeten worden. Toen werd het dus een beetje puzzelen met kant en klare scriptjes, tot ik iets gecombineerd had wat werkte. Of althans, in bepaalde mate.

Als ik foto's van minder dan 2 MB probeer te uploaden is er geen probleem. Maar als ik een foto van bijv. 4 MB probeer te uploaden krijg ik de volgende melding:
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 17152 bytes) in .../httpdocs/simpleimage.php on line 33

Misschien een beetje een domme vraag, maar een foto van 4 MB is toch geen 32 MB? Or heeft het hier niets mee te maken? En zo niet, waar komt het dan door?

Voor de duidelijkheid hier even het complete script erbij, inclusief het database gedeelte voor de volledigheid:

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
<?php
include("simpleimage.php");

//check wat de titel van het plaatje moet worden
$sqlGetTitle = "SELECT * FROM fotoboek ORDER BY fotoboek_url DESC";
$resultGetTitle = mysql_query($sqlGetTitle);
$rowGetTitle = mysql_fetch_array($resultGetTitle,MYSQL_ASSOC);
$previousTitle = $rowGetTitle['fotoboek_url'];
$title = $previousTitle + 1;

//check wat het volgnummer moet worden
$sqlGetSeq = "SELECT * FROM fotoboek ORDER BY fotoboek_volgnr DESC";
$resultGetSeq = mysql_query($sqlGetSeq);
$rowGetSeq = mysql_fetch_array($resultGetSeq,MYSQL_ASSOC);
$previousSequencenumber = $rowGetSeq['fotoboek_volgnr'];
$sequencenumber = $previousSequencenumber + 1;


// grote afbeeldingen
list($width, $height, $type, $attr) = getimagesize($_FILES['foto']['tmp_name']);
if ($width < $height){
        $size = (550/$height) * $width;
        $hg = "550";
        $bg = round($size);
        }
elseif($width > $height){
        $size = (550/$width) * $height;
        $hg = round($size);
        $bg = "550";
        }
else {
        $bg = "550";
        $hg = "550";
        }

        $ext = ".jpg";
        $imagelocation = "afbeeldingen/fotoboek/" . $title . "." . jpg;

         $image = new SimpleImage();
          $image->load($_FILES['foto']['tmp_name']);
         $image->resize($bg,$hg);
        $image->save($imagelocation);
        
// verkleinen voor de thumbs zodat ze uitgesneden kunnen worden
list($width, $height, $type, $attr) = getimagesize($_FILES['foto']['tmp_name']);
if ($width > $height){
        $size = (156/$height) * $width;
        $hg = "156";
        $bg = round($size);
        }
elseif($width < $height){
        $size = (156/$width) * $height;
        $hg = round($size);
        $bg = "156";
        }
else {
        $bg = "156";
        $hg = "156";
        }

        $ext = ".jpg";
        $thumblocation = "afbeeldingen/fotoboek/" . $title . "_klein." . jpg;

         $image = new SimpleImage();
          $image->load($_FILES['foto']['tmp_name']);
         $image->resize($bg,$hg);
        $image->save($thumblocation);

//uitsnijden van de verkleinde images
list($current_width, $current_height) = getimagesize($thumblocation);

if ($current_width > $current_height){
    $left = (($current_width - 156)/2);
    $top = 0;
}
elseif($current_width < $current_height){
    $top = (($current_height - 156)/2);
    $left = 0;
}
else {
    $left = 0;
    $top = 0;
}


$crop_width = 156;
$crop_height = 156;

$canvas = imagecreatetruecolor($crop_width, $crop_height);
$current_image = imagecreatefromjpeg($thumblocation);
imagecopy($canvas, $current_image, 0, 0, $left, $top, $current_width, $current_height);
imagejpeg($canvas, $thumblocation, 100);

//ze de titel en volgnummer in de database
$sqlInsert = "INSERT INTO fotoboek (fotoboek_url, fotoboek_volgnr) VALUES ('$title', '$sequencenumber')";
$resultInsert = mysql_query($sqlInsert);

?>
Gewijzigd op 09/05/2011 17:39:40 door Marlies Maalderink
 
PHP hulp

PHP hulp

29/03/2024 09:01:29
 
- Roland -

- Roland -

09/05/2011 18:02:53
Quote Anchor link
4MB op harde schijf zegt heel weinig!

Een (reken)voorbeeldje
Foto van 2000x3000pixels -> 6000000 (6milj.) pixels
Een jpg heeft 16miljoen kleuren. Dat is 2 tot de macht 24 (ja dus een zgn. 24bits bestand)
En 24 bit is 3 Byte. Dus dan zitten we op 18000000 Bytes

Ja, en waarom deze getallen ? Omdat als je de foto (met de GD routine) wil gaan bewerken dan moet ie eerst in zijn geheel in het werkgeheugen staan! En voor de meeste bewerkingen ook nog eens 2x ! De originele versie EN de bewerkte versie !

Dan heb je dus al 36000000 bytes nodig !
 
- SanThe -

- SanThe -

09/05/2011 18:11:34
Quote Anchor link
Je hebt het over uploaden en dat zit niet in dit script.
 



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.