Vraag over wat beter te gebruiken is.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pascal Schuffelers

Pascal Schuffelers

23/09/2018 09:22:48
Quote Anchor link
Ik lees zowel hier als op google diverse methodes om je webpagina's te schrijven.
Nu ben ik 2 dagen al iets aan het lezen , wat hier ook al vaak is genoemd, over CRUD.

Is deze methode nieuwer, sneller (data uitlezen), veiliger , fijner ......... ? dat hier veel mensen over praten?
Wat is de achter liggende gedachte om dit te gebruiken?
 
PHP hulp

PHP hulp

25/04/2019 20:52:58
Honeypot
 
Frank Nietbelangrijk

Frank Nietbelangrijk

23/09/2018 09:39:25
Quote Anchor link
Crud is gewoon een bekende afkorting. Zoals Ariën al aangaf in een vorig topic staat het gewoon voor Create, read, update en delete. Dit zijn vier basis acties die je vaak nodig hebt om een gebruiker data in een database tabel te laten bewerken. Een praktijk voorbeeldje:

Je wilt voor de administrator de mogelijkheid inbouwen om de "klanten" tabel te bewerken.
Hiervoor maak je vier tot vijf pagina's (of liever acties)

1. index --> een overzicht van alle klanten met eventuele filters en pagination
2. new --> het aanmaken van een nieuwe klant
3. edit --> het bewerken van de gegevens van een klant
4. show --> uitgebreid overzicht van een klant
5. delete --> een klant verwijderen uit de database (of deactiveren door een kolom 'deleted' op true te zetten)

Als je later nou met een framework gaat werken dan zullen deze acties vaak in één class staan. Er wordt dan ook wel gesproken over een CRUDController.
 
Pascal Schuffelers

Pascal Schuffelers

23/09/2018 09:54:44
Quote Anchor link
Snap hem, nu stel je maakt gebruikt van bovenstaande in een admin sectie.
Daar wil je een menu hebben die in elke pagina wat maar opgeroepen word gebruiken, kun je dan het beste het menu apart maken en includen in je te gebruiken pagina's of is het beter met een inline frame te doen?
Lijkt mij, als ik op basis van mijn gelezen theorie , dit beter te includen , dus je menu apart te maken toch?
 
- Ariën -
Beheerder

- Ariën -

23/09/2018 10:17:02
Quote Anchor link
(i)frames moet je alleen gebruiken als het nodig is. Je kan met PHP prima include gebruiken om je menu aan je Admin paneel toe te voegen.

Dit werkt wel anders dan een iframe, want je embed hiermee geen integrale HTML-websites, maar je voegt enkel de inhoud van een ander bestand in.
 
Rob Doemaarwat

Rob Doemaarwat

23/09/2018 11:03:14
Quote Anchor link
Het "CRUD" gedeelte zit meer in je (basis) controller. De CrudController waar Frank het over heeft is dan je basis class. deze basis doet z'n werk op een te geven tabel, met op te geven veldnamen (allemaal variabel dus). Voor je klantenbeheer maak je dan een afgeleide, waarbij je ook de tabelnaam ("klanten") en de velden ("naam", "adres", enz) specificeert (en evt. voorwaarden waar deze aan moeten voldoen, denk aan wel/niet verplicht, max. aantal karakters, enz), en bijvoorbeeld nog extra code (controles) die uitgevoerd moeten worden bij de bepaalde acties (bij een delete eerst controleren of er geen openstaande facturen zijn).

Dan heb je dus een controller, de logica. Je menu is meer iets wat aan de view kant zit (de weergave - in een MVC patroon), en heeft dus niet zo heel veel met de (CRUD) controller van doen.

(dit is misschien een beetje teveel info in 1x, roep maar waar je strand)
 
Frank Nietbelangrijk

Frank Nietbelangrijk

23/09/2018 21:28:30
Quote Anchor link
Iframes moet je direct helemaal vergeten. En verstandig en meest praktisch is om het herhalen van code (maar ook HTML) te vermijden. Je zou dus een menu dat op meerdere pagina's weergegeven wordt maar één keer hoeven te schrijven en dat ook niet meer te knippen en te plakken. Eigenlijk schuiven we met de vragen die je stelt telkens een beetje meer richting de vraag hoe je het beste je website kunt opbouwen. Er zijn eigenlijk een paar interessante termen te benoemen waar ik meer waarde aan hecht dan aan de CRUD term:

- Filter input escape output

- Object oriented programming (OOP). Schrijf classes die allen een enkele taak te doen hebben.

- separation of concerns. Houdt onder andere php code, HTML en database queries van elkaar gescheiden. Deel je PHP code op in logische blokken.

- single point of entry. Alle request naar één en dezelfde php pagina laten gaan om van daar uit te starten en dan aan de hand van de request uri te bepalen welke acties we willen ondernemen.

- templates en template engines. Zet je HTML in aparte template bestanden en laat een template engine deze verwerken tot je uiteindelijke output.

- namespaces. Leer over Full qualified classnames en namespaces.

- (PSR-4) Autoloader automatische includes, veel makkelijker dan al die include regels schrijven

- composer tool om handige php libraries te installeren en te updaten
Gewijzigd op 23/09/2018 21:34:58 door Frank Nietbelangrijk
 



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.