Oude database class

Gestart doorRobbeing2 reacties69 weergaven

3 berichten · pagina 1 van 1

Robbeing

Lid · Topicstarter

Berichten
308
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Ik was wat aan het rondneuzen in oude projecten van me, en het viel me op dat een oude database class die ik heb geschreven telkens weer voorkwam.

Heb hem nog eens bekeken, en vond hem nog goed mits die ook meer dan een jaar geleden gemaakt is.

Hij is gemakkelijk om aan te passen, en uit te breiden. Heb in één van mn projecten ook een pagination extensie gevonden. Heb die extensie er ook maar bijgestoken.

Je gebruikt hem als volgt.

Select Querys:

[COLOR= #0000BB]<?php
$db[/COLOR] [COLOR= #007700]= new[/COLOR] Database[COLOR= #007700]();[/COLOR]
[COLOR= #0000BB]$sql[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]"SELECT _SELECT_ FROM jetabel WHERE id = [id] LIMIT 1;"[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$qry[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$db[/COLOR][COLOR= #007700]->[/COLOR]select[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]name, email, ...[/COLOR][COLOR= #007700]));[/COLOR] of [COLOR= #0000BB]$db[/COLOR][COLOR= #007700]->[/COLOR]select[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]*[/COLOR][COLOR= #007700]));[/COLOR]

[COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$qry[/COLOR][COLOR= #007700]->[/COLOR]fetch[COLOR= #007700]([/COLOR]true[COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$results[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$qry[/COLOR][COLOR= #007700]->[/COLOR]fetchAll[COLOR= #007700]([/COLOR]true[COLOR= #007700],[/COLOR] true[COLOR= #007700]);[/COLOR]
?>


Update/Insert Querys:

[COLOR= #0000BB]<?php
$db[/COLOR] [COLOR= #007700]= new[/COLOR] Database[COLOR= #007700]();[/COLOR]

[COLOR= #0000BB]$update[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]"UPDATE jetabel SET _UPDATE WHERE id = 4 LIMIT 1;"[/COLOR]
[COLOR= #0000BB]$uQry[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$db[/COLOR][COLOR= #007700]->[/COLOR]update[COLOR= #007700]([/COLOR][COLOR= #0000BB]$update[/COLOR][COLOR= #007700],[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]name[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #DD0000]Robbe[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]email[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #DD0000]sdsdf@one2xs.com[/COLOR][COLOR= #007700]));[/COLOR]
[COLOR= #0000BB]$uSuccess[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$uQry[/COLOR][COLOR= #007700]->[/COLOR]launch[COLOR= #007700]();[/COLOR]

[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$uSucces[/COLOR][COLOR= #007700]) {[/COLOR] [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]gelukt[/COLOR][COLOR= #007700]; }[/COLOR] [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR][URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]niets veranderd[/COLOR][COLOR= #007700]; }[/COLOR]
[COLOR= #FF8000]// Dit kan ook met insert querys[/COLOR]

[COLOR= #0000BB]$insert[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]"INSERT INTO jetabel (_FIELDS_) VALUES(_VALUES_);"[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$iQry[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$db[/COLOR][COLOR= #007700]->[/COLOR]insert[COLOR= #007700]([/COLOR][COLOR= #0000BB]$insert[/COLOR][COLOR= #007700],[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]name[/COLOR][COLOR= #007700]=>[/COLOR][COLOR= #DD0000]Robbe[/COLOR][COLOR= #007700],[/COLOR] email [COLOR= #007700]=[/COLOR][COLOR= #DD0000]nieuwaccount@one2xs.com[/COLOR][COLOR= #007700]));[/COLOR]
[COLOR= #0000BB]$iQry[/COLOR][COLOR= #007700]->[/COLOR]launch[COLOR= #007700]();[/COLOR]

[COLOR= #FF8000]//Method chaining kan ook.[/COLOR]
[COLOR= #0000BB]$db[/COLOR][COLOR= #007700]->[/COLOR]insert[COLOR= #007700]([/COLOR][COLOR= #0000BB]$insert[/COLOR][COLOR= #007700],[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]name[/COLOR][COLOR= #007700]=>[/COLOR][COLOR= #DD0000]Robbe[/COLOR][COLOR= #007700],[/COLOR] email [COLOR= #007700]=[/COLOR][COLOR= #DD0000]nieuwaccount@one2xs.com[/COLOR][COLOR= #007700]))->[/COLOR]launch[COLOR= #007700]();[/COLOR]
?>


Hou er wel rekening mee dat ik deze een jaar geleden heb gemaakt.
Alvast bedankt, hoop dat dit helpt voor sommigen.

De class:
Spoiler tonen
[COLOR= #0000BB]<?php[/COLOR]
[COLOR= #FF8000]/**
 * Database Class
 * Alles om te connecteren met de database, en querys gemakkelijk af te handelen
 *
 * @author             Robbe I.
 * @copyright         Robbe I. - Alle rechten voorbehouden
 * @created         23/05/2011
 * @last-update     14/02/2012
 * @email            robbe@westdesign.be
 **/
 
// Executeerbare DBstatements moeten deze interface implementeren[/COLOR]
interface iDBExecutableStatement [COLOR= #007700]{[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] launch[COLOR= #007700]();    
}[/COLOR]

[COLOR= #FF8000]// (Select) DBStatements moeten deze interface implementeren[/COLOR]
interface iDBSelectableStatement [COLOR= #007700]{[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] fetch[COLOR= #007700]();[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] fetchAll[COLOR= #007700]();[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] getRowCount[COLOR= #007700]();
}[/COLOR]

[URL="http://www.php.net/class"]class[/URL] Database [COLOR= #007700]{[/COLOR]
    
    const mysql_host [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]localhost[/COLOR][COLOR= #007700];[/COLOR]
    const mysql_username [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]gebruiker[/COLOR][COLOR= #007700];[/COLOR]
    const mysql_password [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]ww[/COLOR][COLOR= #007700];[/COLOR]
    const mysql_database [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]db[/COLOR][COLOR= #007700];[/COLOR]
    
    [COLOR= #FF8000]// MySQL Connection[/COLOR]
    [URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$conn[/COLOR][COLOR= #007700];[/COLOR]
    
    [URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$sql[/COLOR][COLOR= #007700];[/COLOR]
    
    [COLOR= #FF8000]/**
     * Constructor
     * Initialiseerde MySQL connectie, en selecteerde db
     *
     * @since 1.0.0
     *
     * @acces public
     * @return void
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __construct[COLOR= #007700]() {[/COLOR]
        [COLOR= #0000BB]$conn[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_connect"]mysql_connect[/URL][COLOR= #007700]([/COLOR]Database[COLOR= #007700]::[/COLOR]mysql_host[COLOR= #007700],[/COLOR] Database[COLOR= #007700]::[/COLOR]mysql_username[COLOR= #007700],[/COLOR] Database[COLOR= #007700]::[/COLOR]mysql_password[COLOR= #007700]);[/COLOR]
        
        [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][COLOR= #0000BB]$conn[/COLOR][COLOR= #007700]) {[/COLOR]
            throw [COLOR= #007700]new[/COLOR] DBException[COLOR= #007700]([/COLOR][COLOR= #DD0000]Could not connect to MySQL Database.[/COLOR][COLOR= #007700]);
        }[/COLOR]
        [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
            [COLOR= #0000BB]$db[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_select_db"]mysql_select_db[/URL][COLOR= #007700]([/COLOR]Database[COLOR= #007700]::[/COLOR]mysql_database[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$conn[/COLOR][COLOR= #007700]);[/COLOR]
            
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][COLOR= #0000BB]$db[/COLOR][COLOR= #007700]) {[/COLOR]
                throw [COLOR= #007700]new[/COLOR] DBException[COLOR= #007700]([/COLOR][COLOR= #DD0000]De databank "[/COLOR][COLOR= #007700].[/COLOR]Database[COLOR= #007700]::[/COLOR]mysql_database[COLOR= #007700].[/COLOR][COLOR= #DD0000]" kon niet gevonden worden.<br />[/COLOR]
                                     [COLOR= #007700].[/COLOR][COLOR= #DD0000]Gelieve de correcte gegevens in te voeren.[/COLOR][COLOR= #007700]);
            }[/COLOR]
            [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]conn [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$conn[/COLOR][COLOR= #007700];    
            }
        }
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * select()
     * Methode die een nieuwe DBSelectStatement instantie maakt, en deze retourneerd
     *
     * @since 1.0.0
     *
     * @param String $sql                | De SQL
     * @param Array $fields                | Associatieve array met waarden
     * @acces public
     * @return DBSelectStatement
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] select[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$page[/COLOR] [COLOR= #007700]=[/COLOR] null[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$resultsPerPage[/COLOR] [COLOR= #007700]=[/COLOR] null[COLOR= #007700]) {[/COLOR]
        [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]sql [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$sql[/COLOR][COLOR= #007700];[/COLOR]
        
        [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][URL="http://www.php.net/strstr"]strstr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]_SELECT_[/COLOR][COLOR= #007700])) {[/COLOR]
            [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]throwException[COLOR= #007700]([/COLOR][COLOR= #DD0000]"Uw select query moet "_SELECT_" bevatten waar de geselecteerde waarden moeten komen."[/COLOR][COLOR= #007700]);    
        }[/COLOR]
        [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$page[/COLOR] [COLOR= #007700]===[/COLOR] null [COLOR= #007700]&&[/COLOR] [COLOR= #0000BB]$resultsPerPage[/COLOR] [COLOR= #007700]===[/COLOR] null[COLOR= #007700]) {[/COLOR]
                [URL="http://www.php.net/return"]return[/URL] [COLOR= #007700]new[/COLOR] DBSelectStatement[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]);
            }[/COLOR]
            [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                [URL="http://www.php.net/return"]return[/URL] [COLOR= #007700]new[/COLOR] DBSelectPaginationStatement[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$page[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$resultsPerPage[/COLOR][COLOR= #007700]);
            }
        }
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * update()
     * Methode die een nieuwe DBUpdateStatement instantie maakt, en deze retourneerd
     *
     * @since 1.0.0
     *
     * @param String $sql                | De SQL
     * @param Array $fields                | Associatieve array met waarden die moeten worden geüpdate, en de waarden
     * @acces public
     * @return DBUpdateStatement
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] update[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]) {[/COLOR]
        [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]sql [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$sql[/COLOR][COLOR= #007700];[/COLOR]
        
        [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][URL="http://www.php.net/strstr"]strstr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]_UPDATE_[/COLOR][COLOR= #007700])) {[/COLOR]
            [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]throwException[COLOR= #007700]([/COLOR][COLOR= #DD0000]"Uw update query moet "_UPDATE_" bevatten waar de waarden moeten komen die worden geüpdate."[/COLOR][COLOR= #007700]);    
        }[/COLOR]
        [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
            [URL="http://www.php.net/return"]return[/URL] [COLOR= #007700]new[/COLOR] DBUpdateStatement[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]);    
        }
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * insert()
     * Methode die een nieuwe DBInsertStatement instantie maakt, en deze retourneerd
     *
     * @since 1.0.0
     *
     * @param String $sql                | De SQL
     * @param Array $fields                | Associatieve array met de velden die moeten worden ingevoerd, en de waarden die deze velden moeten bevatten
     * @acces public
     * @return DBInsertStatement
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] insert[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]) {[/COLOR]
        [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]sql [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$sql[/COLOR][COLOR= #007700];[/COLOR]
        
        [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][URL="http://www.php.net/strstr"]strstr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]_FIELDS_[/COLOR][COLOR= #007700]) || ![/COLOR][URL="http://www.php.net/strstr"]strstr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]_VALUES_[/COLOR][COLOR= #007700])) {[/COLOR]
            [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]throwException[COLOR= #007700]([/COLOR][COLOR= #DD0000]"Uw insert query moet "_FIELDS_" en "_VALUES_" bevatten waar de velden en waarden moeten komen."[/COLOR][COLOR= #007700]);    
        }[/COLOR]
        [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
            [URL="http://www.php.net/return"]return[/URL] [COLOR= #007700]new[/COLOR] DBInsertStatement[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]);    
        }
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * throwException()
     * Gooit een DBException
     *
     * @since 1.0.0
     *
     * @param String $message            | Bericht v/d uitzondering
     * @param int $code                    | Errorcode v/d uitzondering
     * @acces public
     * @return void
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] throwException[COLOR= #007700]([/COLOR][COLOR= #0000BB]$message[/COLOR] [COLOR= #007700]=[/COLOR] null[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$code[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]500[/COLOR][COLOR= #007700]) {[/COLOR]
        [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$message[/COLOR] [COLOR= #007700]===[/COLOR] null[COLOR= #007700]) {[/COLOR]
            throw [COLOR= #007700]new[/COLOR] DBException[COLOR= #007700]([/COLOR][COLOR= #DD0000]Er is een fout MySQL fout opgetreden.<br />[/COLOR]
                                 [COLOR= #007700].[/COLOR][COLOR= #DD0000]Query: [/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]sql[COLOR= #007700].[/COLOR][COLOR= #DD0000]<br />[/COLOR]
                                 [COLOR= #007700].[/COLOR][COLOR= #DD0000]Melding: [/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_error"]mysql_error[/URL][COLOR= #007700],[/COLOR] [COLOR= #0000BB]100[/COLOR][COLOR= #007700]);
        }[/COLOR]
        [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
            throw [COLOR= #007700]new[/COLOR] DBException[COLOR= #007700]([/COLOR][COLOR= #0000BB]$message[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$code[/COLOR][COLOR= #007700]);    
        }
    }
    
}[/COLOR]

[URL="http://www.php.net/class"]class[/URL] DBException extends Exception [COLOR= #007700]{}[/COLOR]

[COLOR= #FF8000]/**
 * SelectStatement
 * Child-class of Database which provies extended methods specific for select querys
 */[/COLOR]
[URL="http://www.php.net/class"]class[/URL] DBSelectStatement extends Database [COLOR= #007700]{[/COLOR]
    
    [URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$query[/COLOR][COLOR= #007700];[/COLOR]
    [URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$rown[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
    
    [URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$tempRow[/COLOR][COLOR= #007700];[/COLOR]
    
    [COLOR= #FF8000]/**
     * Constructor
     * Initialiseerd alles om de select-query uit te voeren
     *
     * @since 1.0.0
     *
     * @param String $sql            | SQL 
     * @param Array $fields            | Array met de te selecteren waarden
     * @acces public
     * @return void
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]) {[/COLOR]
        [COLOR= #0000BB]$select[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]getFields[COLOR= #007700]([/COLOR][COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]);[/COLOR]
        [COLOR= #0000BB]$sql[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/str_replace"]str_replace[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]_SELECT_[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$select[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$sql[/COLOR][COLOR= #007700]);[/COLOR]
        
        [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]query [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700]);
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * fetch()
     * Haalt een bepaalde rij op v/e bepaalde query, en retourneerd deze
     *
     * @since 1.0.0
     *
     * @param bool $asArray        | Retourneer als array ja/nee
     * @param int $rown            | Rijnummer v/h resultaat (indien niet als array)
     * @acces public
     * @return String $result
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] fetch[COLOR= #007700]([/COLOR][COLOR= #0000BB]$asArray[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$xss[/COLOR] [COLOR= #007700]=[/COLOR] true[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$rown[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) {[/COLOR]
        [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][COLOR= #0000BB]$asArray[/COLOR][COLOR= #007700]) {[/COLOR]
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$xss[/COLOR][COLOR= #007700]) {[/COLOR]
                [COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]= @[/COLOR]htmlspecialchars[COLOR= #007700](@[/COLOR][URL="http://www.php.net/mysql_result"]mysql_result[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]query[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$rown[/COLOR][COLOR= #007700]));
            }[/COLOR]
            [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                [COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_result"]mysql_result[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]query[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$rown[/COLOR][COLOR= #007700]);
            }
        }[/COLOR]
        [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][COLOR= #0000BB]$xss[/COLOR][COLOR= #007700]) {[/COLOR]
                [COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_fetch_array"]mysql_fetch_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]query[COLOR= #007700]);
            }[/COLOR]
            [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                [COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_fetch_array"]mysql_fetch_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]query[COLOR= #007700]);[/COLOR]
                [COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
                
                [URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$v[/COLOR][COLOR= #007700]) {[/COLOR]
                    [COLOR= #0000BB]$result[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]] = @[/COLOR]htmlspecialchars[COLOR= #007700]([/COLOR][COLOR= #0000BB]$v[/COLOR][COLOR= #007700]);
                }
            }
        }[/COLOR]
        
        [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$result[/COLOR][COLOR= #007700];
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * fetchAll()
     * Retourneerd een associatieve array met gevraagde resultaten, indien deze als array word opgevraagd.
     * Anders wordt er door iedere row geloopt, indien gevraagd, tegen xss beveiligd. En geretourneerd
     *
     * @since 1.0.0
     *
     * @param bool $array            | retourneer als array
     * @param bool $multi            | retourneer als multi-dimensionale array, ook als er maar één rij uit de opgegeven query komt
     * @param bool $xss                | filter op xss ja/nee
     * @acces public
     * @return Array
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] fetchAll[COLOR= #007700]([/COLOR][COLOR= #0000BB]$array[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$multi[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$xss[/COLOR] [COLOR= #007700]=[/COLOR] true[COLOR= #007700]) {[/COLOR]
        
        [COLOR= #FF8000]// Word alles liever als array opgevraagd[/COLOR]
        [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$array[/COLOR][COLOR= #007700]) {[/COLOR]
            [COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
            
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$multi[/COLOR] [COLOR= #007700]||[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]getRowCount[COLOR= #007700]() >[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]) {[/COLOR]
                [URL="http://www.php.net/while"]while[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR] [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_fetch_array"]mysql_fetch_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]query[COLOR= #007700])) {[/COLOR]
                    [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700][] =[/COLOR] [COLOR= #0000BB]$data[/COLOR][COLOR= #007700];
                }[/COLOR]
                
                [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700];
            }[/COLOR]
            [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                [URL="http://www.php.net/return"]return[/URL] [COLOR= #007700]@[/COLOR][URL="http://www.php.net/mysql_fetch_array"]mysql_fetch_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]query[COLOR= #007700]);;    
            }
        }[/COLOR]
        [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR] [COLOR= #FF8000]// Door iedere row loopen en deze retourneren[/COLOR]
            [URL="http://www.php.net/while"]while[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]tempRow [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_fetch_array"]mysql_fetch_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]query[COLOR= #007700])) {[/COLOR]
                [COLOR= #0000BB]$data[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
            
                [COLOR= #FF8000]// Als beveiligen tegen XSS aan staat, een htmlspecialchars over alle waarden gebruiken.[/COLOR]
                [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$xss[/COLOR][COLOR= #007700]) {[/COLOR]
                    [URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]tempRow [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$field[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$value[/COLOR][COLOR= #007700]) {[/COLOR]
                        [COLOR= #FF8000]// Alleen als het veld geen numerieke waarde is, deze toevoegen aan de return array[/COLOR]
                        [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][URL="http://www.php.net/is_numeric"]is_numeric[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$field[/COLOR][COLOR= #007700])) {[/COLOR]
                            [COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$field[/COLOR][COLOR= #007700]] =[/COLOR] htmlspecialchars[COLOR= #007700]([/COLOR][COLOR= #0000BB]$value[/COLOR][COLOR= #007700]);
                        }
                    }[/COLOR]
                    
                    [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$data[/COLOR][COLOR= #007700];
                }[/COLOR]
                [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                    [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]tempRow[COLOR= #007700];
                }
            }
        }
    }[/COLOR]
    
    
    [COLOR= #FF8000]/**
     * getRowCount()
     * Retourneerd het aantal rijen dat een bepaalde query heeft opgeleverd
     *
     * @since 1.0.0
     *
     * @acces public
     * @return int [rows]
     **/[/COLOR]     
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] getRowCount[COLOR= #007700]() {[/COLOR]
        [COLOR= #0000BB]$rows[/COLOR] [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_num_rows"]mysql_num_rows[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]query[COLOR= #007700]);[/COLOR]
        
        [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$rows[/COLOR][COLOR= #007700];    
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * getFields()
     * Maakt aan de hand van een array met waarden, een stukje SQL voor de select-query
     * en retourneerd deze.
     *
     * @since 1.0.0
     *
     * @param Array $fields                | Array met waarden
     * @acces private
     * @return String [sql]
     **/[/COLOR]
    [URL="http://www.php.net/private"]private[/URL] [COLOR= #007700]function[/COLOR] getFields[COLOR= #007700]([/COLOR][COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]) {[/COLOR]
        [COLOR= #0000BB]$fieldsCount[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/count"]count[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]);[/COLOR]
        [COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]""[/COLOR][COLOR= #007700];[/COLOR]
        
        [URL="http://www.php.net/for"]for[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]=[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]<[/COLOR] [COLOR= #0000BB]$fieldsCount[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++) {[/COLOR]
            [COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700].= ([/COLOR][COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #0000BB]$fieldsCount[/COLOR][COLOR= #007700]-[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700]) ?[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]] :[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]].[/COLOR][COLOR= #DD0000], [/COLOR][COLOR= #007700];
        }[/COLOR]
        
        [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700];
    }
}[/COLOR]

[URL="http://www.php.net/class"]class[/URL] DBUpdateStatement extends Database implements iDBExecutableStatement[COLOR= #007700]{[/COLOR]
    
    [URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$sql[/COLOR][COLOR= #007700];[/COLOR]
    
    [COLOR= #FF8000]/**
     * Constructor
     * Initialiseerd de class voor het uitvoeren v/d query
     *
     * @since 1.0.0
     *
     * @param String $sql                | De SQL
     * @param Array $fields                | Array met de velden & waarden die moeten worden geüpdate
     * @acces public
     * @return void
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]) {[/COLOR]
        [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]sql [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]formatSQL[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]);
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * launch()
     * Voert de query uit, en retourneerd true indien de query geslaagd is, anders false
     *
     * @since 1.0.0
     *
     * @acces public
     * @return bool [gelukt]
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] launch[COLOR= #007700]() {[/COLOR]
        [COLOR= #0000BB]$qry[/COLOR] [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]sql[COLOR= #007700]);[/COLOR]
        
        [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](@[/COLOR][URL="http://www.php.net/mysql_affected_rows"]mysql_affected_rows[/URL][COLOR= #007700]() >[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) {[/COLOR]
            [URL="http://www.php.net/return"]return[/URL] true[COLOR= #007700];
        }[/COLOR]
        [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
            [URL="http://www.php.net/return"]return[/URL] false[COLOR= #007700];    
        }
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * formatSQL()
     * Maakt de SQL-Query op aan de hand van de gegeven waarden
     *
     * @since 1.0.0
     *
     * @param String $sql                | De SQL
     * @param Array $fields                | Array met de velden & waarden die moeten worden geüpdate
     * @acces private
     * @return String [sql]
     **/[/COLOR]
    [URL="http://www.php.net/private"]private[/URL] [COLOR= #007700]function[/COLOR] formatSQL[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]) {[/COLOR]
        [COLOR= #0000BB]$fieldsCount[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/count"]count[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]);[/COLOR]
        [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
        [COLOR= #0000BB]$update[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]""[/COLOR][COLOR= #007700];[/COLOR]
        
        [URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$fields[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$field[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$value[/COLOR][COLOR= #007700]) {[/COLOR]
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++ ==[/COLOR] [COLOR= #0000BB]$fieldsCount[/COLOR][COLOR= #007700]-[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700]) {[/COLOR]
                [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][URL="http://www.php.net/is_numeric"]is_numeric[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$value[/COLOR][COLOR= #007700]) && ![/COLOR][URL="http://www.php.net/strstr"]strstr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$value[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$field[/COLOR][COLOR= #007700])) {[/COLOR]
                    [COLOR= #0000BB]$update[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #0000BB]$field[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000] = [/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$value[/COLOR][COLOR= #007700]).[/COLOR][COLOR= #DD0000][/COLOR][COLOR= #007700];
                }[/COLOR]
                [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                    [COLOR= #0000BB]$update[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #0000BB]$field[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000] = [/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$value[/COLOR][COLOR= #007700]);
                }
            }[/COLOR]
            [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][URL="http://www.php.net/is_numeric"]is_numeric[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$value[/COLOR][COLOR= #007700]) && ![/COLOR][URL="http://www.php.net/strstr"]strstr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$value[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$field[/COLOR][COLOR= #007700])) {[/COLOR]
                    [COLOR= #0000BB]$update[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #0000BB]$field[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000] = [/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$value[/COLOR][COLOR= #007700]).[/COLOR][COLOR= #DD0000], [/COLOR][COLOR= #007700];
                }[/COLOR]
                [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                    [COLOR= #0000BB]$update[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #0000BB]$field[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000] = [/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$value[/COLOR][COLOR= #007700]).[/COLOR][COLOR= #DD0000], [/COLOR][COLOR= #007700];
                }
            }
        }[/COLOR]
        
        [COLOR= #0000BB]$sql[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/str_replace"]str_replace[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]_UPDATE_[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$update[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$sql[/COLOR][COLOR= #007700]);[/COLOR]
        
        [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$sql[/COLOR][COLOR= #007700];
    }
}[/COLOR]

[URL="http://www.php.net/class"]class[/URL] DBInsertStatement extends Database implements iDBExecutableStatement [COLOR= #007700]{[/COLOR]
    
    [URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$sql[/COLOR][COLOR= #007700];[/COLOR]
    [URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$qry[/COLOR][COLOR= #007700];[/COLOR]
    
    [COLOR= #FF8000]/**
     * Constructor
     * Initialiseerd de instantie voor het uitvoeren v/d query
     *
     * @since 1.0.0
     *
     * @param String $sql                | De SQL
     * @param Array $fields                | Array met de te invoeren velden & zijn waarden.
     * @acces public
     * @return void
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]) {[/COLOR]
        [COLOR= #0000BB]$fs[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]getFields[COLOR= #007700]([/COLOR][COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]);[/COLOR]
        [COLOR= #0000BB]$vs[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]getValues[COLOR= #007700]([/COLOR][COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]);[/COLOR]
        
        [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]sql [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]getSQL[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fs[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$vs[/COLOR][COLOR= #007700]);
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * launch()
     * Voert de query uit, en retourneerd true indien deze geslaagd is, anders false
     *
     * @since 1.0.0
     *
     * @acces public
     * @return bool [gelukt]
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] launch[COLOR= #007700]() {[/COLOR]
        [COLOR= #0000BB]$qry[/COLOR] [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]sql[COLOR= #007700]);[/COLOR]
        [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]qry [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$qry[/COLOR][COLOR= #007700];[/COLOR]
                
        [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](@[/COLOR][URL="http://www.php.net/mysql_affected_rows"]mysql_affected_rows[/URL][COLOR= #007700]() >[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) {[/COLOR]
            [URL="http://www.php.net/return"]return[/URL] true[COLOR= #007700];
        }[/COLOR]
        [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
            [URL="http://www.php.net/return"]return[/URL] false[COLOR= #007700];    
        }
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * getLastRowID()
     * Retourneerd de ID van de laatste insert-query
     *
     * @since 1.0.0
     *
     * @acces public
     * @return int [id]
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] getLastRowID[COLOR= #007700]() {[/COLOR]
        [URL="http://www.php.net/return"]return[/URL] [COLOR= #007700]@[/COLOR][URL="http://www.php.net/mysql_insert_id"]mysql_insert_id[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]qry[COLOR= #007700]);    
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * getFields()
     * Filtert de insert gegevens uit de meegegeven array, en zet deze om in een stukje SQL.
     * Tenslotte wordt dit geretourneerd
     *
     * @since 1.0.0
     *
     * @param Array $fields                | Array met waarden
     * @acces private
     * @return String [sql]
     **/[/COLOR]
    [URL="http://www.php.net/private"]private[/URL] [COLOR= #007700]function[/COLOR] getFields[COLOR= #007700]([/COLOR][COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]) {[/COLOR]
        [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
        [COLOR= #0000BB]$isert_fields[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]""[/COLOR][COLOR= #007700];[/COLOR]
        
        [URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$fields[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$field[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$value[/COLOR][COLOR= #007700]) {[/COLOR]
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++ ==[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) {[/COLOR]
                [COLOR= #0000BB]$isert_fields[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #0000BB]$field[/COLOR][COLOR= #007700];    
            }[/COLOR]
            [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                [COLOR= #0000BB]$isert_fields[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #DD0000], [/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$field[/COLOR][COLOR= #007700];    
            }
        }[/COLOR]
        
        [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$isert_fields[/COLOR][COLOR= #007700];
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * getValues()
     * Filtert de waarden v/d insert gegevens uit de meegegeven array, en zet deze om in een stukje SQL.
     * Tenslotte wordt dit geretourneerd
     *
     * @since 1.0.0
     *
     * @param Array $fields                | Array met waarden
     * @acces private
     * @return String [sql]
     **/[/COLOR]
    [URL="http://www.php.net/private"]private[/URL] [COLOR= #007700]function[/COLOR] getValues[COLOR= #007700]([/COLOR][COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]) {[/COLOR]
        [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
        [COLOR= #0000BB]$vals[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]""[/COLOR][COLOR= #007700];[/COLOR]
        
        [URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$fields[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$field[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$value[/COLOR][COLOR= #007700]) {[/COLOR]
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++ ==[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) {[/COLOR]
                [COLOR= #0000BB]$vals[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #DD0000][/COLOR][COLOR= #007700].@[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$value[/COLOR][COLOR= #007700]).[/COLOR][COLOR= #DD0000][/COLOR][COLOR= #007700];;    
            }[/COLOR]
            [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                [COLOR= #0000BB]$vals[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #DD0000], [/COLOR][COLOR= #007700].@[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$value[/COLOR][COLOR= #007700]).[/COLOR][COLOR= #DD0000][/COLOR][COLOR= #007700];    
            }
        }[/COLOR]
        
        [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$vals[/COLOR][COLOR= #007700];
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * getSQL()
     * Maakt de afgewerkte SQL-code met de meegeven stukjes SQL-code,
     * en retourneerd deze
     *
     * @since 1.0.0
     *
     * @param String $sql                | De SQL
     * @param String $fields            | De SQL (met insert-velden)
     * @param String $fields            | De SQL (met de waarden v/d insert velden)
     * @acces private
     * @return String [sql]
     **/[/COLOR]
    [URL="http://www.php.net/private"]private[/URL] [COLOR= #007700]function[/COLOR] getSQL[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$values[/COLOR][COLOR= #007700]) {[/COLOR]
        [COLOR= #0000BB]$search[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR]
            [COLOR= #DD0000]_FIELDS_[/COLOR][COLOR= #007700],[/COLOR]
            [COLOR= #DD0000]_VALUES_[/COLOR]
        [COLOR= #007700]);[/COLOR]
        
        [COLOR= #0000BB]$replace[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR]
            [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700],[/COLOR]
            [COLOR= #0000BB]$values[/COLOR]
        [COLOR= #007700]);[/COLOR]
        
        [URL="http://www.php.net/return"]return[/URL] [URL="http://www.php.net/str_replace"]str_replace[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$search[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$replace[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$sql[/COLOR][COLOR= #007700]);
    }
}[/COLOR]

[COLOR= #FF8000]/**************************************************************************************
 * EXTENSIES
 * Alle DBStatements die standaard niet in de class zijn ingebouwd kunnen hier.
 **************************************************************************************/

/**
 * DBSelectPaginationStatement
 * Child-class of Database which provies extended methods specific for select querys
 * Pagination v1.0.0
 */[/COLOR]
[URL="http://www.php.net/class"]class[/URL] DBSelectPaginationStatement extends Database [COLOR= #007700]{[/COLOR]
    
    [URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$query[/COLOR][COLOR= #007700];[/COLOR]
    [URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$pQuery[/COLOR][COLOR= #007700];[/COLOR]
    [URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$rown[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
    
    [URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$tempRow[/COLOR][COLOR= #007700];[/COLOR]
    
    [URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$page[/COLOR][COLOR= #007700];[/COLOR]
    [URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$resultsPerPage[/COLOR][COLOR= #007700];[/COLOR]
    
    [COLOR= #FF8000]/**
     * Constructor
     * Initialiseerd alles om de select-query uit te voeren
     *
     * @since 1.0.0
     *
     * @param String $sql            | SQL 
     * @param Array $fields            | Array met de te selecteren waarden
     * @acces public
     * @return void
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fields[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$page[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$resultsPerPage[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]20[/COLOR][COLOR= #007700]) {[/COLOR]
        [COLOR= #0000BB]$select[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]getFields[COLOR= #007700]([/COLOR][COLOR= #0000BB]$fields[/COLOR][COLOR= #007700]);[/COLOR]
        [COLOR= #0000BB]$nsql[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/str_replace"]str_replace[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]_SELECT_[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]_LIMIT_[/COLOR][COLOR= #007700]),[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$select[/COLOR][COLOR= #007700],[/COLOR][COLOR= #DD0000][/COLOR][COLOR= #007700]),[/COLOR] [COLOR= #0000BB]$sql[/COLOR][COLOR= #007700]);[/COLOR]
        
        [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]page [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$page[/COLOR] [COLOR= #007700]-[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700];[/COLOR]
        [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]resultsPerPage [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$resultsPerPage[/COLOR][COLOR= #007700];[/COLOR]
        
        [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]query [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$nsql[/COLOR][COLOR= #007700]);[/COLOR]
        
        [COLOR= #0000BB]$limit[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]getLimit[COLOR= #007700]();[/COLOR]
        [COLOR= #0000BB]$psql[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/str_replace"]str_replace[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]_SELECT_[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]_LIMIT_[/COLOR][COLOR= #007700]),[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$select[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$limit[/COLOR][COLOR= #007700]),[/COLOR] [COLOR= #0000BB]$sql[/COLOR][COLOR= #007700]);[/COLOR]
        [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]pQuery [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$psql[/COLOR][COLOR= #007700]);
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * calculatePages()
     * Bereken het aantal paginas
     *
     * @since v1.0.0
     * @acces private
     * @return int [pages]
     **/[/COLOR]
    [URL="http://www.php.net/private"]private[/URL] [COLOR= #007700]function[/COLOR] calculatePages[COLOR= #007700]() {[/COLOR]
        [COLOR= #0000BB]$results[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]getRowCount[COLOR= #007700]();[/COLOR]
        
        [URL="http://www.php.net/return"]return[/URL] [URL="http://www.php.net/round"]round[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$results[/COLOR]/[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]resultsPerPage[COLOR= #007700]);
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * getPages()
     * Retourneerd een array met alle paginas die moeten worden getoond.
     *
     * @since v1.0.0
     * @acces public
     * @return Array [paginas]
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] getPages[COLOR= #007700]() {[/COLOR]
        [COLOR= #0000BB]$pages[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]calculatePages[COLOR= #007700]();[/COLOR]
        [COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
        
        [COLOR= #0000BB]$firstP[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700];[/COLOR]
        [COLOR= #0000BB]$lastP[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700];[/COLOR]
        
        [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]page[COLOR= #007700];[/COLOR]
        
        [URL="http://www.php.net/for"]for[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]=[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]<=[/COLOR] [COLOR= #0000BB]$pages[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++) {[/COLOR]
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]page [COLOR= #007700]>[/COLOR] [COLOR= #0000BB]0[/COLOR] [COLOR= #007700]&& ![/COLOR][COLOR= #0000BB]$firstP[/COLOR][COLOR= #007700]) {[/COLOR]
                [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700][] =[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]num[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #DD0000]first[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]current[/COLOR] [COLOR= #007700]=>[/COLOR] false[COLOR= #007700],[/COLOR] [COLOR= #DD0000]page[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]);[/COLOR]
                [COLOR= #0000BB]$firstP[/COLOR] [COLOR= #007700]=[/COLOR] true[COLOR= #007700];
            }[/COLOR]
            
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]>[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]page [COLOR= #007700]-[/COLOR][COLOR= #0000BB]3[/COLOR] [COLOR= #007700]&&[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]<[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]page [COLOR= #007700]+[/COLOR][COLOR= #0000BB]5[/COLOR][COLOR= #007700]) {[/COLOR]
                [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700][] =[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR]
                    [COLOR= #DD0000]num[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700],[/COLOR]
                    [COLOR= #DD0000]current[/COLOR] [COLOR= #007700]=> (([/COLOR][COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]page[COLOR= #007700]+[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700]) ?[/COLOR] true [COLOR= #007700]:[/COLOR] false[COLOR= #007700])
                );
            }[/COLOR]
            
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]page [COLOR= #007700]<[/COLOR] [COLOR= #0000BB]$pages[/COLOR][COLOR= #007700]-[/COLOR][COLOR= #0000BB]1[/COLOR] [COLOR= #007700]&&[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #0000BB]$pages[/COLOR] [COLOR= #007700]&& ![/COLOR][COLOR= #0000BB]$lastP[/COLOR][COLOR= #007700]) {[/COLOR]
                [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700][] =[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]num[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #DD0000]last[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]current[/COLOR] [COLOR= #007700]=>[/COLOR] false[COLOR= #007700],[/COLOR] [COLOR= #DD0000]page[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$pages[/COLOR][COLOR= #007700]);[/COLOR]
                [COLOR= #0000BB]$lastP[/COLOR] [COLOR= #007700]=[/COLOR] true[COLOR= #007700];
            }[/COLOR]
            [COLOR= #FF8000]/* Indien niet op de eerste pagina, toon eerste pagina knop
            if ($this->page > 0 && !$firstP) {
                $ret[] = array(num => first, current => false);
                $firstP = true;
            }
            
            // Indien de er maar 3 paginas zijn.
            if ($i <= 3) {
                $ret[] = array(
                    num => $i,
                    current => (($i == $this->page+1) ? true : false)
                );
            }
            
            // Indien er meer dan 7 paginas zijn.
            if ($i < $pages-3 && $i > 2) {
                if ((($i > $this->page - 2) && ($i < $this->page + 4) && ($i > 3)) && $this->page >= 3) {
                    
                    $ret[] = array(
                        num => $i,
                        current => (($i == $this->page+1) ? true : false)
                    );
                }
                
                if ((($i > round($pages/2) -3) && ($i < ($pages/2) + 3)) && $this->page < 3 ) {
                    $ret[] = array(
                        num => $i,
                        current => (($i == $this->page+1) ? true : false)
                    );
                }
            }
            
            // Toon laatste 3 paginas
            if ($pages >= 7 && $i > $pages-3) {
                $ret[] = array(
                        num => $i,
                        current => (($i == $this->page+1) ? true : false)
                    );
            }
            
            if ($this->page < $pages && !$lastP && $i == $pages) {
                $ret[] = array(num => last, current => false);
                $lastP = true;
            }*/[/COLOR]
            
        [COLOR= #007700]}[/COLOR]
        
        [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700];
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * fetch()
     * Haalt een bepaalde rij op v/e bepaalde query, en retourneerd deze
     *
     * @since 1.0.0
     *
     * @param bool $asArray        | Retourneer als array ja/nee
     * @param int $rown            | Rijnummer v/h resultaat
     * @acces public
     * @return String $result
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] fetch[COLOR= #007700]([/COLOR][COLOR= #0000BB]$asArray[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$xss[/COLOR] [COLOR= #007700]=[/COLOR] true[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$rown[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) {[/COLOR]
        [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][COLOR= #0000BB]$asArray[/COLOR][COLOR= #007700]) {[/COLOR]
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$xss[/COLOR][COLOR= #007700]) {[/COLOR]
                [COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]= @[/COLOR]htmlspecialchars[COLOR= #007700](@[/COLOR][URL="http://www.php.net/mysql_result"]mysql_result[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]pQuery[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$rown[/COLOR][COLOR= #007700]));
            }[/COLOR]
            [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                [COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_result"]mysql_result[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]pQuery[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$rown[/COLOR][COLOR= #007700]);
            }
        }[/COLOR]
        [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][COLOR= #0000BB]$xss[/COLOR][COLOR= #007700]) {[/COLOR]
                [COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_fetch_array"]mysql_fetch_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]pQuery[COLOR= #007700]);
            }[/COLOR]
            [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                [COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_fetch_array"]mysql_fetch_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]pQuery[COLOR= #007700]);[/COLOR]
                [COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
                
                [URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$v[/COLOR][COLOR= #007700]) {[/COLOR]
                    [COLOR= #0000BB]$result[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]] = @[/COLOR]htmlspecialchars[COLOR= #007700]([/COLOR][COLOR= #0000BB]$v[/COLOR][COLOR= #007700]);
                }
            }
        }[/COLOR]
        
        [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$result[/COLOR][COLOR= #007700];
    }[/COLOR]
    
    [COLOR= #FF8000]/**
     * fetchAll()
     * Retourneerd een associatieve array met gevraagde resultaten, indien deze als array word opgevraagd.
     * Anders wordt er door iedere row geloopt, indien gevraagd, tegen xss beveiligd. En geretourneerd
     *
     * @since 1.0.0
     *
     * @param bool $array            | retourneer als array
     * @param bool $multi            | retourneer als multi-dimensionale array, ook als er maar één rij uit de opgegeven query komt
     * @param bool $xss                | filter op xss ja/nee
     * @acces public
     * @return Array
     **/[/COLOR]
    [URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] fetchAll[COLOR= #007700]([/COLOR][COLOR= #0000BB]$array[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$multi[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$xss[/COLOR] [COLOR= #007700]=[/COLOR] true[COLOR= #007700]) {[/COLOR]
        
        [COLOR= #FF8000]// Word alles liever als array opgevraagd[/COLOR]
        [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$array[/COLOR][COLOR= #007700]) {[/COLOR]
            [COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
            
            [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$multi[/COLOR] [COLOR= #007700]||[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]getRowCount[COLOR= #007700]() >[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]) {[/COLOR]
                [URL="http://www.php.net/while"]while[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR] [COLOR= #007700]= @[/COLOR][URL="http://www.php.net/mysql_fetch_array"]mysql_fetch_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]pQuery[COLOR= #007700])) {[/COLOR]
                    [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700][] =[/COLOR] [COLOR= #0000BB]$data[
0
Thom

Lid

Berichten
10.654
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Handig zo met arrays, overzichtelijker.
0
Robbeing

Lid · Topicstarter

Berichten
308
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Thommity schreef:
Handig zo met arrays, overzichtelijker.
Thx smile
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren