Mysql connection class

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Programmeur / Developer

Voor een familiebedrijf in Doetinchem, actief in de machinebouw voor de food-sector, zijn wij op zoek naar een programmeur / developer. In deze functie ben je werkzaam in een team van 5 medewerkers. Je werkzaamheden bestaan onder andere uit het verhelderen van requirements vanuit de opdrachtgever, de klant en de afdeling ontwikkeling. Je verricht haalbaarheidsstudies en werkt specificaties uit die je afstemt met de opdrachtgever. Je ontwerpt design in software en stemt af met je collega's. De huidige vision-systemen zijn geschreven in C software, welke draait op een CUDA platform. Je schrijft en codeert software en zal gaan testdraaien. Tot

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Starter/junior Magento developer gezocht!

Functie Je komt te werken in een zelfsturend team waarin vertrouwen voorop staat en inbreng en ideeën worden gewaardeerd. Ook staat innovatie centraal. Ze bieden jou de mogelijkheid om jezelf door te ontwikkelen. Denk hierbij aan cursussen en een persoonlijk ontwikkelplan. Je komt terecht in het team van momenteel 4 (ervaren) collega’s en zal meewerken aan de doorontwikkeling en nieuwbouw van de Magento platformen van meerdere opdrachtgevers volgens Agile/Scrum. Denk hierbij aan nieuwe functionaliteiten, UX en koppelingen met verschillende back-end systemen. Als starter/junior developer zul je direct begeleid worden door een senior uit het team. Het is van belang dat

Bekijk vacature »

C# developer

Functie Als C# ontwikkelaar ben jij de spin in het web bij deze organisatie. Jij begeleidt en traint de field engineers die bij de klanten machines leveren en installeren. Daarnaast ondersteun jij de field engineers als zij bij de klant vastlopen bij het installeren van de machine m.b.t. software matige vragen. Jouw doel is dan ook om de technische kennis van de field engineers door middel van training zoveel mogelijk uit te breiden. Dit om ervoor te zorgen dat zij zelfstandiger software matige problemen kunnen oplossen. Ook ben jij verantwoordelijk voor het bedenken van software oplossingen voor klanten en dit

Bekijk vacature »

Front-end PHP Developer

Dit ga je doen Bouwen van de frontend van een nieuwe applicaties; Verbeteren van de user experience; Opstellen van een style guide; Schakelen met collega developers over de te bouwen oplossing; Je speelt een belangrijke rol in het neerzetten van het nieuwe systeem; Werken met o.a. Symfony 6, API Platform, Twig, Javascript, Redis Automatiseren van processen; Koppelen van verschillende functionaliteiten; Unit tests, integration tests, end-to-end tests; In de toekomst ga je nog werken aan andere projecten. Hier ga je werken Voor onze vaste opdrachtgever in de regio Breda zijn wij op zoek naar een Frontend Developer. Het betreft een organisatie

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Medior/Senior Software Developers gezocht in de Ra

Functie Op dit moment staan er posities open voor de volgende functies: Front-end, Back-End & Fullstack software developer. Als Front-End software developer werk je met JavaScript en de bijbehorende technologieën zoals TypeScript, Angular, React, Vue en Svelte. Als Back-End software developer ben je bezig in NodeJS en doe je dit met behulp van AWS, NoSQL, REST en GraphQL. Je krijgt leuke en uitdagende opdrachten met een gemiddelde duur van anderhalf jaar. Hier werk je in een team met andere IT’ers aan het ontwikkelen en verbeteren van software. Je wordt begeleid door een accountmanager die fungeert als jouw aanspreekpunt. Het team

Bekijk vacature »

Fullstack JavaScript Developer Webapplicaties

Bedrijfsomschrijving Voor deze organisatie ben ik op zoek naar een getalenteerde Fullstack JavaScript Developer. Ze is een snelgroeiend software development agency dat zich richt op het ontwikkelen van moderne webapplicaties en complexe systemen voor haar klanten. Ze is gevestigd onder de rook van Utrecht en heeft als doel om tot de top van de Nederlandse agencies te behoren. Deze organisatie maakt softwareoplossingen voor verschillende soorten bedrijven. Innovatie staat hoog in het vaandel en je zult dus met nieuwe technieken aan de slag gaan. Ze hebben klanten in vele branches zitten, zoals retail, finance, gezondheid en onderwijs. De diverse klanten zorgen

Bekijk vacature »

PHP developer

Functie Voor een opdrachtgever in omgeving Leiden zijn wij op zoek naar een PHP developer die affiniteit heeft met C++. Ben jij reeds afgestudeerd of heb je al een paar jaar ervaring? Lees snel verder en kijk of dit iets voor jou is! Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen C / C++ / PHP. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een projecten goed verlopen. Je gaat klanten ondersteunen op het gebied van

Bekijk vacature »

Senior java ontwikkelaar integratie

Functieomschrijving Voor de gemeente Rotterdam zijn wij op zoek naar een senior java ontwikkelaar integratie. Taken Binnen een zelfsturend Scrumteam voer je geheel zelfstanding je opdrachten uit en levert het eindresultaat op aan het Integratieteam. Jij voelt je net als alle teamleden verantwoordelijk voor alle aspecten, vanaf de vraag tot en met de oplevering in productie. Je bent kritisch, je helpt de klant om zijn wensen helder te krijgen, je schrijft zelfstandig clean code die van hoge kwaliteit is, met bijbehorende unit- en integratietesten, je ondersteunt zo nodig bij deployments naar productie. Het Integratieteam bouwt componenten (Endpoints) op de ESB.

Bekijk vacature »

C# .NET developer voor innovatieve applicaties gez

Bedrijfsomschrijving Deze werkgever houdt zich al ruim 20 jaar bezig met het ontwikkelen van innovatieve software en dat willen ze graag nog lang doorzetten. En dat merk je ook als je als .NET developer hier aan de slag gaat. De applicaties worden continu doorontwikkeld met altijd als uitgangspunt dat zowel de kwaliteit als het gebruikersgemak van hoog niveau is. Het bedrijf telt inmiddels ruim 25 medewerkers waarvan meer dan de helft op de development afdeling werken. Meer weten over deze werkgever? Mail naar [email protected] of bel 0657578548 Functieomschrijving Je komt te werken in een Scrum team met andere .NET developers

Bekijk vacature »

Fullstack developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie werken? Voor een mooi softwarebedrijf in omgeving Alblasserdam zijn wij op zoek naar versterking op de afdeling Software Development! Als Fullstack react.js developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook regelmatig met de back

Bekijk vacature »

Java/Kotlin Developer

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

Software programmeur

Functieomschrijving Voor een uitdagende werkgever in regio Breda zijn wij op zoek naar een Full Stack C#.NET programmeur. Je bent verantwoordelijk voor het ontwikkelen van apps, webapplicaties en dashboards voor de eigen IOT-oplossingen. Je werkt samen met andere developers en engineers om de sensoren in machines te scannen en vervolgens de data om te zetten in management informatie voor de klanten. Taken en verantwoordelijkheden: Je gaat aan de slag met de volgende technologieën en frameworks: C#, JS frameworks, HTML, TypeScript, SQL & C++, CSS. Geen ervaring met één van deze technologieën is dan ook geen enkel probleem! Deze werkgever biedt

Bekijk vacature »
Youri van Mill

Youri van Mill

08/10/2010 14:39:33
Quote Anchor link
Ik ben nieuw in OOP.

Ik heb doormiddel van tuts een connectie class gemaakt.

Doe ik het zo goed, op deze manier?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
class MySQL
{
    private $_host;
    private $_username;
    private $_password;
    private $_db;
    
    private $_conn;
  
    public function __construct($host, $user, $pass, $db)
    {
        $this->_host = $host;
        $this->_username = $name;
        $this->_password = $pass;
        $this->_db = $db;
    }

    public function connect()
    {
        $this->_conn = mysql_connect($this->_host, $this->_username, $this->_password);
        
        if(!$this->_conn)
        {
            return mysql_error();
        }
    }
}
 
PHP hulp

PHP hulp

27/05/2026 08:45:31
 
- Ariën  -
Beheerder

- Ariën -

08/10/2010 19:18:43
Quote Anchor link
Het is geen connectie class, maar een MySQL class. Je man ook fetchen o.a toevoegen.
 
Youri van Mill

Youri van Mill

08/10/2010 22:59:10
Quote Anchor link
Het is natuurlijk ook de bedoeling om één aantal dingen toe te voegen.

Maar ben ik zo goed op weg?
 

08/10/2010 23:03:12
Quote Anchor link
Ik zou niet die error returnen in die connect. Maar dus de waarde van die connect.
Verder kan je eens naar pdo en mysqli kijken.
 
Loran DP

Loran DP

08/10/2010 23:06:49
Quote Anchor link
Miss heb je hier iets aan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
public function connect( $server, $username, $password, $database )
    {

        global $link;
        
        $link = new mysqli( $server, $username, $password, $database );
        
        // check connection
        if( mysqli_connect_errno() )
        {

            printf("Database connection failed: %s\n", mysqli_connect_error());
            exit();
        }
    }

?>
 

08/10/2010 23:16:26
Quote Anchor link
ILoran punt NL op 08/10/2010 23:06:49:
Miss heb je hier iets aan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
public function connect( $server, $username, $password, $database )
    {

        global $link;
        
        $link = new mysqli( $server, $username, $password, $database );
        
        // check connection
        if( mysqli_connect_errno() )
        {

            printf("Database connection failed: %s\n", mysqli_connect_error());
            exit();
        }
    }

?>


Gatver-tyfus-damme. WTF moet deze onzin voortellen?
- Functie om klasse heenschrijven? Gebruik dan geen klasse.
- Global? Global is vies, weg met global.
- Waarom kan je niet gewoon mysqli aanroepen, kan je gewoon $link gebruiken.
- Procedurale ondersteuning van mysqli is er alleen voor om te zorgen dat oudere php versies ook mysqli kunnen gebruiken. Waarom heb je dus niet gewoon de standaard OO manier gebruikt?
- NOOIT de fout die mysql teruggeeft aan de gebruiker weergeven. Alleen gebruiken voor debuggen.
- GA ZELF DOOD NEER VALLEN!
Gewijzigd op 08/10/2010 23:16:55 door
 
Loran DP

Loran DP

08/10/2010 23:19:27
Quote Anchor link
@Karl,

Waar slaat jouw reactie op?
Heel toevallig stond het zo in mijn schoolboek.....


Helaas wel!

"- GA ZELF DOOD NEER VALLEN!"
DOE NORMAAL!
 
Jelmer -

Jelmer -

09/10/2010 00:24:33
Quote Anchor link
Youri van Mill op 08/10/2010 14:39:33:
Ik ben nieuw in OOP.

Doe ik het zo goed, op deze manier?


Het werkt, dus je doet het niet heel fout. Maar waarom sla je de gebruikersnaam op in een member-variabele? Nadat je een verbinding hebt gemaakt, heb je die toch niet meer nodig?

Op zich is het niet nuttig om voor MySQL een class te maken, die zijn er al. PHP Heeft MySQLi en PDO, en zo'n beetje iedereen die een beetje PHP programmeert heeft er zelf wel eens een geschreven. Zelfs jij. Het is dus niet de meest nuttige class om te schrijven, het is wel heel handig om het te leren, want er zijn zat voorbeelden.

Welke kant ga je op? Ga je één grote class maken die query() functie heeft, en een fetch() functie, waarmee je dus eigenlijk gewoon de mysql_* functies 1 op 1 in je class zet. Ga je hem uitbreiden met handige functies die queries genereren zoals select() en count()? Of ga je meer PDO's kant op waarbij prepare() en query() een PDOStatement object teruggeven waaruit je dan de results kan ophalen? Of ga je nog veel verder en ga je tabellen en velden en conditions en statements allemaal als classes modeleren zodat je je query volledig kan programmeren en kan genereren met PHP, waardoor je voor een simpele select-query plotseling 6 regels nodig hebt?
 
- Raoul -

- Raoul -

09/10/2010 09:10:44
Quote Anchor link
Waarom zou je een class aanmaken om te connecten met MySQL,
er bestaat hier al een functie voor, dus ik vind dit overbodig.
 

09/10/2010 09:17:16
Quote Anchor link
ILoran punt NL op 08/10/2010 23:19:27:
@Karl,

Waar slaat jouw reactie op?
Heel toevallig stond het zo in mijn schoolboek.....


Helaas wel!

"- GA ZELF DOOD NEER VALLEN!"
DOE NORMAAL!


Inmiddels zou jij al twee dingen moeten weten. Namelijk dat schoolboeken het bijna nooit bij het juiste end hebben en dat exit / die doen omdat er een foutjes was ontzettend vies is.
Jij zegt nu in principe hetzelfde als ik tegen jou zeg. Denk eens na. Dat is toch helemaal niet de bedoeling?
Ook moet juist goed oppassen met schoolboeken, die bevatte vaak verkeerde / achterhaalde / slechte informatie.

Jelmer rrrr op 09/10/2010 00:24:33:
Youri van Mill op 08/10/2010 14:39:33:
Ik ben nieuw in OOP.

Doe ik het zo goed, op deze manier?

(...)
Welke kant ga je op? Ga je één grote class maken die query() functie heeft, en een fetch() functie, waarmee je dus eigenlijk gewoon de mysql_* functies 1 op 1 in je class zet. Ga je hem uitbreiden met handige functies die queries genereren zoals select() en count()? Of ga je meer PDO's kant op waarbij prepare() en query() een PDOStatement object teruggeven waaruit je dan de results kan ophalen? Of ga je nog veel verder en ga je tabellen en velden en conditions en statements allemaal als classes modeleren zodat je je query volledig kan programmeren en kan genereren met PHP, waardoor je voor een simpele select-query plotseling 6 regels nodig hebt?

Of ga je nog verder en maak je er een ORM van zoals doctrine?

Internet Verslaafde op 09/10/2010 09:10:44:
Waarom zou je een class aanmaken om te connecten met MySQL,
er bestaat hier al een functie voor, dus ik vind dit overbodig.

Reasons for using classes.
 
Niels K

Niels K

09/10/2010 14:53:12
Quote Anchor link
Kijk hier eens naar:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<?php

/**
 * Interface.php. Dit bestand bevat alle interfaces die bij de Database package horen.
 * De Database package bevat alle klassen die rechtstreeks met de Database communiceren
 * en gebruik maken van Database specifieke functies uit PHP.
 * Dit bestand bevat alle interfaces die te maken hebben met de Database package.
 * De interfaces dwingen af hoe een Database en een DatabaseResult eruit moet komen te zien.
 *
 * @package Database
 * @throws DatabaseException
 * @author Niels Kieviet <[email protected]>
 * @version $Revision v.100$
 * @copyright Copyright (c) 2010, Niels Kieviet
 */


require_once dirname( __FILE__ ) . '/exception.php';

/**
 * De Database interface. Deze interface wordt gebruikt om aan te geven hoe een Database eruit moet zien.
 * De Database kan verbinding maken en er kunnen queries op uitgevoerd worden. Het resultaat van een query
 * wordt verwerkt door het DatabaseResult. Alle methoden uit deze interface maken het mogelijk om op een
 * generieke manier acties uit te voeren op de database.
 */

interface Database
{
    /**
     * Methode die verbinding met de database maakt. Gebruik makend van de meegegeven login gegevens
     *
     * @param String $host De host waar de database gehost staat
     * @param String $username De gebruikersnaam om in te loggen op de database
     * @param String $password Het wachtwoord om in te loggen op de database
     * @param String $database De naam van de database waarmee verbinding gemaakt moet worden
     * @return Void
     */

    public function connect( $host, $username, $password, $database );
    
    /**
     * Methode om de opgegeven query uit te voeren op de database
     *
     * @param String $query De query die uitgevoerd moet worden op de database
     * @throws DatabaseException Een opgetreden foutmelding wordt door de DatabaseException opgevangen.
     * @return DatabaseResult Het resultaat van de query
     */

    public function query( $query );
}


/**
 * De DatabaseResult interface. Deze interface wordt gebruikt om een resultaat van een query op de Database
 * te beschrijven.
 *
 * Op het moment dat een query uitgevoerd wordt, komt er een DatabaseResult terug. De DatabaseResult bevat
 * het resultaat van de query en geeft de mogelijkheid om dit resultaat op diversen manieren op te vragen.
 */

interface DatabaseResult
{
    /**
     * Methode om een enkele regel uit het resultaat op te vragen in de vorm van een array met key => value
     * paren. Elke key correspondeert met een geselecteerd veld uit de database.
     *
     * @return Array Een enkele regel uit het resultaat in vorm van een array met key => value paren
     */

    public function fetch_assoc( );
    
    /**
     * Methode om het hele resultaat in één array op te vragen. De array is een lijst van alle geselecteerde
     * regels opgevraagd met de fetch_assoc methode
     *
     * @return Array Een lijst met alle geselecteerde regels
     */

    public function fetch_all( );
    
    /**
     * Methode om het aantal regels uit het resultaat op te vragen.
     *
     * @return Integer Het aantal regels waaruit het resultaat bestaat
     */

    public function rows( );
}

?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php

/**
 * mysql.database.php. Dit bestand bevat alle klassen die specifiek gericht zijn in het
 * communiceren met een MySQL database.
 *
 * @package Database
 * @throws DatabaseException
 * @author Niels Kieviet <[email protected]>
 * @version $Revision v.100$
 * @copyright Copyright (c) 2010, Niels Kieviet
 */


require_once dirname( __FILE__ ) . '/interface.php';
require_once dirname( __FILE__ ) . '/exception.php';
require_once dirname( __FILE__ ) . '/mysql.result.php';

/**
 * De MySQL klasse. De MySQL is een implementatie van de Database interface specifiek gericht
 * om te communiceren met een MySQL database
 */

class MySQL implements Database
{
    /**
     * In deze variabele wordt de database connectie opgeslagen
     *
     * @var MySQLObject
     */
    
    private $connection;
    
    /**
     * Methode die verbinding met de database maakt. Gebruik makend van de meegegeven login gegevens
     *
     * @param String $host De host waar de database gehost staat
     * @param String $username De gebruikersnaam om in te loggen op de database
     * @param String $password Het wachtwoord om in te loggen op de database
     * @param String $database De naam van de database waarmee verbinding gemaakt moet worden
     * @return Void
     */

    public function connect( $host, $username, $password, $database )
    {

        if( !$this->connection = mysql_connect( $host, $username, $password ) ) {
            throw new DatabaseException( 'Kon geen verbinding met de database tot stand worden gebracht' );            
        }

        if( !mysql_select_db( $database, $this->connection ) ) {
            throw new DatabaseException( mysql_error( ) );
        }
    }

    
    /**
     * Methode om de opgegeven query uit te voeren op de database
     *
     * @param String $query De query die uitgevoerd moet worden op de database
     * @throws DatabaseException Een opgetreden foutmelding wordt door de DatabaseException opgevangen.
     * @return DatabaseResult Het resultaat van de query
     */

    public function query( $query )
    {

        $result = mysql_query( $query, $this->connection );
        
        if( !$result ) {
            throw new DatabaseException( mysql_error( ) );
        }

        return new MySQLResult( $result );
    }
}

?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?php

/**
 * mysql.result.php. Dit bestand bevat alle klassen die specifiek te maken hebben
 * met het resultaatset van een MySQL database.
 *
 * @package Database
 * @throws DatabaseException
 * @author Niels Kieviet <[email protected]>
 * @version $Revision v.100$
 * @copyright Copyright (c) 2010, Niels Kieviet
 */

/**
 * De MySQLResult klasse is een implementatie van de DatabaseResult interface
 * die specfieke gericht is op het communiceren met een MySQL database.
 * De klasse vangt het resultaat op wat verkegen is van de MySQL database klasse.
 */

class MySQLResult implements DatabaseResult
{
    /**
     * In deze variabele wordt het resultaat opgeslagen
     *
     * @var MySQLResultObject
     */

    private $result;
    
    /**
     * De constructor maakt een nieuwe MySQLResult gebruik makend van de result
     * handler verkregen bij het uitvoeren van een query.
     *
     * @param Handler $result De result handler verkregen bij het uitvoeren van een query
     * @return Void
     */

    public function __construct( $result )
    {

        $this->result = $result;
    }

    
    /**
     * Methode om een enkele regel uit het resultaat op te vragen in de vorm van een array met key => value
     * paren. Elke key correspondeert met een geselecteerd veld uit de database.
     *
     * @return Array Een enkele regel uit het resultaat in vorm van een array met key => value paren
     */

    public function fetch_assoc( )
    {

        return mysql_fetch_assoc( $this->result );
    }

    
    /**
     * Methode om het hele resultaat in één array op te vragen. De array is een lijst van alle geselecteerde
     * regels opgevraagd met de fetch_assoc methode
     *
     * @return Array Een lijst met alle geselecteerde regels
     */

    public function fetch_all( )
    {

        $result = array( );
        while( $row = $this->fetch_assoc( ) ) {
            $result[] = $row;
        }

        return $result;
    }

    
    /**
     * Methode om het aantal regels uit het resultaat op te vragen.
     *
     * @return Integer Het aantal regels waaruit het resultaat bestaat
     */

    public function rows( )
    {

        return mysql_num_rows( $this->result );
    }
}

?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
 
/**
 * Exception.php. Dit bestand bevat alle exception klassen de bij de Database package horen.
 * De Database package bevat alle klassen die rechtstreeks met de Database communiceren
 * en gebruik maken van Database specifieke functies uit PHP.
 *
 * @package Database
 * @subpackage Exception
 * @author Niels Kieviet <[email protected]>
 * @version $Revision v.100$
 * @copyright Copyright (c) 2010, Niels Kieviet
 */

/**
 * De DatabaseException klasse. De DatabaseException klasse is een extentie van de standaart
 * Exception klasse en wordt gebruikt om fouten die optreden tijdens het gebruik van de database
 * naar voren te brengen.
 *
 * De DatabaseException klasse is gemaakt om het mogelijk te maken om in een try catch blok
 * het verschil te maken tussen een normale Exception en een DatabaseException
 */

class DatabaseException extends Exception { }
?>
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.