• 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

  • 350 Nieuwe Domeinnamen Januari 2026

    shiga 1 februari 2026 om 14:21
  • 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

Fatal error: Call to a member function updatePower() on a non-object in

  • Frenzo.Brouwer
  • 15 juni 2014 om 20:21
  • Frenzo.Brouwer
    Web Developer
    Ontvangen Reacties
    35
    Berichten
    535
    • 15 juni 2014 om 20:21
    • #1

    Hallo,

    Momenteel werk ik aan een website waar ik de volgende melding bij krijg:
    Fatal error: Call to a member function updatePower() on a non-object in ....

    De functie heb ik in een class staan, en overige functie's in de class werken wel gewoon.

    Code
    public function updatePower($pwrlvl, $waarde, $waarde2, $user2)
            {
                global $db;
                
                $power = array();
                
                $pwr = json_decode($pwrlvl, false);
                
                    $power['aanval'] = $pwr->aanval + $waarde;
                    $power['defense'] = $pwr->defense + $waarde2;
                
                $array = array('aanval' => $power['aanval'],'defense' => $power['defense']);
                $power_nieuw = json_encode($array);
                
                $items = array(':username' => $user2, ':power' => $power_nieuw);
                return $db->query('UPDATE '.TBL_USERS.' SET `powerlevel` = :power WHERE `username` = :username', $items);
            
            }
    Toon Meer

    Zo roep ik het op:

    Code
    $user->updatePower($speler2->powerlevel, $power_beloning, $power_beloning, $speler['voor']);


    Wat gaat er fout, dat ik deze error krijg?

    Eigenaar van:
    Online Marketing & Webdesign Bureau - https://marketingmetrics.nl/
    Gaming Plaform - https://onetwogaming.nl/
    Banditi - https://banditi.nl/
    Criminas - https://criminas.nl/

  • Guest, wil je besparen op je domeinnamen? (ad)
  • stijnhau
    Student
    Ontvangen Reacties
    3
    Berichten
    174
    • 15 juni 2014 om 20:29
    • #2

    die $user waarop je die functie oproept is niet van een klasse.
    doe eens een var_dump er op om te bekijken wat die exact bevat dan.

    Check mijn projecten op stijnhau.be

  • WHMCSAddons
    Master
    Ontvangen Reacties
    88
    Berichten
    2.411
    • 15 juni 2014 om 20:30
    • #3

    Simpel vertaald:
    Je roept een functie aan op een object dat niet bestaat of geen object is.

  • Frenzo.Brouwer
    Web Developer
    Ontvangen Reacties
    35
    Berichten
    535
    • 15 juni 2014 om 20:37
    • #4

    Als ik de functie doe var_dumpen in mijn userclass met standaart invoer waardes:
    object(PDOStatement)#6 (1) { ["queryString"]=> string(67) "UPDATE users SET `powerlevel` = :power WHERE `username` = :username" }

    Eigenaar van:
    Online Marketing & Webdesign Bureau - https://marketingmetrics.nl/
    Gaming Plaform - https://onetwogaming.nl/
    Banditi - https://banditi.nl/
    Criminas - https://criminas.nl/

  • stijnhau
    Student
    Ontvangen Reacties
    3
    Berichten
    174
    • 15 juni 2014 om 20:45
    • #5

    dus die $user is van PDOStatement class dus.
    En heb je daar dan een functie op genaamt updatePower ?
    vermoedelijk niet.

    Check mijn projecten op stijnhau.be

  • Frenzo.Brouwer
    Web Developer
    Ontvangen Reacties
    35
    Berichten
    535
    • 15 juni 2014 om 20:48
    • #6

    Jawel in mijn User Class, heb ik een functie updatePower().

    Eigenaar van:
    Online Marketing & Webdesign Bureau - https://marketingmetrics.nl/
    Gaming Plaform - https://onetwogaming.nl/
    Banditi - https://banditi.nl/
    Criminas - https://criminas.nl/

  • stijnhau
    Student
    Ontvangen Reacties
    3
    Berichten
    174
    • 15 juni 2014 om 21:08
    • #7

    Maar je var dump zegt dat het geen userclass is die user.
    Post anders je volledige script eens.

    Check mijn projecten op stijnhau.be

  • Frenzo.Brouwer
    Web Developer
    Ontvangen Reacties
    35
    Berichten
    535
    • 15 juni 2014 om 21:32
    • #8

    Untitled PHP :: Code Dumper

    Dit is heel mijn user class.

    Alles werkt gewoon naar behoren, alleen bij deze functie geeft hij deze melding.
    Wellicht zou het ook door de pagina komen waarop ik de functie uitvoer??

    Eigenaar van:
    Online Marketing & Webdesign Bureau - https://marketingmetrics.nl/
    Gaming Plaform - https://onetwogaming.nl/
    Banditi - https://banditi.nl/
    Criminas - https://criminas.nl/

  • stijnhau
    Student
    Ontvangen Reacties
    3
    Berichten
    174
    • 15 juni 2014 om 21:34
    • #9

    Vermoedelijk is het je pagina en overschijf je $usqer ergens op die pagina.

    Check mijn projecten op stijnhau.be

  • Frenzo.Brouwer
    Web Developer
    Ontvangen Reacties
    35
    Berichten
    535
    • 15 juni 2014 om 21:36
    • #10

    Dit is de pagina waar ik de error krijg:
    Untitled PHP :: Code Dumper
    Het gaat in dit geval om regel: 197.

    Kan jij zien waar het fout gaat?

    Eigenaar van:
    Online Marketing & Webdesign Bureau - https://marketingmetrics.nl/
    Gaming Plaform - https://onetwogaming.nl/
    Banditi - https://banditi.nl/
    Criminas - https://criminas.nl/

  • Stefan.J
    Master
    Ontvangen Reacties
    9
    Berichten
    2.358
    • 16 juni 2014 om 23:02
    • #11

    De variabele $user wordt in elk geval niet gedefinieerd in het script dat je postte. Dat is waarschijnlijk ook waar het mis gaat: de variabele is denk ik niet gedefineerd. Als je een een var_dump doet van $user net boven de regel waar het misgaat.

    TIP: Gebruik geen global statements. Hierdoor leg je allemaal afhankelijkheden in je code die niet beheerbaar zijn waardoor je een gigantische spagetticode krijgt.

  • Frenzo.Brouwer
    Web Developer
    Ontvangen Reacties
    35
    Berichten
    535
    • 17 juni 2014 om 00:14
    • #12
    Citaat van Stefan.J

    De variabele $user wordt in elk geval niet gedefinieerd in het script dat je postte. Dat is waarschijnlijk ook waar het mis gaat: de variabele is denk ik niet gedefineerd. Als je een een var_dump doet van $user net boven de regel waar het misgaat.

    TIP: Gebruik geen global statements. Hierdoor leg je allemaal afhankelijkheden in je code die niet beheerbaar zijn waardoor je een gigantische spagetticode krijgt.


    Op het moment als ik:

    Code
    var_dump($user)


    uitvoer, voor ik de functie wil uitvoeren. Dan ontvang ik heel mijn tabel van mijn gebruiker.

    Op het moment als ik de bovenstaande code vervang naar

    Code
    var_dump($user->updatePower())


    Krijg ik dus weer die melding???

    En dan even een aanvulling op je reactie tot mijn code.
    Hoe zou ik dan een andere variabel kunnen gebruiken in een functie? Zoals ik nu dus doe?

    Eigenaar van:
    Online Marketing & Webdesign Bureau - https://marketingmetrics.nl/
    Gaming Plaform - https://onetwogaming.nl/
    Banditi - https://banditi.nl/
    Criminas - https://criminas.nl/

  • Frenzo.Brouwer
    Web Developer
    Ontvangen Reacties
    35
    Berichten
    535
    • 17 juni 2014 om 00:45
    • #13

    Het werkt nu, k heb er een static function van gemaakt.

    Eigenaar van:
    Online Marketing & Webdesign Bureau - https://marketingmetrics.nl/
    Gaming Plaform - https://onetwogaming.nl/
    Banditi - https://banditi.nl/
    Criminas - https://criminas.nl/

  • stijnhau
    Student
    Ontvangen Reacties
    3
    Berichten
    174
    • 17 juni 2014 om 08:17
    • #14

    Heb even de code bekeken en zie nergens waar je die class include.
    Dit is ook de plaats waar je dei user aanmaakt.

    Check mijn projecten op stijnhau.be

  • Frenzo.Brouwer
    Web Developer
    Ontvangen Reacties
    35
    Berichten
    535
    • 17 juni 2014 om 21:30
    • #15
    Citaat van stijnhau

    Heb even de code bekeken en zie nergens waar je die class include.
    Dit is ook de plaats waar je dei user aanmaakt.


    Dat wordt in de index gedaan. Maar de functie werkt perfect, precies zoals ik wil! Alleen weet ik niet waarom het alleen als een static function werkt?

    Eigenaar van:
    Online Marketing & Webdesign Bureau - https://marketingmetrics.nl/
    Gaming Plaform - https://onetwogaming.nl/
    Banditi - https://banditi.nl/
    Criminas - https://criminas.nl/

  • Stefan.J
    Master
    Ontvangen Reacties
    9
    Berichten
    2.358
    • 17 juni 2014 om 21:49
    • #16

    Waarschijnlijk omdat $user dus geen instantie van User is. Static is sowieso een slecht idee, vooral in het geval van een class als User, er kunnen tenslotte meerdere users zijn (zijn er zelfs waarschijnlijk).

  • Patrick
    Back in the game
    Ontvangen Reacties
    52
    Berichten
    1.417
    • 17 juni 2014 om 22:09
    • #17
    Citaat van Frenzo.Brouwer


    Dat wordt in de index gedaan. Maar de functie werkt perfect, precies zoals ik wil! Alleen weet ik niet waarom het alleen als een static function werkt?

    Door dat je een static functie van maakt hoeft hij maar één keer de gegevens op te vragen en dan blijven de gegevens in de class beschikbaar tot dat de class wordt afgesloten of dat het script afloopt.

    Daardoor zal waarschijnlijk jou script nu wel resultaat geven, dit vanwege dat je ergens anders deze class ook al een keer aanroept die wel correct wordt aangeroepen. Hierdoor worden de gegevens statisch gemaakt en beschikbaar gesteld voor gebruik verder in het script.

    Zoals eerder aangegeven is het geen slim idee om een functie in een "user" class statisch te maken, hierdoor bind je jezelf vast in een class waar je dat helemaal niet wilt. de variabel $user wordt niet correct aangemaakt waardoor $user niet het object van een class gebruikt. (ergens waar in het script staat $user = new class user of een autoload functie die daar voor zorgt).

    In je getoonde script zie ik ook nergens dat $user wordt aangeroepen doormiddel van een class, je krijgt wellicht wel result, wat een restant van een andere aanroep is, maar vanwege dat $user geen onderdeel van het object is krijg je die melding.

  • Frenzo.Brouwer
    Web Developer
    Ontvangen Reacties
    35
    Berichten
    535
    • 17 juni 2014 om 23:05
    • #18

    Onderaan mijn user class zie je dat ik de class aan maak en defineer als $user.
    Deze file wordt geladen in de index.php.

    Eigenaar van:
    Online Marketing & Webdesign Bureau - https://marketingmetrics.nl/
    Gaming Plaform - https://onetwogaming.nl/
    Banditi - https://banditi.nl/
    Criminas - https://criminas.nl/

  • Patrick
    Back in the game
    Ontvangen Reacties
    52
    Berichten
    1.417
    • 18 juni 2014 om 09:34
    • #19
    Citaat van Frenzo.Brouwer

    Onderaan mijn user class zie je dat ik de class aan maak en defineer als $user.
    Deze file wordt geladen in de index.php.

    en in je aangegeven script wissel je ook met werkingen van $user blijkbaar:

    Code
    user::login


    &

    Code
    $user->updatePower

    is ook niet geheel hoe je een stevige class opbouwt. En ik kan je class niet zien / index aangezien ik die nergens kan vinden...

  • Frenzo.Brouwer
    Web Developer
    Ontvangen Reacties
    35
    Berichten
    535
    • 18 juni 2014 om 12:42
    • #20

    user::login() gebruik ik om waardes aan te roepen van de gebruiker, dit heb k zo gemaakt omdat het fijn werkt anders heel de tijd een prepare -> array -> execute -> fetch. Nu is het een functie die dit allemaal automatisch doet.

    Eigenaar van:
    Online Marketing & Webdesign Bureau - https://marketingmetrics.nl/
    Gaming Plaform - https://onetwogaming.nl/
    Banditi - https://banditi.nl/
    Criminas - https://criminas.nl/

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