• 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

  • Beta-testers gezocht voor Crypto-oefenplatform

    Syntax 29 januari 2026 om 16:11
  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Syntax 19 januari 2026 om 09:34
  • Developer Gezocht

    Mikevdk 10 januari 2026 om 18:57
  • Op zoek naar de legends

    Syntax 5 januari 2026 om 13:50
  • [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

Marktplaats

  • 321 Nieuwe Domeinnamen December 2025

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

    Syntax 26 december 2025 om 00:07
  • Van een pixelige afbeelding naar een strakke, moderne website

    Syntax 21 december 2025 om 17:05

Database queryen vanuit andere class, beste aanpak?

  • Stanvk
  • 9 mei 2013 om 19:05
  • Stanvk
    Python, PHP, Java
    Berichten
    56
    • 9 mei 2013 om 19:05
    • #1

    Goedenavond mede-ICT'ers,

    Een simpel, eenvoudig lijkende vraag: Wat is de 'efficienste ' manier om een database te queryen (etc.) in een andere method in een andere clas?

    Momenteel gebruik ik.

    PHP
    <?php
    
    
    class login
    {
    
    
         public function testQuery()
         {
              global $mysqli;
              $mysqli->query();
         }
    
    
    }
    Toon Meer

    Alvast bedankt!

    Stanvk

    Bewerkt 2 keer, laatst door Stanvk (9 mei 2013 om 19:59).

  • Guest, wil je besparen op je domeinnamen? (ad)
  • Malik
    Guest
    • 9 mei 2013 om 19:08
    • #2

    http://php.net/manual/en/mysqli.prepare.php
    De mysqli prepare functie is een goede.

  • Stanvk
    Python, PHP, Java
    Berichten
    56
    • 9 mei 2013 om 19:12
    • #3
    Citaat van Malik

    http://php.net/manual/en/mysqli.prepare.php
    De mysqli prepare functie is een goede.

    Voordat je dit in een andere class kan gebruiken moet je dat object eerst global maken, of zit dat hier anders?
    (Vraag verkeerd geformuleerd, is aangepast.)

  • Tim
    Enlightened
    Ontvangen Reacties
    77
    Berichten
    3.686
    • 9 mei 2013 om 19:15
    • #4

    Hallo,

    Het zit anders. Klasse gebruik is aangeraden.
    Leg na het koken wat meer uit ;)

    global is afgeraden.

    Mvg,
    Tim

    Master student IT-recht en Master student Ondernemingsrecht & software ingenieur
    My Personal profile
    My professional profile (LinkedIn/CV)

  • Stanvk
    Python, PHP, Java
    Berichten
    56
    • 9 mei 2013 om 19:16
    • #5
    Citaat van Tim

    Hallo,

    Het zit anders. Klasse gebruik is aangeraden.
    Leg na het koken wat meer uit ;)

    global is afgeraden.

    Mvg,
    Tim

    Ik heb vetrouwen in de verwachting dat ik dadelijk antwoord op mijn vraag heb. Alvast smakelijk ;)
    (Ik heb ook iets gelezen over class::method o.i.d.)

  • WHMCSAddons
    Master
    Ontvangen Reacties
    88
    Berichten
    2.411
    • 9 mei 2013 om 19:46
    • #6

    Wellicht is de autoload functie iets, http://nl3.php.net/autoload

  • Patrick
    Back in the game
    Ontvangen Reacties
    52
    Berichten
    1.417
    • 9 mei 2013 om 19:55
    • #7
    PHP
    class login {
    
    
    	public function __construct() {
    		$db = new PDO($db, $username, $password)
    	}
    
    
    	public function testQuery() {
    		return $this->db->query('SELECT * FROM users');
    	}
    }
    Toon Meer

    is een manier :).

  • Stanvk
    Python, PHP, Java
    Berichten
    56
    • 9 mei 2013 om 19:58
    • #8
    Citaat van Patrick
    PHP
    class login {
    
    
    	public function __construct() {
    		$db = new PDO($db, $username, $password)
    	}
    
    
    	public function testQuery() {
    		return $this->db->query('SELECT * FROM users');
    	}
    }
    Toon Meer

    is een manier :).


    Ik krijg een fatal error als ik ongeveer een equivalente code run..

  • Tim
    Enlightened
    Ontvangen Reacties
    77
    Berichten
    3.686
    • 9 mei 2013 om 20:26
    • #9

    Hallo,

    Wat ik je aanraad is om iets te doen wat Patrick heeft gedaan.

    Vervolgens één van de volgende twee opties:

    Een statische variabele binnen de DB klasse maken en een statische getter maken hiervoor zodat je overal makkelijk bij het object kan.
    Dit kan samen met in de constructer van een klasse dit object op te halen en de veriabele in de scope op te nemen.

    Of:
    Het DB klasse meegeve aan de klasse zodat het binnen de scope komt. Moet dus opgenomen worden in de constructor.

    Mvg,
    Tim

    Master student IT-recht en Master student Ondernemingsrecht & software ingenieur
    My Personal profile
    My professional profile (LinkedIn/CV)

  • Stanvk
    Python, PHP, Java
    Berichten
    56
    • 9 mei 2013 om 21:01
    • #10
    Citaat van Tim

    Hallo,

    Wat ik je aanraad is om iets te doen wat Patrick heeft gedaan.

    Vervolgens één van de volgende twee opties:

    Een statische variabele binnen de DB klasse maken en een statische getter maken hiervoor zodat je overal makkelijk bij het object kan.
    Dit kan samen met in de constructer van een klasse dit object op te halen en de veriabele in de scope op te nemen.

    Of:
    Het DB klasse meegeve aan de klasse zodat het binnen de scope komt. Moet dus opgenomen worden in de constructor.

    Mvg,
    Tim

    Toon Meer

    Ik heb even wat gespeeld en uitgeprobeerd. Ik moet jullie er wel op attenderen dat ik geen ster in OOP ben.

    database.class.php

    PHP
    <?php
    
    
    class database
    {
    	
    	public $db;
    
    
    	public function __construct()
    	{
    	
    		$this->db = new mysqli('localhost', 'root', 'usbw', 'test');
    		
    	}
    	
    }
    Toon Meer

    Hoe werkt het dan bij de onderstaande code?
    test.class.php

    PHP
    <?php
    
    
    class test extends database
    {
    
    
    	public function testQuery()
    	{
    
    
                    $this->db->query("SELECT * FROM `bla`");
                  
    	}
    
    
    }
    Toon Meer

    Kreeg helaas de volgende fout:
    Fatal error: Call to a member function query() on a non-object

    Bewerkt één keer, laatst door Stanvk (9 mei 2013 om 21:34).

  • DirkZz
    Intermediate
    Ontvangen Reacties
    29
    Berichten
    213
    • 10 mei 2013 om 20:36
    • #11
    Citaat van Stanvk

    Ik heb even wat gespeeld en uitgeprobeerd. Ik moet jullie er wel op attenderen dat ik geen ster in OOP ben.

    database.class.php

    PHP
    ... Code

    Hoe werkt het dan bij de onderstaande code?
    test.class.php

    PHP
    ... Code

    Kreeg helaas de volgende fout:
    Fatal error: Call to a member function query() on a non-object

    Zou moeten werken wat ik zo snel zie, hoe instantieer jij je object en hoe doe jij vervolgens je aanroep naar de methode zou je dat eens kunnen laten zien?

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