• 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

  • [Beta] Ottomaan: gratis browserspel met een echte, levende stad. Feedback gezocht!

    frio 27 oktober 2026 om 12:22
  • Port Father: beta van een browsergame in Antwerpen 1931, feedback welkom

    Jeroen.G 26 oktober 2026 om 10:33
  • Maffia Hotel: een browsergame waarin je van lobbygast naar spil van het hotel groeit

    eeyk 22 oktober 2026 om 18:43
  • Crime Club volledig herschreven vanaf nul

    frio 19 oktober 2026 om 23:57
  • Malavita (nieuwe maffia game, van 0)

    jos 19 oktober 2026 om 23:18
  • Herkent deze Notion-structuurscan echte problemen?

    Jeroen.G 19 oktober 2026 om 15:09
  • 🚀 WE ZOEKEN TESTERS! 🚀

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

    saggy2829 30 september 2026 om 19:31

Marktplaats

  • [Verkoop] G4G (Gangsters 4 Gangsters): volledige broncode, nieuw gebouwd in PHP 8.3 | € 30 per domein

    frio 27 oktober 2026 om 18:54
  • [TE KOOP] Malavita.be [Maffiaspel, gebaseerd op omicidio.nl, unieke code]

    Dpm_x 26 oktober 2026 om 00:22
  • TK: Kraai.eu

    frio 25 oktober 2026 om 11:39

mysql -> mysqli functie

  • Thisguyisgone
  • 16 juli 2013 om 12:04
  • Thisguyisgone
    Elite members
    Berichten
    7.880
    • 16 juli 2013 om 12:04
    • #1

    Hallo,

    ik ben bezig met het herschrijven van mijn website. Nu, alles is naar mysqli omgezet. Maar nu werken de functions niet meer.
    Dus:

    PHP
    #Categorieën ophalen voor 'projecten'
    function projectCato($id) {
    	$sql = $mysqli->query("SELECT cato	FROM portfolio WHERE id = '".$id."'");
    	$r = $sql->fetch_assoc;
    	if($r['cato'] == "web") {
    		$cato = "Website";
    	} elseif($r['cato'] == "logo") {
    		$cato = "Logo";
    	} elseif($r['cato'] == "smartphone") {
    		$cato = "Smartphone Applicatie";
    	} elseif($r['cato'] == "etc") {
    		$cato = "Overige";
    	}
    	
    	return $cato;
    }
    Meer tonen

    Geef bij $sql = $mysqli->query de volgende error: Fatal error: Call to a member function query() on a non-object in **
    Moet ik de functies herschrijven, zoja hoe e.d.

    Alvast bedankt

  • Gast, wil je besparen op je domeinnamen? (ad)
  • WHMCSAddons
    Meester
    Berichten
    2.411
    • 16 juli 2013 om 12:09
    • #2

    Hij kan je $mysqli niet defineren, meest simpele oplossing zou een global waarde zijn maar dat is niet erg netjes..

  • Tim
    Expert
    Berichten
    3.684
    • 16 juli 2013 om 12:10
    • #3

    Hallo,

    $mysqli is waarschijnlijk NULL ;)

    Edit: Fils was me voor.

    Mvg,
    Tim

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

  • Thisguyisgone
    Elite members
    Berichten
    7.880
    • 16 juli 2013 om 12:11
    • #4

    Probleem is dat de rest uit de functies gewoon werkt met de mysqli->

  • GiovanniK
    Gevorderd
    Berichten
    252
    • 16 juli 2013 om 12:12
    • #5

    Zoals hierboven al is vermeld, waarschijnlijk werkt je verbinding niet.

    Doe eens dit:

    var_dump($mysqli);

  • Tim
    Expert
    Berichten
    3.684
    • 16 juli 2013 om 12:13
    • #6
    Citaat van Ferhat.Remory

    Probleem is dat de rest uit de functies gewoon werkt met de mysqli->


    Hallo,

    Dat is waarschijnlijk omdat de rest niet binnen een functie is.
    Functie herkent $mysqli niet omdat het niet geinitialiseerd is.

    Moet je dus aanmaken of gebruiken van elders.

    Mvg,
    Tim

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

  • Thisguyisgone
    Elite members
    Berichten
    7.880
    • 16 juli 2013 om 12:14
    • #7

    Ja, mysqli is me een beetje onbekend.

  • WHMCSAddons
    Meester
    Berichten
    2.411
    • 16 juli 2013 om 12:17
    • #8
    Citaat van Ferhat.Remory

    Ja, mysqli is me een beetje onbekend.

    Dit heeft verder niets met je MySQLi te maken, het is een vrij simpel verhaal eigenlijk..

  • Thisguyisgone
    Elite members
    Berichten
    7.880
    • 16 juli 2013 om 12:39
    • #9

    De mysql variant werktte hierin wel.. Dus dan zou ik graag het verhaaltje weten :-).

  • WHMCSAddons
    Meester
    Berichten
    2.411
    • 16 juli 2013 om 12:41
    • #10

    MySQL defineer je niet als een variable, dit doe je nu wel met de MySQLi.
    Als je $test = 'dit is een test.'; erbuiten zet en je wil die binnen een function roepen zal dit ook niet werken tenzij de juiste manier gebruikt wordt.

    http://php.net/manual/en/language.variables.scope.php

  • Thisguyisgone
    Elite members
    Berichten
    7.880
    • 16 juli 2013 om 12:57
    • #11

    Het is gelukt dankzij grotendeels aan tcbhome!

    PHP
    function projectCato($id) {    
    	global $mysqli;        
    	
    	$sql = "SELECT cato FROM portfolio WHERE id = '".$id."'";        
    	if(!$result = $mysqli->query($sql))     {         
    	$cato = 'Fout bij opvragen SQL';     }     else     {        
    	$r = $result->fetch_assoc();                 
    	if($r['cato'] == "web")         {            
    	$cato = "Website";        }         
    	elseif($r['cato'] == "logo")         {            
    	$cato = "Logo";        }         
    	elseif($r['cato'] == "smartphone")         {           
    	$cato = "Smartphone Applicatie";        }         
    	elseif($r['cato'] == "etc")         {            
    	$cato = "Overige";        }    }           
    	return $cato;}
    Meer tonen
  • WHMCSAddons
    Meester
    Berichten
    2.411
    • 16 juli 2013 om 13:07
    • #12

    Hoezo tcbhome, we zitten je hier 20x te vertellen dat je een global waarde moet maken hiervan....

    Nja top :sleeping:

  • Tim
    Expert
    Berichten
    3.684
    • 16 juli 2013 om 18:28
    • #13

    Hallo,

    Enkel zoals Fils al zei, is global niet de meeste nette manier...

    Mvg,
    Tim

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

  • Victor
    Meester
    Berichten
    1.680
    • 16 juli 2013 om 18:49
    • #14
    Citaat van Tim

    Hallo,

    Enkel zoals Fils al zei, is global niet de meeste nette manier...

    Mvg,
    Tim

    Wat zou jij doen in plaats van global?

    Met vriendelijke groet,

    Victor
    Beheerder ICTscripters

  • WHMCSAddons
    Meester
    Berichten
    2.411
    • 16 juli 2013 om 19:13
    • #15
    Citaat van victor

    Wat zou jij doen in plaats van global?

    http://php.net/manual/en/language.oop5.decon.php


    Dit is wat ik zou doen wil ik zorgen dat het netjes is, al heeft iedereen weer ze eigen manier van werken.

  • Tredgy
    Developer
    Berichten
    192
    • 17 juli 2013 om 08:02
    • #16

    Als je een variable gebruikt is hij gebonden tot die functie, als je hem buiten die functie wilt gebruiken moet je een global keyword gebruiken.

    Kijk even naar de Variable scope & global en local variable scope:

    http://php.net/manual/en/language.variables.scope.php

    Als je de code opnieuw en opnieuw gaat gebruiken zou ik hem op de normale global manier doen, maar als $link niet vaak word gebruikt is extra parameters voeren niet erg. of projectCato($id) id is een parameter hier, om er nog een toetevoegen, gewoon een komma toevoegen zoals projectCato($id, $link) dat is meer aan te raden dan global.

    Doe het dan op de manier van functie open:

    PHP
    $query = "SELECT `cato` FROM `portfolio` WHERE id = '".$id."'";
    $result = mysqli_query($link, $query);
    $r = mysqli_fetch_assoc($result);

    Zorg natuurlijk dat $id niet leeg is.

    Met vriendelijke groeten,
    Tredgy

    Bewerkt 2 keer, laatst door Tredgy (17 juli 2013 om 08:17).

Registratie

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

Nu registreren Aanmelden

ICT Nieuws

  • PHP waarschuwt voor twee ernstige bugs die makkelijk uit te buiten lijken

    Aaron 22 oktober 2026 om 22:19

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

  • 2 Gasten
  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