MVC

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

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 »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Gezocht: Ervaren VB6 developer met C# ambitie!

Bedrijfsomschrijving Dit bedrijf is een vooraanstaande softwareleverancier die gespecialiseerd is in het ontwikkelen van software pakketten voor autoschade herstel bedrijven. De software wordt gebruikt door meer dan de helft van alle autoschade herstel bedrijven in Nederland. Het team van professionals is op zoek naar getalenteerde collega developers die hun vaardigheden willen inzetten om het bedrijf te laten groeien. Functieomschrijving Voor dit bedrijf zoek ik een ervaren VB6 / VB.NET developer met interesse om op termijn verder te gaan in C#. In deze functie ben je verantwoordelijk voor het onderhouden van de bestaande softwarepakketten. Een deel van de code is nog

Bekijk vacature »

Medior Java developer

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 »

Backend Developer Scrummaster .NET

Samengevat: Deze werkgever is een ambitieus internetbedrijf met een passie voor digitale communicatie. Ben jij geschikt als Backend Developer? Heb je ervaring met .NET platform? Vaste baan: Backend Developer / SCRUM Master Scrum HBO WO €3.800 - €6.000 Deze werkgever is een innovatief bedrijf met enthousiaste mensen die jarenlang ervaring hebben met het ontwikkelen internet- en intranetoplossingen. Wij houden van korte lijnen en open en eerlijke communicatie. Wij zetten graag onze jarenlange ervaring in om perfect werkende oplossingen te ontwikkelen. Wij ondersteunen dienstverlenende organisaties bij het ontwikkelen en realiseren van een effectief, adaptief communicatieplatform. Je ontwikkelt met ons de meest

Bekijk vacature »

Ontwikkelaar Identity & Access Management

Dit ga je doen Als Identity & Access Management Ontwikkelaar zorg jij er voor dat studenten, medewerkers en docenten de juiste benodigdheden op het juiste moment kunnen gebruiken; Het juist opslaan van onderzoeksdata en het openbaar beschikbaar stellen van publicaties (Open Access); Studenten, collega's en wetenschappers ondersteunen; Agile en Scrum werken; Technisch Applicatiebeheer; Ontwikkelen in One Identity Manager en VB.NET. Hier ga je werken Als Ontwikkelaar kom je terecht in een hecht team die zich richt op wetenschappelijke informatie en ICT. Jij bent degene die er voor zorgt dat alle informatie, uit diverse onderzoeken, bij de juiste personen terecht komt.

Bekijk vacature »

Frontend Developer - Leeuwarden

Als Frontend Developer bouw jij mee aan het onderwijs van de toekomst! In een scrum team werken met jonge en enthousiaste collega’s, moderne technieken, ruimte voor eigen ontwikkeling en op een proactieve wijze kunnen meewerken aan innovatie binnen het onderwijs. Magister is het state-of-the-art softwarepakket dat scholen in het voortgezet onderwijs op alle fronten ontzorgt. Van leerlingenadministratie tot het ondersteunen van individuele leerlijnen, van toegang tot digitaal lesmateriaal tot het plannen van het lesrooster. In de Magister app bedient Magister ruim 2,5 miljoen gebruikers waarvan, dagelijks meer dan 600.000 unieke. Hiermee is Magister de absolute marktleider in onderwijsland. Wat vragen

Bekijk vacature »

Als PHP developer (Symfony) bijdragen aan betere z

Functie Als Medior/Senior PHP developer wordt er een mate van zelfstandigheid verwacht, maar ook dat je goed in een team kunt opereren waar kennis wordt gedeeld en er bijvoorbeeld codereviews plaatsvinden. Kwaliteit staat voorop, mede hierom werken ze bijvoorbeeld zonder echte deadlines in hun sprints. De SaaS-applicatie wordt volledig ontwikkeld in PHP en Symfony. De module bestaat uit een stuk informatie verrijking en intelligentie wat resulteert in een medische check. De logica wordt daarom in de code geïntrigeerd. Je bent onder andere bezig met complexe databases waar meer dan 80.000 medicijnen op verschillende niveaus in staan, die maandelijks worden geactualiseerd.

Bekijk vacature »

SAP Integratie Ontwikkelaar

Ben jij ambitieus in de verdere ontwikkeling van SAP binnen HANOS, en heb je kennis van SAP PI, CPI (SAP integration suite) en of andere middleware tooling? Dan ben jij mogelijk onze nieuwe SAP Integratie (middleware) Ontwikkelaar! Lees snel verder en solliciteer! Wat ga je doen? Als SAP Financieel Consultant ben je, als deel van een gedreven team van interne SAP consultants, de schakel tussen de gebruikersorganisatie en ICT. Je draagt proactief bij aan een optimale aansluiting van de SAP-functionaliteit (een applicatielandschap met o.a. Suite on HANA, Fiori, Hybris, C4C en BO), op de bedrijfsprocessen. Verder ondersteun je de HANOS

Bekijk vacature »

Randstad B.V.- Freelance Senior Fullstack Develope

Startdatum: 01.05.2023 Richttarief: € 75,00 - €85,00 Duur van de opdracht: 1 jaar Uren per week: 40 Werkmodel: Hybride, dinsdag en donderdag aanwezig op kantoor in Diemen en meer wanneer dit nodig is. Functieomschrijving: De ideale kandidaat gaat onderdeel uitmaken van een junior team binnen het foundation domein. Vanuit het foundation domein werkt dit team samen met andere foundation teams en teams uit het online domein (professionals B2B en B2C) voor het bouwen en integreren van HRM functionaliteiten (verlof en benefits) in de persoonlijke portal van Interim Professionals. Er is meer backend werk dan frontend, maar kandidaat moet beiden leuk

Bekijk vacature »

Android developer

De functie Schiphol is een plek om te reizen, te verblijven en te werken. Door middel van data en technologie richten we op al deze gebieden het leef- en werkklimaat optimaal in en zorgen we voor een slimmere en efficiëntere operatie. Wij ontwikkelen nieuwe producten en diensten vanuit de wensen en behoeften van onze klanten, voorspellen passagier flows en testen digitale oplossingen om rijen en andere pijnpunten in het proces te verminderen. Met slimme feedback van sensortechnologie maken we zelfs data van toiletten en stoelen inzichtelijk en bruikbaar. Het Commercial Platform bestaat uit multidisciplinaire teams met een end-2-end verantwoordelijkheid voor

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 »

Software Developer PHP JavaScript Python HBO SQL

Samengevat: Wij zijn een softwarebedrijf voor Autodealers. Ben jij een Medior of Senior Software Developer? Heb je ervaring met PHP, JavaScript of Python? Vaste baan: Java.Developer Software HBO €3.000 - €5.200 Bij ons op de werkvloer is er een positieve en informele sfeer. Naast een goede begeleiding en een enthousiaste klantenkring biedt deze werkgever een prettige omgeving met zeer afwisselende werkzaamheden. Houd jij van aanpakken en denk je dat je deze uitdaging aankunt? Dan zoeken wij jou! Zij werken voor grote klanten. Zij doen omvangrijke projecten die we bij deze werkgever op kantoor realiseren (geen detachering). Zij werken met state-of-the-art

Bekijk vacature »

C# Developer

Dit ga je doen De requirements in kaart brengen van de klant; Implementeren van functionele en technische specificaties bij opdrachtgevers; Oplossen van bugs; Meewerken aan maatwerksoftware voor nieuwe opdrachtgevers; Het testen en uitleveren van nieuwe functionaliteiten naar de acceptatie en productieomgeving De database ontwikkelen en onderhouden; Hier ga je werken Onze klant is gevestigd in het westen van Nederland en is gespecialiseerd in het ontwikkelen van software voor de levensmiddelen industrie. De software die het team maakt optimaliseert voornamelijk de administratieve processen, maakt deze meetbaar en zorgt ervoor dat de data zo goed mogelijk gebruikt kan worden. Binnen een van

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

steen

02/01/2010 23:58:00
Quote Anchor link
Beste PHP'ers,

Ik heb van de volgende site een MVC-pattern (of wat het ook precies moet voorstellen gedownload):
http://www.phpro.org/tutorials/Model-View-Controller-MVC.html
(het .tar.gz bestand bevat alleen geen .htaccess, de code staat op de site)

Nu wil ik dit uitbreiden met een database, maar wil ik de sql scheiden uit de controller (model). Hoe moet nu bijvoorbeeld een indexModel.class.php er uit zien?
 
PHP hulp

PHP hulp

27/05/2026 08:04:25
 
Steen

steen

04/01/2010 14:43:00
Quote Anchor link
bump
 
Bas IJzelendoorn

Bas IJzelendoorn

04/01/2010 15:00:00
Quote Anchor link
Vind je vraag onduidelijk. en betreft

Quote:
Hoe moet nu bijvoorbeeld een indexModel.class.php er uit zien?
[/qoute]


hoort dit niet onder aanvragen of vacatures. Je moet zelf wel met een opzetje anders komen.
Gewijzigd op 01/01/1970 01:00:00 door Bas IJzelendoorn
 
Jelmer -

Jelmer -

04/01/2010 15:20:00
Quote Anchor link
Je model is meer een naam om een deel van je code aan te geven. Alle code die je gebruikt om in essentie te doen wat je wilt doen is je model. Alle code die daaromheen nodig is, zoals het afhandelen van forms, het genereren van queries, het omzetten van forumposts in HTML, is dat niet. Je model is je business logic, en eigenlijk dat wat je hele applicatie zou zijn als je direct PHP code zou kunnen lezen en uitvoeren en geen website eromheen nodig zou hebben.

Dus je hebt geen indexModel, omdat index een onderdeel is van het weergeven, en niet van dat wat je wilt weergeven.

Bij een gastenboek bestaat je model bijvoorbeeld uit een class Bericht, en een class Berichten_Store. Dit zijn de enige twee classes die beschrijven hoe daadwerkelijk berichten in het gastenboek komen, en hoe die berichten eruit zien.

Dus de hamvraag is meer: Wat wil je maken?
 
Steen

steen

04/01/2010 15:22:00
Quote Anchor link
Nee dit is écht geen vacature =). Ik zou graag willen weten hoe ik zo'n pattern uit zou moeten breiden. Er is alleen een database class gegeven, maar niet het gebruik daarvan. Nu zou ik de sql-code gescheiden willen hebben (een Model), maar ik weet niet precies hoe ik dit aan zou moeten pakken.
 
Henk PHP

Henk PHP

04/01/2010 17:21:00
Quote Anchor link
@Jelmer, in die classes Bericht en Berichten_Store kunnen wel queries zitten toch? ookal zijn ze het model?
 
Mr D

Mr D

04/01/2010 17:28:00
Quote Anchor link
De queries naar je database voer je op een plek uit, de queries voor het opslaan en ophalen van berichten voer je allemaal uit in je Berichten_Store. Als je Berichten_Store bijvoorbeeld een method getAll() heeft voert deze method de query uit en returnt vervolgens en ArrayObject of een gewone array van Bericht objecten
Gewijzigd op 01/01/1970 01:00:00 door Mr D
 
Henk PHP

Henk PHP

04/01/2010 18:07:00
Quote Anchor link
'Mr:
De queries naar je database voer je op een plek uit, de queries voor het opslaan en ophalen van berichten voer je allemaal uit in je Berichten_Store. Als je Berichten_Store bijvoorbeeld een method getAll() heeft voert deze method de query uit en returnt vervolgens en ArrayObject of een gewone array van Bericht objecten

Maar de Berichten_Store kan dus wel een query (naar de database) uitvoeren?
 
Jelmer -

Jelmer -

04/01/2010 20:41:00
Quote Anchor link
Ja. Bericht kan niet een query uitvoeren, want dat is voor bericht niet een verantwoordelijkheid. Berichten_Store heeft een database-verbinding nodig om te kunnen werken, want berichten opslaan en ophalen is wel zijn verantwoordelijkheid.
 
Steen

steen

04/01/2010 21:08:00
Quote Anchor link
Hoe zou ik dat script verder moeten gebruiken wanneer ik bijvoorbeeld, het simpelste voorbeeld dat er zo'n beetje bestaat, een nieuwssysteem wil maken?
 
Jelmer -

Jelmer -

04/01/2010 21:15:00
Quote Anchor link
Kijk even in de OOP categorie van dit forum (zolang die nog bestaat) want daar staan tal van topics in waarin in en anderen uitgebreid voorbeelden geven. Zeker van de afgelopen twee weken.
 
Steen

steen

04/01/2010 21:21:00
Quote Anchor link
Dat is voor mij een beetje het probleem, als er zoals die link bovenaan een duidelijke basis (met een voorbeeldje voor een nieuwssysteempje of mini-blog ofzo) zou zijn zou ik dit verder kunnen uitwerken voor grotere systemen. Alleen nu heb ik die link, alleen is het model niet compleet. Zou iemand misschien de moeite kunnen/willen nemen om dat script verder te verwerken (niet compleet, maar één of twee functies ofzo) zodat het mij duidelijk wordt. Dan zal ik het complete systeem aan de libary toevoegen als het klaar is.
 
Jelmer -

Jelmer -

04/01/2010 22:26:00
Quote Anchor link
Je kan heel simpel beginnen. Je maakt in je database een tabel met nieuwsberichten aan en zet er vast wat nieuwsberichten in.

Vervolgens maak je de class die een nieuwsbericht representeert. Eigenlijk is dit niet veel meer dan een veredelde array waarvan alle keys alvast bekend zijn :) Maar dit is programmeren in objecten, en arrays gebruik je dan alleen nog om lijsten mee te schrijven ;)
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
class News_Item
{
    public $id;
    
    public $title;
    
    public $content;
    
    public $pubDate;
}

?>

De properties komen eigenlijk direct overeen met de kolommen van je database-tabel.

Mooi, nu heb je de records in de database, en het vormpje waarin die records gegoten moeten worden. Daarvoor de News_Store:
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
<?php
class News_Store
{
    protected $pdo;
    
    public function __construct(PDO $pdo)
    {

        $this->pdo = $pdo;
    }

    
    public function findAll()
    {

        $stmt = $this->pdo->query('SELECT id, title, content, pubDate FROM news_items');
        
        // dit zorgt ervoor dat je News_Item objecten terugkrijgt
        // van PDO, compleet ingevuld en wel. Later zal dit wss
        // niet meer kunnen omdat je News_Item class ingewikkelder
        // wordt, maar voor nu is het heerlijk kort :)

        $stmt->setFetchMode(PDO::FETCH_CLASS, 'News_Item');
        
        return $stmt->fetchAll();
    }

    
    public function findById($id)
    {

        $stmt = $this->pdo->prepare('SELECT id, title, content, pubDate FROM news_items WHERE id = :id');
        
        $stmt->bindParam(':id', $id);
        
        $stmt->setFetchMode(PDO::FETCH_CLASS, 'News_Item');
        
        return $stmt->fetch();
    }
}

?>

Nu kan je je controller vullen. Bijvoorbeeld
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
<?php

// (wat een stomme naamgeving, classes met een kleine letter
// beginnen? Dat is zooo not done!)

class NewsController extends baseController
{
    public function __construct($register)
    {

        parent::__construct($register);
        
        $this->news_store = new News_Store($this->register->db);
    }


    public function index()
    {

        $news_items = $this->news_store->findAll();
        
        $this->register->template->news_items = $news_items;
        
        $this->register->template->show('news_index');
    }

    
    public function item()
    {

        $news_item = $this->news_store->findById($_GET['id']);
        
        $this->register->template->news_item = $news_item;
        
        $this->register->template->show('news_item');
    }
}

?>


Snapie?
 
Mr D

Mr D

05/01/2010 12:47:00
Quote Anchor link
@Jelmer mooi voorbeeldje. Maar om het even wat moeilijker te maken ;). Wat als je ook de mogelijkheid hebt om ook bij elk nieuwsbericht reacties te plaatsen. En je wilt bijvoorbeeld bij elk nieuwsbericht alleen de laatste 5 reacties tonen.

In je template wil je dan waarschijnlijk zo iets doen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? foreach ($news_item->getLatestComments(5) as $comment): ?>

hier wat html
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? endforeach ?>


En dan voor je News_Item een method setCommentStore(Comment_Store $store) zodat elk nieuwsbericht zelf zijn laatste reacties kan ophalen via de Comment_Store. Dit is zo ongeveer de manier waarop ik dit zou doen. Maar ik ben benieuwd of er betere manieren zijn en hoe jij dit oplost? :)
 
Jelmer -

Jelmer -

05/01/2010 23:47:00
Quote Anchor link
Lijkt mij een prima manier :)

Ik denk dat je inderdaad de News_Item wel kan koppelen aan de comments. Mocht je dat niet willen, dan kan je altijd nog iets doen a la $comment_store->getLatestForNewsItem($news_item, 5). Want comments zijn wel afhankelijk van nieuws, maar andersom niet.
 



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.