Serialize Unserialize

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior Developer Betty Blocks Blauwe Haven Rotterd

Functieomschrijving Voor de Politie zijn wij opzoek naar een Senior Developer Betty Blocks Blauwe Haven Rotterdam. De politieorganisatie heeft jaarlijks te maken met een aanzienlijk aantal politiemedewerkers die vanwege mentale overbelasting niet of beperkt inzetbaar zijn. De Blauwe Haven Rotterdam ondersteunt deze politiemedewerkers in hun herstel en re-integratieproces. De huidige digitale systemen van de Politie bieden onvoldoende ondersteuning in het herstel- en re-integratieproces van politiemedewerkers. Zowel voor de politiemedewerkers als voor de organisatie. Politiemedewerkers worden buitengesloten, waardoor zij eigen regie verliezen. Begeleiders kunnen de voortgang van de medewerkers niet goed monitoren. Management beschikt niet over de mogelijkheid trends te signaleren

Bekijk vacature »

Senior Front-End Developer

As a Senior Front-end Developer you maintain the balance between creativity and functionality for our webshop, and you coach your fellow developers. How do I become a Senior Front-End Developer at Coolblue? As a Front-end Developer you work on the user-friendliness of our webshop for millions of customers. You enjoy working with the UX Designer to pick up stories. You get energy from coming up with creative solutions and are happy to present this within the team. You are also proud of your work and welcome all feedback. Would you also like to become a Senior Front-End Developer at Coolblue?

Bekijk vacature »

C++ Ontwikkelaar

Functieomschrijving Ben jij toe aan een nieuwe uitdaging en werk je graag en goed in C++ en C#? Dan zijn we op zoek naar jou! Dit bedrijf is dé specialist op het gebied van automatiseringssoftware voor een specifieke branche en ze zijn per direct op zoek naar versterking in hun development team. Wat jij gaat doen binnen jouw rol als C++ ontwikkelaar; Je vertaalt de wensen van gebruikers naar een functioneel ontwerp. Je houdt je bezig met het ontwerpen, programmeren en testen van product aanpassingen. Je gaat nieuwe product releases implementeren in de projectteams. Je gaat de effecten van nieuwe

Bekijk vacature »

Junior Software Developer C# Verhuursector Verhuur

Samengevat: Wij ontwikkelen en leveren softwaresystemen voor de logistieke sector en de verhuursector. Ben jij geschikt als Junior Software Developer? Heb je ervaring met Delphi? Vaste baan: C# Software Developer Logistiek HBO €2.500 - €3.900 Deze werkgever is een software ontwikkelaar, gericht op software voor de logistieke sector. Deze werkgever heeft eigen producten ontwikkelen en leveren ook maatwerk. Ons bedrijf kent een boeiende en inspirerende werkomgeving met een open cultuur en mogelijkheden voor je verdere ontwikkeling. Bij bij hun werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit als het gaat om

Bekijk vacature »

Als Front-end developer bijdragen aan het onderwij

Functie Als front-end developer om je terecht in een team van goede en ervaren developers, en ga je werken aan de software die door miljoenen mensen gebruikt wordt. Je bent in staat om designs effectief te vertalen naar werkende feautures en hebt oog voor een goede UX van het product. Je staat voor clean code en goede documentatie. Je ziet toegevoegde waarde in het beoordelen van het werk van collega’s om zo samen te streven naar hoge kwaliteit software en code. Je dagelijkse werk bestaat uit het werken aan componenten in de Storybook. Het verbeteren en refactoren van de huidige

Bekijk vacature »

Frontend Developer

Functieomschrijving Voor de NIPV zijn wij opzoek naar een Frontend Developer. Als Frontend Developer ga jij aan de slag om dashboards te bouwen vanuit het datawarehouse. Dit stelt NIPV in staat om snel en eenvoudig bij correcte bedrijfsvoeringsinformatie te kunnen. Je ontwikkelt dashboards in PowerBI, publiceert en onderhoud die, verzameld en verwerkt feedback in overleg met het ontwikkelteam. Naast dashboards ontwikkel en onderhoud je een datamodel in Excel waarmee adviseurs, controllers en analisten in staat worden gesteld om de gegevens uit de dashboards te raadplegen en anders te filteren of bepaalde gegevens nader te verfijnen, zodat verdiepende vragen kunnen worden

Bekijk vacature »

Software Developer

Functie omschrijving Veel begeleiding en de kans om je verder te ontwikkelen als software developer. Dat kunnen wij jou bieden bij deelname aan deze leuke traineeship. Je krijgt een mentor toegewezen die jou alle kneepjes van het vak leert. Heb jij al wat ervaring als software developer? Daar worden wij heel blij van! Lees snel verder! Bedrijfsprofiel Als software developer neem je deel aan een trainings programma in de omgeving van Haarlem waar je persoonlijk wordt begeleidt, zodat je alle kneepjes van het vak leert. Aan de hand van jouw kennis en ervaring krijg je een persoonlijk opleidingstraject. Je gaat

Bekijk vacature »

App Developer

Samen werken aan een gezonder Nederland en toekomstbestendige zorg voor iedereen. Dat is de impact die jij kan hebben als App Developer bij VGZ. Wil jij een bijdrage leveren aan een maatschappij waarin iedereen zich thuis voelt? Bekijk dan de vacature. Uit onderzoek van Computable is VGZ verkozen tot ‘beste niet-ICT werkgever voor ICT’ers van Nederland’ Hoe ook jij het verschil maakt Als App developer werk jij aan het belangrijkste communicatiekanaal van VGZ, namelijk de App! Als App developer bij VGZ maak je onderdeel uit van een van onze App-teams. Met een goede mix van kennis en ervaring zet je

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 »

Als Lead PHP developer bijdragen aan het onderwijs

Functie Als Lead PHP developer zet je samen met het team en de andere lead developers de technische lijnen uit als het gaat om het ontwikkelen van de applicaties en bepaal je samen met de PO waar elke sprint aan gewerkt zal worden. Je kunt op basis van een user story een goede aanpak formuleren en een planning opstellen, en andere hierin meenemen. Wanneer je team code schrijft verwacht je degelijke oplossingen, bij voorkeur gebruik makend van Domain Driven Design. Je ziet toegevoegde waarde in het beoordelen van het werk van collega’s om zo samen te streven naar hoge kwaliteit

Bekijk vacature »

C#.NET Developer Jr. Functie

Functie omschrijving Bouw jij graag aan applicaties om processen in distributiecentra te optimaliseren? Wij zijn op zoek naar een C#.NET ontwikkelaar in regio Breda die hier graag een steentje aan bijdraagt! Jouw werkzaamheden zullen er als volgt uitzien: Je krijgt veel vrijheid in de keuze van de technieken die je gaat gebruiken. Uiteraard wel binnen de gestelde kaders, en door gebruik te maken van het .NET platform. Je gaat aan de slag met de ontwikkeling van een nieuwe module binnen de WMS suite van dit bedrijf. Deze "carrier" module gaat er voor zorgen dat de selectie van een vervoerder volledig

Bekijk vacature »

Applicatieontwikkelaar ABAP

Bedrijfsomschrijving Functieomschrijving De kandidaat zal worden ingezet binnen een van de DevOps teams binnen SCI (Service Centrum Inburgering) voor het ontwerpen en bouwen in SAP ABAP van de binnen SCI gebruikte informatiesystemen. Voornaamste voorkomende werkzaamheden zijn het aanpassen van en bouwen van nieuwe programmatuur in ABAP (Objects), waarbij ook gebruikt wordt gemaakt van DDD (Domain Driven Design) en het opstellen/aanpassen van Functionele/Technische ontwerpen. Daarnaast moeten ook formulieren met SAP Smartforms worden aangepast. Verder speelt de overgang naar SAP4Hana en SAP CPI. Vanwege het veelvuldig gebruik van SAP PO is kennis hiervan een pré. Achtergrond opdracht Momenteel werken meerdere DevOps teams

Bekijk vacature »

Senior PHP developer met ambities tot Software Arc

Functie Momenteel zijn ze op zoek naar een ervaren PHP developer die zichzelf graag bezighoudt met zaken als architectuur en de algehele verbetering van structuren en standaarden. Het is eigenlijk meer operationeel als uitvoerend omdat je bezig gaat met zaken als het verder uitrollen en verbeteren van testautomatisering, codereviews, tickets en de doorloop hiervan en architectuurkeuzes. Mocht je hiernaast ook wat DevOps kennis meenemen is dit mooi meegenomen! Vanwege het kleine team maar de wereldwijde impact die zij leveren is er veel focus op kwaliteit. In deze functie werk je aan één van hun belangrijkste applicaties. Hierin werk je nauw

Bekijk vacature »

Oracle APEX Ontwikkelaar (3.500-6.000 euro)

Bedrijfsomschrijving Ben jij een getalenteerde Oracle APEX ontwikkelaar met minimaal één jaar ervaring in het ontwikkelen van Oracle APEX-applicaties? Ben je gepassioneerd over het ontwikkelen van bedrijfskritische oplossingen en wil je werken bij een toonaangevend consultancybedrijf? Dan zijn wij op zoek naar jou! Deze organisatie beschikt over zowel inhouse als externe projecten, maar bovenal over een sterk team en netwerk van opdrachten waardoor jij jezelf verder kunt ontwikkelen. Het team bestaat uit een aantal junior en medior developers, maar vooral uit senioren. De business unit managers binnen het team zijn mensen die hun vak verstaan en zelf als Oracle APEX

Bekijk vacature »

Gezocht: .Net ontwikkelaars met een maatschappelij

Bedrijfsomschrijving Zoek jij als medior .Net ontwikkelaar een inspirerende werkplek bij een bedrijf met maatschappelijk verantwoordelijkheidsgevoel? Dan is deze vacature je op het lijf geschreven. De organisatie bestaat ruim 20 jaar en ze ontwikkelen in house applicaties waarmee de zorgsector enorm mee gebaat is. Jouw applicaties worden gebruikt door duizenden gebruikers waardoor je echt een waardevolle bijdrage kan leveren aan de maatschappij. Het bedrijf is zeer innovatief en vindt een goede werk/privé balans belangrijk. Je krijgt alle mogelijkheden om jezelf verder te ontwikkelen, je werktijden in te delen en daarnaast is het ook mogelijk om deels thuis te werken. Het

Bekijk vacature »

Pagina: 1 2 volgende »

Arno van Zanten

Arno van Zanten

01/04/2023 17:36:38
Quote Anchor link
Wie kan mij helpen met dit?
Ik wil van een gebruiker naar de dbase zijn ID invoeren uiteraard en daarna wil ik weten wat hij/zij mee neemt bv.

User_ID : naam, Objects: Schep, Schelp, Parasol, Bier, Zonnebril

Dus de dbase bevat deze velden:
ID: User_ID: Objects.

En alles wat de gebruiker meeneemt, moet dus in Objects.
Maar later moet ik dus ook die gegevens op kunnen vragen zonder scheidingsteken.

Hoe doe ik dat? Iemand een idee?
Gewijzigd op 01/04/2023 21:05:13 door - Ariën -
 
PHP hulp

PHP hulp

27/05/2026 01:40:22
 
- Ariën  -
Beheerder

- Ariën -

01/04/2023 18:16:25
Quote Anchor link
Je kan het prima genormaliseerd opslaan in de database.
 
Arno van Zanten

Arno van Zanten

01/04/2023 18:51:10
Quote Anchor link
Ja maar dan krijg je

ID: User_ID: Objects_1: Objects_2: Objects_3: etc... en ik heb bv 50 objects.
Dus dan krijg je een zeer lange MySql DBase. Juist wat ik niet wil
Daarom vroeg ik me af hoe Serialize / Unserialize toe te kunnen passen.
 
- Ariën  -
Beheerder

- Ariën -

01/04/2023 19:01:04
Quote Anchor link
Daarom moet je NOOIT in de breedtte horizontaal werken. Als je velden gaat nummeren, ben je verkeerd bezig.

Met een lange database die verticaal is, is niks mis. Ik heb zelfs tabellen met 30 miljoen records. En dat gaat prima.
Met (un)serialize ben je ook al fout bezig.

Dus verdiep je in databasenormalisatie.
Ik zit te denken aan meerdere tabellen: Een objecten tabel, een koppeltabel met de ID's van gebruikers en Objecten, en de Gebruikerstabel.
Gewijzigd op 01/04/2023 19:13:12 door - Ariën -
 
Arno van Zanten

Arno van Zanten

01/04/2023 20:59:54
Quote Anchor link
Volgens mij snap je het niet of lees je het bericht niet goed.

Het gaat erom dat per gebruiker verschillende objects hebben.
Gaat niet om 1 gebruiker, maar om meerdere.
Dan zou ik iedere keer een nieuwe dbase per gebruiker moeten aanmaken, is ook niet te doen.

ID : User_ID : Objects :
===+=========+=================================+
1 | 1 | Shcep, Parasol, Zonnebril, Tent |
===+=========+=================================+

Maar jij wilt me dus dit laten doen :

ID : User_ID : Object_1 : Object_2 : Object_3 : Object_4 :
===+=========+==========+==========+==========+==========+
1 | 1 | Schep | Parasol | Zonnebril| Tent |
===+=========+==========+==========+==========+==========+

Maar ik praat over 50 objecten, dus ik wil dat in 1 field wegzetten en ook kunnen ophalen.
Dus hoe doe ik dat?
 
Ozzie PHP

Ozzie PHP

01/04/2023 21:02:53
Quote Anchor link
>> Volgens mij snap je het niet of lees je het bericht niet goed.

Ik denk dat Ariën het heel goed snapt, en dat jij het zelf niet goed leest of niet goed snapt.

>> Dan zou ik iedere keer een nieuwe dbase per gebruiker moeten aanmaken, is ook niet te doen.

Dit wordt nergens gezegd en zou inderdaad nergens op slaan.

Wacht even de uitleg van Ariën af, zodat je beter begrijpt wat hij bedoelt.
 
- Ariën  -
Beheerder

- Ariën -

01/04/2023 21:04:43
Quote Anchor link
Blijkbaar heb je niet mijn advies opgevolgd over het uitzoeken van database normalisatie.

En ik heb duidelijk aangegeven dat je NOOIT horizontaal moet uitbreiden.

Je moet in een koppeltabel een objectID koppelen aan een UserID met een record/rij/row. Snap je?
Gewijzigd op 01/04/2023 21:20:52 door - Ariën -
 
Arno van Zanten

Arno van Zanten

01/04/2023 21:29:37
Quote Anchor link
Ja maar dan ga ik dit krijgen

ID : User_ID : Objects :
===+=========+=========+
1 | 1 |Schep |
===+=========+=========+
2 | 1 |Parasol |
===+=========+=========+
3 | 1 |Zonnebril|
===+=========+=========+

Etc.... En stel ik heb dan 50 gebruikers? Dan wordt het toch een zooi op een gegeven moment.
Waarom niet de Objects per gebruiker niet in 1 veld, zodat ik meerdere records op kan slaan?
Als ik met het voorbeeld verder ga, dat op eens ook een gebruiker 2 komt, dan weet je waarom ik het bedoel.
Een gebruiker kan bv meerdere objects hebben, stel dat er 1 is die alle 50 pakt, dan snap je wat ik bedoel.
Daarom dat ik vroeg of het niet beter is om de objects per gebruiker in 1 field op te slaan?
 
- Ariën  -
Beheerder

- Ariën -

01/04/2023 21:38:08
Quote Anchor link
En hoe wil je straks weten hoeveel objecten je in totaal uitgedeeld hebt? Als je meerdere items in velden gaat proppen, dan wordt het inderdaad onoverzichtelijk.

Zoals ik al zei heb je drie tabellen nodig met deze velden:

objecten
- ID
- naam

gebruikers
- ID
- gebruikersnaam
- wachtwoord (hashed)
- e-mail
- etc...

gebruikers_objecten
- GebruikersID
- ObjectID

Ik denk dat je wel snapt hoe je de tabellen objecten en gebruiker in kan vullen. :-)
En bij de tabel gebruikers_objecten vul je steeds per record het ID van de gebruiker in, en het ID van het object.

En zie hier: Een genormaliseerde en overzichtelijke tabel met onbeperkt aantal objecten die je per gebruiker kan opslaan.

Oh ja, maak je geen zorgen dat je straks misschien 100 records hebt, want daar zijn database voor gemaakt. Ook al heb je er 50 miljoen, dan is dit geen enkel probleem.
Gewijzigd op 01/04/2023 21:40:41 door - Ariën -
 
Arno van Zanten

Arno van Zanten

01/04/2023 21:44:56
Quote Anchor link
Okay, maar het formulier met alle objecten, worden gekozen via checkboxen.
Een gebruiker krijgt een keuze formulier met alle objecten en die kan hij aanvinken welke hij/zij wilt.
dan slaat het formulier de records op.
Dus dan moet ik kijken hoe ik dan dat oplos.
 
- Ariën  -
Beheerder

- Ariën -

01/04/2023 21:48:21
Quote Anchor link
Gebruik je blokhaken in de checkbox?
Zoals objecten[] in je name-argument? Dan heb je in $_POST['objecten'] een array zitten die je met foreach(){} kan doorlopen, en met een INSERT-query kan opslaan.
 
Arno van Zanten

Arno van Zanten

01/04/2023 21:49:57
Quote Anchor link
Ik ben deze toturial aan het volgen :
https://www.youtube.com/watch?v=zko0ZqfG7cs
 
- Ariën  -
Beheerder

- Ariën -

01/04/2023 21:55:10
Quote Anchor link
Die legt het aardig goed uit. Hoewel PHP.net, W3Schools en https://www.phptutorial.net/ beter zijn.
Gewijzigd op 01/04/2023 21:56:51 door - Ariën -
 
Arno van Zanten

Arno van Zanten

01/04/2023 21:56:17
Quote Anchor link
Als ik het maar snap hoe het werkt, dan kom ik er wel uit...
anders kom ik hier weer terug ;)
 
- Ariën  -
Beheerder

- Ariën -

01/04/2023 21:57:43
Quote Anchor link
Ik denk dat het nu wel gaat lukken :-)
 
Ward van der Put
Moderator

Ward van der Put

02/04/2023 15:08:08
Quote Anchor link
Je geeft de objecten nu (net als de gebruikers) een unieke ID, maar hebben de objecten inderdaad ook een identiteit? Zijn het uniek identificeerbare objecten, zoals auto's met kentekens? Of wil je alleen maar vastleggen dat gebruiker x "een parasol" meeneemt?
 
Arno van Zanten

Arno van Zanten

02/04/2023 15:24:35
Quote Anchor link
Ward van der Put op 02/04/2023 15:08:08:
Je geeft de objecten nu (net als de gebruikers) een unieke ID, maar hebben de objecten inderdaad ook een identiteit? Zijn het uniek identificeerbare objecten, zoals auto's met kentekens? Of wil je alleen maar vastleggen dat gebruiker x "een parasol" meeneemt?


Juist, maar misschien ook meer natuurlijk.
 
- Ariën  -
Beheerder

- Ariën -

02/04/2023 18:39:45
Quote Anchor link
Met andere woorden: Ga je die objecten ook nog onder verdelen in categorieën?
 
Arno van Zanten

Arno van Zanten

02/04/2023 18:49:24
Quote Anchor link
- Ariën - op 02/04/2023 18:39:45:
Met andere woorden: Ga je die objecten ook nog onder verdelen in categorieën?


Nee, dat niet
 
- Ariën  -
Beheerder

- Ariën -

02/04/2023 21:45:17
Quote Anchor link
Dan voldoet mijn opzet wel.
Met een JOIN in je query kan je de titels ophalen als je gebruikers_objecten aanroept.
 

02/04/2023 21:46:08
Quote Anchor link
Je schrijft: "Het gaat erom dat per gebruiker verschillende objects hebben." [sic]

Dus je hebt in je database:
- 1 tabel voor gebruikers. Elke rij heeft een eigen ID;
- 1 tabel voor objecten. Elk object heeft een naam en een eigen ID;
- 1 koppeltabel om te weten welk object bij welke gebruiker hoort.

De koppeltabel werkt als volgt. Komt een combinatie van user_id en object_id er in voor, dan is een object gekoppeld aan de gebruiker. En anders niet.

Je schrijft: "Waarom niet de Objects per gebruiker niet in 1 veld, zodat ik meerdere records op kan slaan?"

Dat is niet hoe relationele databases bedoeld zijn. Je moet denken in verzamelingen. Een database is heel erg snel in het ophalen van alle objecten van een gebruiker, wanneer de tabel slechts twee integer-kolommen heeft, en wanneer je het ID van de gebruiker hebt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
SELECT
  object.id AS object_id
  object.naam AS object_naam,
  gebruiker_id IS NOT NULL AS aangevinkt
FROM object
  LEFT JOIN object_gebruiker
    ON object_gebruiker.object_id = object.id
WHERE object_gebruiker.gebruiker_id = $1
ORDER BY object.naam


Hiermee krijg je in 1x alle objecten voor in het formulier, met de status of ze zijn aangevinkt.
Gebruik in het formulier:
<input name="object[object_id]" type="checkbox" checked> object_naam

Als de optie niet is aangevinkt laat je het HTML-attribuut 'checked' gewoon weg.
Je krijgt dan in PHP (met de standaardinstellingen) de formuliergegevens in de associatieve array $_POST['object'].
Om het formulier op te slaan:
- start je een database transactie;
- wis je alle rijen van de gebruiker in de tabel object_gebruiker;
- sla je alle combinaties op uit $_POST['object'], vanuit een foreach()-lus;
- commit je de database transactie.

Ik ga er gemakshalve vanuit dat je de gebruiker_id al weet, bijvoorbeeld omdat de gebruiker eerst moet inloggen. En dat de gebruiker_id is opgehaald uit de database en bewaard in $_SESSION.
Gewijzigd op 02/04/2023 21:59:23 door
 

Pagina: 1 2 volgende »



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.