• Login
  • Register
  • Zoek
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • More Options

ICTscripters

Dé plek voor IT

Dé plek voor IT

Login

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • Op zoek naar de legends

    Syntax 5 januari 2026 om 13:50
  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Syntax 4 januari 2026 om 10:58
  • Developer Gezocht

    K.Rens 30 december 2025 om 12:32
  • [FREE] WeFact Hosting module

    Jeroen.G 13 oktober 2025 om 14:09
  • Help testers nodig voor android app Urgent

    urgentotservices 26 september 2025 om 10:21
  • Versio vervanger

    Jeroen.G 25 augustus 2025 om 15:56
  • Afspraken systeem met planbeperking

    Lijno 1 augustus 2025 om 23:04
  • Partner Gezocht om meerdere NFT Collecties op Open Sea te Plaatsen

    NFT Art Designer 1 maart 2025 om 14:08

Marktplaats

  • 321 Nieuwe Domeinnamen December 2025

    shiga 1 januari 2026 om 10:26
  • Meerdere mafia game template te koop

    Syntax 28 december 2025 om 21:20
  • Van een pixelige afbeelding naar een strakke, moderne website

    Syntax 21 december 2025 om 17:05

mysqli probleem

  • freek
  • 21 februari 2018 om 10:19
  • FangorN
    Professional
    Ontvangen Reacties
    196
    Articles
    2
    Berichten
    737
    • 22 februari 2018 om 16:52
    • #21

    @mugaru dit is mogelijk best een handige tool voor het werk wat het doet, maar lost andere (bijvoorbeeld de eerder genoemde) problemen niet op (denk aan algehele opbouw en werkwijze van pagina's / stukken code).

    Daarnaast bega je in zekere zin dezelfde "fout" opnieuw: vanaf PHP 7 is de oorspronkelijke MySQL-driver verdwenen, en hiermee alle mysql_* functies. Het is logisch dat als je dan met dezelfde codebase verder wilt dat deze functies vervangen moeten worden. Maar wat doe je dan als je deze tool gebruikt? Je verandert daarmee alle instanties van mysql_* naar een mysqli_* variant, mogelijk met extra of verwisselde parameters.

    Maar wat je hier wederom doet is hardcoding van de databaseoplossing. Dit zal natuurlijk altijd in zekere mate het geval zijn omdat en zolang je rechtstreeks (mogelijk database-specifieke) SQL in je code zet, en dus geen gebruik maakt van een Database Abstraction Layer (DAL). Toch valt er iets te zeggen om -op zijn minst- een Database Access Abstraction Layer (DAAL) te gebruiken. Want wie zegt dat er op den duur niet opnieuw dingen veranderen in MySQL-land?

    Het voordeel hiervan is een -weliswaar gedeeltelijke- ontkoppeling van specifieke database-gerelateerde functies en methoden zodat wanneer (niet als maar wanneer :)) er iets wijzigt, je -in het ideale geval uiteraard- enkel de implementatie van deze code hoeft te veranderen, en verder inhoudelijk geen letter applicatiecode hoeft aan te passen.

    Een ander voordeel is dat je dingen kunt vereenvoudigen en opdrachten kunt bundelen zodat je gemakkelijker kunt werken met de desbetreffende database. Dit bespaart je dus op den duur ook tijd.

    Wat ik in wezen voorstel is dat je, en eigenlijk iedereen die van plan is om met MySQL te werken, er verstandig aan doet om een soort van wrapper om je database-interactie te schrijven (maar misschien nog beter is een DAL uiteraard, omdat je daarmee dit helemaal loskoppelt van het gebruik. Dit is wel een tradeoff, het introduceert overhead, abstractie en complexiteit, en de vraag is of het dat waard is).

    Als je uitsluitend MySQL gebruikt is MySQLi eigenlijk de beste driver, omdat PDO niet geschreven is voor MySQL, daarvoor is de PDO_MYSQL driver, en daar zit een aanzienlijke brok configuratie die je goed onder de knie moet hebben voor foutvrije operatie. De vraag is ook, wanneer je PDO gebruikt, of je deze abstractie ooit echt nodig hebt. Als je nooit van plan bent om te schakelen van database in een applicatie (ik heb hier eigenlijk nog nooit van gehoord in applicaties) dan kun je net zo goed MySQLi gebruiken omdat deze expliciet is geschreven en geoptimaliseerd voor gebruik van MySQL.

    Deze wrapper dient uiteraard niet triviaal te zijn, simpelweg een soort van MyDB class bakken waarbij je vervolgens direct met een mysqli-object kunt werken is te kort door de bocht - dit stuk code moet echt werk uit handen nemen en daardoor een zekere meerwaarde creëren. Met dus als bijkomend voordeel dat je de omgang met je MySQL-database in afzondering van de rest van je code kunt behandelen.

    Het belangrijkste hier is eigenlijk dat je hardcoding (zoveel mogelijk) voorkomt en niet in herhaling treedt met wat in wezen al eerder misging.

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!

Maak een account aan Login

ICT Nieuws

  • Fijne feestdagen

    tcbhome 28 december 2025 om 13:55
  • Kritieke update voor Really Simple Security-plug-in

    K.Rens 16 november 2024 om 16:12
  • ING Nederland streeft naar ondersteuning van Google Pay tegen eind februari

    K.Rens 2 november 2024 om 16:09

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37

Gebruikers die dit topic bekijken

  • 1 Gasten
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacy Policy
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design