• Inloggen
  • Registreer
  • Zoeken
Dit topic
  • Overal
  • Dit topic
  • Dit forum
  • Artikelen
  • Pagina's
  • Forum
  • Downloads
  • Meer opties

ICTscripters

Dé plek voor IT

Dé plek voor IT

Aanmelden

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  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
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  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
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  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
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • Port Father: beta van een browsergame in Antwerpen 1931, feedback welkom

    Syntax 14 oktober 2026 om 16:04
  • Maffia Hotel: een browsergame waarin je van lobbygast naar spil van het hotel groeit

    Luc 13 oktober 2026 om 21:31
  • Crime Club volledig herschreven vanaf nul

    frio 13 oktober 2026 om 16:52
  • Herkent deze Notion-structuurscan echte problemen?

    FreelanceAP 6 oktober 2026 om 16:48
  • 🚀 WE ZOEKEN TESTERS! 🚀

    Servertjee 3 oktober 2026 om 10:56
  • Luchtvaartsoftware: Hoe technologie de moderne luchtvaart verandert

    saggy2829 30 september 2026 om 19:31
  • Hoe gebruiken jullie WhatsApp voor marketing en klantopvolging?

    aiqanobzfsej5 29 september 2026 om 12:55
  • [PROJECT] Gamekeuring.nl - Hét onafhankelijke keuringsplatform voor maffiagames & RPG's!

    frio 22 september 2026 om 16:40

Marktplaats

  • [TE KOOP] Likeboost24.nl: complete SMM-webshop met eigen merk, volautomatische levering en betalen op de eigen pagina

    Jeroen.G 16 oktober 2026 om 14:27
  • Te koop: TuinKlussen.be, een kant-en-klaar platform voor tuinklussen in Vlaanderen en Brussel

    frio 13 oktober 2026 om 21:08
  • Te koop: Port Father, afgewerkt online maffiaspel in PHP/MySQL, klaar voor de Play Store

    frio 11 oktober 2026 om 14:02

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();
         }
    
    
    }
    Meer tonen

    Alvast bedankt!

    Stanvk

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

  • Gast, wil je besparen op je domeinnamen? (ad)
  • Malik
    Gast
    • 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
    Expert
    Berichten
    3.685
    • 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
    Meester
    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
    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');
    	}
    }
    Meer tonen

    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');
    	}
    }
    Meer tonen

    is een manier :).


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

  • Tim
    Expert
    Berichten
    3.685
    • 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

    Meer tonen

    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');
    		
    	}
    	
    }
    Meer tonen

    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`");
                  
    	}
    
    
    }
    Meer tonen

    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
    Gevorderd
    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?

Registratie

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

Nu registreren Aanmelden

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
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacyverklaring
  10. Contact
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design