De uiteindelijk class die gebruikt word (klanten.class.php):


<?php

/**
 * Klanten Data Object
 * @Author Marten van Urk
 *
 */

class Klanten {
	public $iID; 
    public $sNaam; 
    public $sEmail; 
    public $sAdres; 
    public $sPostcode; 
    public $sWoonplaats; 	
	
    /**
     * Constructor
     * We definieren deze constructor voor de duidelijkheid. We gebruiken hem niet
     *
     */
    public function Klanten() {}
    
    /**
     * Function: getData()
     * @author Marten van Urk
     * 
     * Haal gebruikersgegevens uit de database aan de hand van de naam
     *
     * @param string $klantnaam De klantnaam waar op gezocht moet worden
     * @param resource $connection Connection Identifier
     */
    public function getData($klantnaam, $connection) {
    	$aData = array();
    	
    	$sQuery  = "SELECT * FROM klanten WHERE naam = '". mysql_real_escape_string($klantnaam) ."'";
    	
    	/**
    	 * Standaard foutafhandeling word onderbroken. Dus zelf foutafhandeling aanmaken!
    	 */
    	$rResult = @mysql_query($sQuery); 
    	
    	/**
    	 * Er is een query fout
    	 */
    	if ($rResult === false) {
    		throw new Exception('Query mislukt: ' . mysql_error() . '. Dit is MySQL errorcode: ' . mysql_errno(), SQL_QUERY_ERROR);
    	}
  		/**
    	 * Geen gebruikers gevonden
    	 */  	
    	if (@mysql_num_rows($rResult) == 0) {
    		throw new Exception('Geen gebruikers gevonden met de naam ' . $klantnaam, NO_USER);
    	}
    	
    	/**
    	 * Geen foutmeldingen tegen gekomen. Query is gelukt dus vul de array met data
    	 */
    	$aData = @mysql_fetch_assoc($rResult);
    	
    	$this->iID         = $aData['id']; 
  		$this->sNaam       = $aData['naam']; 
  		$this->sEmail      = $aData['email']; 
  		$this->sAdres      = $aData['adres']; 
  		$this->sPostcode   = $aData['postcode']; 
  		$this->sWoonplaats = $aData['woonplaats'];    	
    }	
    
    /**
     * Function: insertData()
     * @author Marten van Urk
     * Voer gebruikers in in de database
     *
     * @param resource $connection Connection Identifier
     */
    public function insertData($connection) {
    	$sQuery = "INSERT INTO klanten (naam, email, adres, postcode, woonplaats) 
    				VALUES ('". mysql_real_escape_string($this->sNaam) ."',
    						'". mysql_real_escape_string($this->sEmail) ."',
    						'". mysql_real_escape_string($this->sAdres) ."',
    						'". mysql_real_escape_string($this->sPostcode) ."',
    						'". mysql_real_escape_string($this->sWoonplaats) ."')";
    	
	    $rResult = mysql_query($sQuery); 

    	if ($rResult === FALSE) { 
      		throw new Exception('Query mislukt: ' . mysql_error(), SQL_QUERY_ERROR); 
    	} 

    	// Haal de nieuwste id, die bij de nieuwe gebruiker hoort 
    	$this->iID = @mysql_insert_id($connection); 
    }
    
    /**
     * Function: updateData()
     * @author Marten van Urk
     * 
     * Update gegevens uit de database. Gebruik: Haal gegevens op met de functie getData(), wijzig de gegevens en voer updateData uit
     *
     * @param resource $connection Connection Identifier
     */
    
    public function updateData($connection) {
    	$sQuery = "UPDATE klanten SET 
    				naam		= '". mysql_real_escape_string($this->sNaam) ."',
    				email		= '". mysql_real_escape_string($this->sEmail) ."',
    				adres 		= '". mysql_real_escape_string($this->sAdres) ."',
    				postcode	= '". mysql_real_escape_string($this->sPostcode) ."',
    				woonplaats	= '". mysql_real_escape_string($this->sWoonplaats) ."'
    			   WHERE id = ". intval($this->iID);
    	
		$rResult = mysql_query($sQuery); 

    	if ($rResult === FALSE) { 
      		throw new Exception('Query mislukt: ' . mysql_error(), SQL_QUERY_ERROR); 
    	}     	
    }
    
    /**
     * Function: deleteData()
     * @author Marten van Urk
     * 
     * Verwijder gebruikers uit het systeem. Gebruik: lees gebruiker uit met getData, voer vervolgens deleteData uit
     *
     * @param resource $connection Connection Identifier
     */
    public function deleteData($connection) {
    	$sQuery = "DELETE * FROM klanten WHERE id = ". intval($this->iID);
    	
 		$rResult = mysql_query($sQuery); 

    	if ($rResult === FALSE) { 
      		throw new Exception('Query mislukt: ' . mysql_error(), SQL_QUERY_ERROR); 
    	}    	
    	
    }
}
?>
