Serialize Unserialize

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.NET developer

Klaar voor een nieuwe uitdaging? Welke technologieën gaan schuil achter de dagelijkse energievoorziening? Als senior .NET developer bij Kenter maak jij samen met je team het verschil, zowel voor de interne organisatie als voor eindklanten. Samen bouwen jullie aan innovatieve dienstverlening met behulp van de nieuwste technologieën en tools. Het is een functie met veel vrijheid, goede arbeidsvoorwaarden én je draagt jouw steentje bij aan de energietransitie. Klinkt dit als iets voor jou? Lees dan verder of solliciteer direct! Wat ga je doen als senior .NET developer? Als senior .NET developer bij Kenter (onderdeel van Alliander) ben je van onschatbare

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 »

(Lead) PHP Software Developer

Functie omschrijving Voor een klein softwarebedrijf in Breda, zijn wij op zoek naar een PHP software developer met een aantal jaar werkervaring. Je krijgt een plek in een klein team met 2 andere software developers. Wil jij graag werken met de nieuwste technieken bij een bedrijf waar jij de lead gaat nemen in de verder ontwikkeling en modernisering van een eigen software pakket? Dan ben je hier aan het juiste adres! Jouw werkzaamheden gaan er als volgt uit zien: Je gaat aan de slag met de ontwikkeling en vernieuwing van het "in-house" ontwikkelde multimedia platform. Je neemt de lead in

Bekijk vacature »

Java Ontwikkelaar

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

.Net Front-end Ontwikkelaar

Wij zoeken een .Net Front-end Ontwikkelaar! Omschrijving Kun jij snel schakelen en ben je stressbestendig? Dan zoeken wij jou! Als .Net Front-end Ontwikkelaar help je mee aan de webapplicatie die over de hele wereld door allerlei bedrijven wordt gebruikt. Je werkt daarnaast mee aan nieuwe en verbeterde functionaliteiten en helpt met het oplossen van bugs. Over de opdrachtgever Je komt te werken in een ambitieus team dat zich blijft ontwikkelen. Dit is alle informatie die we nu kunnen delen over de werkplek. Als jij de .Net Front-end Ontwikkelaar bent voor deze job, vertellen we je snel nóg meer. Eisen Heb

Bekijk vacature »

.NET developer

Functie Als ervaren .NET ontwikkelaar start jij in één van onze vier scrumteams. Met 30 ontwikkelaars werk jij aan de doorontwikkeling van ons core product. Ook werkt jouw team aan maatwerkoplossingen op aanvraag van de klant en op projectbasis. Wij vinden het erg belangrijk dat onze ontwikkelaars met plezier naar werk gaan. Een deel hiervan ligt uiteraard bij jezelf, als jij ontwikkelen niet leuk vindt, ben jij bij ons echt aan het verkeerde adres. Jouw team bestaat namelijk uit een groep gepassioneerde vakidioten die dit werk doen omdat dit eerst een hobby was! Daarnaast wordt er intern rekening gehouden met

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 »

Full Stack PHP Developer

Functieomschrijving Ervaren PHP Developer gezocht! Wij zijn op zoek naar een ervaren PHP Developer die het IT team van een organisatie in de regio Ermelo gaat versterken. Voor deze functie zijn we op zoek naar een enthousiaste en breed georiënteerde IT-er die deze innovatieve organisatie nog een stap verder gaat brengen. Wij zijn op zoek naar iemand die communicatief goed is en die zelfstandig problemen op kan lossen. Je bent verantwoordelijk voor het samenwerken met een externe partij het is hierbij jouw taak om deze partij uit te dagen op het geleverde werk. Het schrijven van concepten aan de AI

Bekijk vacature »

Senior Cobol Applicatieontwikkelaar

Bedrijfsomschrijving De IV- organisatie van de Belastingdienst is verantwoordelijk voor en verzorgt de ICT- voorzieningen. Het merendeel van de applicaties wordt op dit moment door de IV- organisatie zelf ontwikkeld, onderhouden en beheerd in het eigen data center. Naast de zorg voor continuïteit op de massale heffing- en inningsprocessen die plaatsvinden binnen een degelijke, stabiele omgeving, wordt er tevens volop gewerkt aan modernisering van het IV- landschap. Dit gebeurt deels intern door gebruik te maken van de expertise die intern aanwezig is, maar ook door het aantrekken van (kant-en-klaar) oplossingen en expertise uit de markt. Functieomschrijving In de applicatie ETM

Bekijk vacature »

Medior front-end developer gezocht (€3.300 -

Functie Wat ga je doen? Jij als front-end developer gaat werken binnen de teams van/voor onze klant. Je werkt in een team met starters en ervaren ontwikkelaars met allemaal 1 overeenkomst; passie voor het vak. Maak je een fout? Geen probleem, leer ervan en ga dan weer door. Door de variëteit aan werk kun je in verschillende omgevingen een kijkje nemen en jezelf dus snel ontwikkelen. Wat hebben we jou te bieden? • Uitdagende projecten bij mooie klanten (bij jou in de buurt, of binnenkort intern vanuit ons kantoor!) • Een jonge organisatie met talentvolle collega’s • Veel ruimte voor

Bekijk vacature »

Senior Front-end Developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als Senior Front-end 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. Onze klantenkring is groot en divers, dat vraagt om flexibiliteit van jou. Tegelijkertijd betekent dit dagelijks nieuwe dingen leren én dat geen werkdag hetzelfde is. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling waarbij iedereen welkom is, zowel

Bekijk vacature »

Cloud Developer

Cloud Developers opgelet! Bij Luminis zijn ze opzoek naar jou. Lees de vacature en solliciteer direct. Luminis is een software- en technologiebedrijf met meerdere vestigingen. Vanuit deze vestigingen werken 200 professionals aan technisch hoogwaardige oplossingen voor klanten zoals KLM, Nike en Bol.com. Ook ontwikkelt Luminis eigen oplossingen op het gebied van cloud, Internet of Things, data intelligence, e-sports en e-learning. Luminis onderscheidt zich door aantoonbaar voorop te lopen in technologie en innovatie. Luminis heeft drie kernpunten die verankerd zitten in alles wat we doen: het omarmen van nieuwe technologie, meesterschap en kennis delen. Functiebeschrijving First things first! Het is belangrijk

Bekijk vacature »

Front-end Developer - React - Data Driven

Bedrijfsomschrijving Onze klant is een snelgroeiende organisatie die een data-driven inspectieapp op de markt hebben gebracht die nu al een aantal jaar door verschillende organisaties wereldwijd gebruikt wordt. Er zijn zo'n 6 mensen werkzaam bij dit bedrijf en ze zijn nu vooral op zoek naar een sterke front-end developer die wil gaan werken aan nieuwbouw applicaties en de uitbouw van de huidige applicaties. De reden dat ze zoeken is omdat er veel werk op komst is en ze hier de juiste capaciteit voor willen hebben. Er heerst hier een hele prettige sfeer waarin respect en eerlijke communicatie belangrijk is. Ook

Bekijk vacature »

Software programmeur

Functieomschrijving Voor een uitdagende werkgever in regio Breda zijn wij op zoek naar een Full Stack C#.NET programmeur. Je bent verantwoordelijk voor het ontwikkelen van apps, webapplicaties en dashboards voor de eigen IOT-oplossingen. Je werkt samen met andere developers en engineers om de sensoren in machines te scannen en vervolgens de data om te zetten in management informatie voor de klanten. Taken en verantwoordelijkheden: Je gaat aan de slag met de volgende technologieën en frameworks: C#, JS frameworks, HTML, TypeScript, SQL & C++, CSS. Geen ervaring met één van deze technologieën is dan ook geen enkel probleem! Deze werkgever biedt

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 »

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

14/05/2024 13:02:11
 
- 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.
 
Ad Fundum

Ad Fundum

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 Ad Fundum
 

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.