Serialize Unserialize

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

C# .NET Developer

Dit ga je doen Je richt je op het doorontwikkelen en herstructureren van het platform; Je werkt in teamverband en zelfstandig aan uitdagende projecten voor verschillende klanten; Softwareontwikkeling middels C# .NET; Je staat in contact met verschillende opdrachtgevers om de klantwensen te bespreken en deze vervolgens te ontwikkelen; Verbeteren van bedrijfsprocessen; Implementaties. Hier ga je werken Als .NET Developer kom je te werken in de regio van Lelystad bij een organisatie die met toonaangevende klanten uit heel Nederland samen werkt. De producten en diensten van de organisatie bereiken miljoenen Nederlanders. Hierbij komt een grote hoeveelheid informatie kijken en deze moet

Bekijk vacature »

Medior/senior Back-end developer gezocht!

Functie Vanwege de groei binnen het bedrijf zijn we op zoek naar versterking in het devlopmenttean. Als back-end developer bouw je aan de bedrijfssoftware die ons helpt bij de primaire processen. Een leuk (intern) project dus waarbij je de software continu doorontwikkeld! Je werkt in een klein team, we hebben dagelijks stand-ups en iedere twee weken een scrum-sessie, begeleid door onze Scrum Master. Hierin krijg je uitgebreid de kans om je ideeën te presenteren, en te overleggen met je mede-ontwikkelaars en de Product Owner. Binnen de ontwikkelteams gebruiken we Trello, Gitlab, Jiira, Confluence en Boockstack. Hiernaast werken ze met de

Bekijk vacature »

Java Developer (Training And Simulation)

Wat jij doet Je zou onze Java Developer zijn en nauw samenwerken met je Product Owner, Software System Engineer, Scrum Master en andere Developers. Samen draag je bij aan een multidisciplinair en zelf organiserend Agile team. De rol is zeer afwisselend en bestaat uit, maar is zeker niet beperkt tot: de-risk en prototype onbewezen simulatietechnologieën; simulatiekaders ontwikkelen voor gebruik door andere teams; je bent goed in het begrijpen van ingewikkelde ideeën; heeft de mogelijkheid om nauw samen te werken met grote internationale klanten, leveranciers en overheden om onze oplossingen, vastleggingsvereisten, enz. te definiëren en te presenteren. Ben jij het? Wij

Bekijk vacature »

Machine Software Developer

Bij een bedrijf in de machinebouw, regio Roosendaal, zijn we op zoek naar een: Machine 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 Machine Software Developer ben je verantwoordelijk voor: - Je ontwerpt, ontwikkelt en debugt software voor machinebesturingssystemen en complexe landbouwmachines; - Je stelt gebruikersinterfaces op (cabinedisplays); - Op termijn ga je softwareprojecten leiden voor specifieke machines; - Inclusief planning, documentatie en validatie; - Om specificaties te verifiëren

Bekijk vacature »

Low Code Ontwikkelaar

In het kort Als Low Code Developer werk je aan projecten bij en voor onze klanten, waarbij je voor het ontwikkelen van de oplossingen een technisch low-code platform gebruikt. Samen met het team streef je naar de beste oplossing en bepalen jullie de juiste aanpak. Je rol is divers en je bent van begin tot eind betrokken bij de ontwikkeling zowel de back-end en de front-end van de applicatie. Naast de ontwikkeling en oplevering, breng je ook advies uit aan de klant waarom bepaalde keuzes worden gemaakt. Je bent dan ook communicatief sterk en kunt je keuzes goed (inhoudelijk) onderbouwen.

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 »

.NET Developer gezocht!

Functie omschrijving Wij zijn op zoek naar een .NET Developer! Wil jij werken voor een internationaal bedrijf waar je legio mogelijkheden krijgt als Software Ontwikkelaar? Grijp nu je kans en kijk snel of jouw vaardigheden aansluiten bij onderstaand profiel! Je kunt een uitdagende rol gaan vervullen als .NET Developer binnen een internationaal bedrijf dat gevestigd is in omgeving Bergen. Dit bedrijf is zeer vooruitstrevend en verricht betekenisvol werk. Binnen dit bedrijf wordt gewerkt aan de productie en ontwikkeling van medische middelen. Als .NET Developer ga jij je bezig houden met het volgende: Je wordt betrokken bij alle fasen van software

Bekijk vacature »

Medior/Senior Software Developers gezocht in de Ra

Functie Op dit moment staan er posities open voor de volgende functies: Front-end, Back-End & Fullstack software developer. Als Front-End software developer werk je met JavaScript en de bijbehorende technologieën zoals TypeScript, Angular, React, Vue en Svelte. Als Back-End software developer ben je bezig in NodeJS en doe je dit met behulp van AWS, NoSQL, REST en GraphQL. Je krijgt leuke en uitdagende opdrachten met een gemiddelde duur van anderhalf jaar. Hier werk je in een team met andere IT’ers aan het ontwikkelen en verbeteren van software. Je wordt begeleid door een accountmanager die fungeert als jouw aanspreekpunt. Het team

Bekijk vacature »

Robot Programmeur

In het kort Drie redenen waarom deze vacature uniek is! Programmeren van zelflerende robots Werken op kantoor en testen in de bedrijfshal Je krijgt verantwoordelijkheid, vrijheid en je mag werken naar eigen inzicht De organisatie Hier ga je aan de slag Een bedrijf dat innovatieve robottoepassingen ontwerpt en bouwt voor onder andere de staal industrie, energie- bouw- en agrarische sector. De robots die vaak in combinatie met diverse randapparatuur geleverd worden vormen een totaaloplossing voor de klant. Dit zijn klanten over de hele wereld, van België en Duitsland tot China, India, maar ook in Nederland. Projecten waar momenteel aan wordt

Bekijk vacature »

Medior/senior PHP ontwikkelaar E-commerce

Functie Het software development team bestaat momenteel 5 scrum teams . Ieder team heeft een eigen SCRUM Master en eigen tester. Zij werken voornamelijk in PHP en met hun eigen geschreven framework wat Symfony based is . Jij bent samen met je collega’s verantwoordelijk voor het interne softwaresysteem en alle projecten die daar omheen lopen. Alles wat jij ontwikkelt, wordt direct toegepast en uitgerold (wereldwijd). Dit maakt jouw werk tastbaar en uitdagend! Een greep uit jouw werkzaamheden: Toevoegen en ontwikkelen van nieuwe functionaliteiten Logistieke software ontwikkelen voor intern gebruik Tientallen gigabytes aan data inzichtelijk maken Altijd op zoek gaan naar

Bekijk vacature »

Software Developer

Dit ga je doen Je bent verantwoordelijk voor de warehouse applicatie die een integratie heeft met de PLC laag; Je ontwikkelt in C#/.Net; Je werkt mee aan de migratie naar .NET 6; Je bent verantwoordelijk voor het ontwikkelen van interfaces en het visualiseren van componenten; Je denkt mee over het design voor business oplossingen; Je bent verantwoordelijk voor het testen van de gebouwde oplossing. Hier ga je werken Voor een internationale organisatie in de transport zijn wij momenteel op zoek naar een Software Developer. Zij zijn wereldwijd de grootste speler en lopen voorop met het automatiseren van alle processen van

Bekijk vacature »

Java Developer

Functieomschrijving Are you an experienced Java Developer who wants to be challenged? Then this is your job! As a Java Developer, you are co-responsible for building custom applications within our extensive IT landscape. Development takes place on both the back-end side (Spring/JEE). Together with the IT department, you are responsible for the daily adjustments and expansions of our IT systems. In addition, you will work in small scrum teams using the Agile methodologies. Besides the realization of our in-house systems, you are responsible for the roll-out of the application (version) as well as the operational support after going live. Team

Bekijk vacature »

Senior .NET developer

Functie As a Senior .NET developer you will work in our Research & development team. Our team consists of 17 colleagues! We are currently busy setting up a completely new architecture for a new product. We use VS2022 and .NET 6.0 for our new product. Your function is therefore mainly backend oriented. Since we develop measuring equipment for the chemical industry, it is also very important to develop high-quality software for its control. You are also responsible for designing, implementing and testing new features. For this position its also very important to ensure future-proof and sustainable architecture. Eisen - A

Bekijk vacature »

.NET developer

Functie Als ervaren .NET ontwikkelaar ontbreekt er aan passie en motivatie niks. Jij bent communicatief sterk en pakt iedere uitdaging dan ook met beide handen aan. Op projectbasis ga jij met je team of met enkele andere ontwikkelaars intern aan de slag bij diverse partners. Op basis van het project ga jij aan de slag en zijn de werkzaamheden en technieken erg divers. Jouw werkgever stelt jouw ontwikkeling hierin voorop, zo krijg je een vast vertrouwenspersoon die één keer in de maand op locatie van jouw project zal kijken hoe het gaat en of er eventuele aandachtspunten zijn. Daarnaast krijg

Bekijk vacature »

Softwareontwikkelaar Cleopatra

Functieomschrijving: De directie Verkeer en Openbare ruimte van de gemeente Amsterdam beschikt over een softwareapplicatie, "Cleopatra", waarmee geautomatiseerde handhaving plaatsvindt (op basis van kentekenherkenning) van bepaalde gebieden waarin toegangseisen worden gesteld aan het verkeer. Voorbeelden ervan zijn de milieuzones, de zone zwaar verkeer, handhaving van bromen snorfietser op het fietspad en autoluwe gebieden. Voor de doorontwikkeling en uitbreiding ervan zijn gespecialiseerde softwareontwikkelaars nodig die helpen bij het programmeren van de handhavingsmodules voor nieuwe gebieden en het verbeteren en bijwerken van de bestaande onderdelen van de softwareapplicatie.De opdracht bestaat uit: het programmeren van de diverse modules;het tijdens demo's tonen van de

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

23/12/2024 17:23:00
 
- 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.