MVC PDO

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 »

Lead Java Developer

Dit ga je doen Je taken bestaan onder andere uit: Het aansturen van een development team bestaande uit 8 collega's op technisch maar ook HR gebied; Het maken van strategische keuzes omtrent de (nieuw)bouw van deze applicatie; Het maken van technische ontwerpen; Hands-on mee ontwikkelen met het team (met o.a. Java, Spring, Angular, REST); Reviewen van code en feedback geven op collega developers. Hier ga je werken Als Lead Software Developer ben je verantwoordelijk voor één van de vier Agile Java ontwikkelteams die bouwen aan technologie die duizenden instanties wereldwijd verbindt. Dit Agile team, data Jira en Confluence gebruikt en

Bekijk vacature »

Software Developer / .NET / Azure

Dit ga je doen Als Lead .NET Software Developer zal je je bezig houden met: Het vertalen van bedrijfswensen naar een technische roadmap; Uitwerken van nieuwe architectuur / designs; Het team aansturen en motiveren; Toezien op de kwaliteit van de code; Mee ontwikkelen van nieuwe features en applicaties. Hier ga je werken Deze organisatie is op dit momenteel marktleider in het ontwikkelen van productielijnen voor de voedselindustrie en heeft een wereldwijd klantnetwerk. Binnen deze organisatie is het team van software developers dagelijks bezig met het ontwikkelen van maatwerk oplossingen om alle productiemachines aan te sturen, maar ook bedrijf kritische applicaties

Bekijk vacature »

Python (Django) developer - Remote in The Netherla

Functie Together with your team, consisting of a senior, 2 mediors and one junior developer, you will work on their software in an Agile-based approach. You have an eye for quality, risk, and customer interest. Communication with your colleagues and, where necessary, with customers, plays an important role in achieving a successful result. As a person, you are smart, get things done, and are result-oriented. There is a lot of independence within the development team, apart from the stand-up (10:00 am) and occasional pair-programming sessions. Techniques they use include Python, Django, MySQL, Mercurial, Ubuntu Linux, Nginx. In terms of front-end

Bekijk vacature »

Lead C++ Developer

De rol van Lead C++ Developer Als Lead C++ developer bij KUBUS word je verantwoordelijk voor het implementatie design van requirements en de software architectuur van de desktop applicaties van BIMcollab, ons platform voor 3D model-validatie en issue-management bedoeld om de kwaliteit van 3D design-modellen voor gebouwen te verbeteren. Betere 3D modellen leiden tot betere gebouwen, dus zo draag je bij aan verduurzaming van de gebouwde omgeving met slimmer gebruik van materialen, minder verspilling en energie-efficiënte gebouwen. Een goede gebruikerservaring staat bij ons hoog in het vaandel; we gaan in onze ontwikkeling voor innovatie en kwaliteit. In je rol als

Bekijk vacature »

Belastingdienst - Freelance Senior Applicatie ontw

Startdatum: 01.06.2023 Richttarief: €65,00 - €75,00 Duur van de opdracht: 6 maanden Uren per week: 36 Taal: Nederlands vereist! Gelieve in het Nederlands te solliciteren. Functieomschrijving: We verwachten van je, dat je: Brede ervaring hebt als JAVA-ontwikkelaar; Ervaring hebt met Agile/Scrum-werken en je thuis voelt in een Agile omgeving; Een aandeel levert aan het scrumproces en in de SAFe-releasetrain; Zelfstandig werkt in een scrumteam en intensief de samenwerking op zoekt met je directe collega’s en je omgeving; Ervaring meebrengt met het schattten en inplannen van taken tot en met het testen en demonstreren van de opgeleverde functionaliteit; Collega’s in je

Bekijk vacature »

Senior Front-end developer

Functie Als front-end developer ga je aan de slag voor verschillende klanten, waarbij veel rekening wordt gehouden met waar je woont (dit is altijd binnen het uur), en word er gezocht naar een organisatie die past bij jou. Zowel qua persoonlijke ambities als de technische aansluiting. De opdrachten duren gemiddeld 1 à 2 jaar maar dit hangt ook af van je wensen. Je werkt in een teamverband voor een klant en zult nauw samenwerken met zowel eigen collega’s als die bij de klant werkzaam zijn. Ze zijn op zoek naar een technische front-end developer die ruime ervaring heeft in één

Bekijk vacature »

Junior Developer Low-code

Dit ga je doen Low-code ontwikkeling van software voor landelijk bekende organisaties; Samenwerken in een team van 10 collega's; Opleveren van mooie eindproducten, middels de Agile methodiek; Direct contact met de eindklant over de gewenste oplossingen. Hier ga je werken Als startende IT-professional 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 discreet en veilig verwerkt worden. De processen die hierbij horen worden door het IT team vormgegeven.

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 »

Junior Front end developer

Functie Als Front end developer binnen onze organisatie ga jij je bezig houden met het bouwen van de user experience van de webapplicaties. Je bent verantwoordelijk voor het vertalen van concepten, briefings en designs naar werkende functionaliteit. Hierbij zorg je ervoor dat applicaties betrouwbaar, veilig en toekomstbestendig zijn en een goede architectuur hebben en behouden. Verder denk je actief na- en mee over nieuwe ontwikkelingen en functionaliteiten om zo elke dag de klantervaring weer te verbeteren. Dit doe je natuurlijk niet alleen maar in een development team. Het team bedraagt momenteel 4 man bestaande uit 2 devops engineers en 2

Bekijk vacature »

Senior Front-end Developer

Wordt jij de nieuwe Front end specialist / developer? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. 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 binnen als

Bekijk vacature »

PHP Back-end Developer

Vacature details Vakgebied: Software/IT Opleiding: Starter Werklocatie: Nijmegen Vacature ID: 13633 Introductie OUr client develop websites, webshops, and digital environments that are used by many visitors daily. They are seeking an experienced PHP-Developer Back-end to join the team. If you're looking for a position where you can tackle challenging, innovative, and multidisciplinary ICT projects and make a difference, this vacancy might be for you! Functieomschrijving As a PHP developer, you'll develop websites and digital environments used by many visitors daily. You'll work as a back-end developer and want to continuously develop in this field. You can work independently and efficiently,

Bekijk vacature »

Junior .NET Developer

Dit ga je doen Ontwikkelprocessen verder optimaliseren en verder ontwikkelen met C#; CI/CD-pipelines automatiseren; Ontwikkelen van herbruikbare componenten; Front-end pagina's gebruiksvriendelijk maken. Hier ga je werken Als junior .NET Developer kom je terecht binnen een grote en internationale organisatie. Zij streven naar een positieve impact op de mens, milieu en maatschappij. Het bedrijf is oorspronkelijk een familiebedrijf en werkt aan de productie van hoogwaardige en technische systemen voor de gezondheidszorg. Momenteel willen zij betere ontwikkelprocessen creëren op internationaal gebied en staat kwaliteit en veiligheid voor hun op nummer 1! Als junior .NET Developer werk je aan het ontwikkelen van verbeterde

Bekijk vacature »

.NET Developer

Functie omschrijving In deze functie ga je werken als C# Developer. Jij gaat aan de slag met de volgende taken: Maatwerk software bouwen; Huidige softwareprojecten verder uitbouwen en optimaliseren; Ideeën van de klant omzetten naar handige oplossingen en tools; Bovenstaande doe je middels de Microsoft- stack: C#, ASP.NET en MVC/ Entity Framework. Ben je net afgestudeerd aan een HBO opleiding Informatica, aarzel dan niet om te solliciteren. Dit is namelijk de ideale startersfunctie! Bedrijfsprofiel Deze organisatie is gevestigd in de regio van Boxtel. Het is van oorsprong een familiebedrijf, die gestart zijn met het bouwen van websites. Dit is door

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 »
Mark Beets

Mark Beets

07/11/2008 13:19:00
Quote Anchor link
klein vraagje over PDO,

Ben het MVC pattern gaan gebruiken. Vroeger gebruikte ik altijd een database class(Na mijn idee veel handiger werkte, niet sneller). Nu gebruik ik PDO statments in het model.

Opbouw
Model > class member
Data > MyPDO extends PDO

De voorbeelden die ik kan vinden over bijvoorbeeld een INSERT vind ik onhandig. Zie overal dat de gehele Query van elke tabel wordt uitgeschreven, in dit geval: in class member.

ik zou graag dit doen in mijn member class:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$PDO->insert('tableName', $array) ;


Dien ik die functies in de class MyPDO te schrijven?
Biedt PDO hier al oplossingen voor?
Moet ik dit wel willen?
Heeft iemand een mooi MyPDO class?

Zou het graag van jullie horen.
Alvast bedankt
Gewijzigd op 01/01/1970 01:00:00 door Mark Beets
 
PHP hulp

PHP hulp

25/12/2024 15:05:26
 
Lode

Lode

07/11/2008 14:56:00
Quote Anchor link
Uiteindelijk zal er toch een query moeten komen om naar de database te sturen.
Hiervoor kan je inderdaad allerlei wrappers maken.

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
<?php
class Lode_Database_Select{
     public function __construct($fields = '*'){

     }

     public function from($table){
          
          return $this;
     }

     public function where(array $conditions = array()){
          
           return $this;
     }

     public function __toString(){

     }
}

////
$sql = new Lode_Database_Select();
$sql->from('tabel')->where('id = 1');

echo $sql;
?>


Bijvoorbeeld (kan een stuk beter)

Daarnaast heb je ook nog dingen als ActiveRecord pattern en packages die dit soort dingen kunnen als propel etc.
Je kan het zo gek maken als je zelf wilt natuurlijk, maar de bottomline is dat je toch een query moet maken. Met classes kan je proberen een soort DAL (Database Abstraction Layer) te maken.

Uit je bericht kan ik alleen niet echt opmaken wat je precies wilt.
 
Mark Beets

Mark Beets

07/11/2008 15:43:00
Quote Anchor link
Bedankt voor je uitleg.

Wat ik bedoel/wil: Zou geen query willen zien in de klasses van mijn model.
Daar zou ik alleen willen zeggen welke TABLE en welke ARRAY ik wil INSERTe (voor DELETE UPDATE is dat natuurlijk weer anders, hou het even bij INSERT)

Dat die queries gemaakt moeten worden snap ik, maar wil die queries niet voor elke tabel en of project apart maken, wil ze laten genereren, zodat ik het overal kan gebruiken(niet me queries moet aan passen als er veld in DB bij komt of af gaat).

Als ik kijk naar voorbeelden van: http://www.phpro.org/tutorials/Introduction-to-PHP-PDO.html.
Dan krijg ik van TRY tot CATCH in mijn model.

Daarom dacht ik, in een klasse van het model praat ik met MyPDO(zoals de code in mijn eerste bericht, MyPDO zie ik als data layer ), MyPDO genereert de queries en geeft resultaat of error terug. Zo krijg je in MyPDO de gehele query generator, houdt je model ook stuk overzichtelijker. MyPDO heeft extends PDO.

Of is dat rare gedachte?
Zijn er frameworks van DAL?
Gewijzigd op 01/01/1970 01:00:00 door Mark Beets
 
Lode

Lode

07/11/2008 16:37:00
Quote Anchor link
Alle grote frameworks hebben een soort DAL of ActiveRecord pattern volgens mij.
DAL is meer een vakterm.

Bij PDO ontkom je niet aan een exception handler omdat PDO exceptions dwars door een standaard try / catch heen gaan. Dit kan je natuurlijk wel weer in je classes afhandelen.

Al eens gekeken naar bijvoorbeeld Zend Frameworks database classes?
Die heeft ook een PDO variant.

Persoonlijk houd ik helemaal niet van PDO overigens!
 
Jelmer -

Jelmer -

08/11/2008 11:17:00
Quote Anchor link
Lode schreef op 07.11.2008 16:37:
Bij PDO ontkom je niet aan een exception handler omdat PDO exceptions dwars door een standaard try / catch heen gaan. Dit kan je natuurlijk wel weer in je classes afhandelen.

In mijn ervaring is PDOException een uitbreiding van Exception, en wordt hij (dus) ook gewoon in een try/catch-blok opgevangen dat Exception opvangen wil.

Misschien ter inspiratie, je kan ook proberen zoveel mogelijk alle SQL code uit je programma te verbergen, dus nog abstracter gaan dan het voorbeeldje van Lode. Geen from, of where, of velden selecteren, maar puur condities opgeven. Voorbeeldje:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$bedrijven
= IHG_Record::findRecords('Bedrijf', array(
    'url' => $website,
    'naam' => array('bedrijf a', 'bedrijf b')
));


// Doet intern iets in te trant van
SELECT id, naam, url FROM bedrijven WHERE url = $website AND naam IN(bedrijf a, bedrijf b)

?>

en dan is $bedrijven een "array" met allemaal instanties van de klasse Bedrijf. (Naja, 2 instanties, een bedrijf met de naam 'bedrijf a', en eentje met, naja, kan je wel raden ;) )

Het nadeel is dat je een groot deel van de kracht van SQL verliest. Dit is deels te compenseren door met VIEWS in je database de complexe queries om te vormen tot virtuele tabellen waar je dan weer simpele statements, zoals die gegenereerd wordt uit het stukje code hierboven, op los kan laten. Het voordeel is dat je bijna alle SQL code van je applicatie verplaatst naar de database en naar de methods die de query uit de array die je aan findRecords meegeeft genereert. En dat is weer makkelijk mocht je ooit beslissen een andere database (of een geheel ander soort database, MapReduce implementeren hiermee is ook redelijk gemakkelijk) te gaan gebruiken.

... en het staat leuk :P

ps: een 'experimentele implementatie' hiervan.
 



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.