<?php


/* **************************************************************************
 *
 *    Datenbankzugriffe via Objekt und Ausgabe via Template
 *    (mit Hilfe der Datenbank-Klasse Db_SQL von PHPLIB, da wir auf eine
 *     mySQL-Datenbank zugreifen, nutzen wir die db_mysql.inc 
 *    Ausserdem die Template-Klasse aus der PHPLIB: template.inc
 *    Host: 139.20.22.1
 *    User: php
 *    Passwort: susi
 *
 *  Im Manual: 
 *        http://www.geo.tu-freiberg.de/docs/phplib/documentation-3.html#ss3.1
 *
 *    Datenbank-Struktur: 
 *        siehe 'phpkurs_sql_struktur.txt'
 *
 *    PHP-Kurs am Rechenzentrum der TU Freiberg
 *    (c) 11/2000, Bernhard Fuerst <fuerst@mac.com>
 *
 * **************************************************************************/

// Datenbank-Klasse einbinden
require( "db_mysql.inc" );

// Template-Klasse einbinden
require( "template.inc" );

// Datenbankklasse an unsere Beduerfnisse anpassen
class datenbank extends Db_SQL
{
    var 
$Host     "139.20.22.1";
    var 
$Database "test";
    var 
$User     "php";
    var 
$Password "susi";
}

// Datenbank-Objekt erstellen
$db = new datenbank;

// Template-Objekt definieren
$template = new Template();


// Auslesen der Tabelle phpkurs in dieser Datenbank
$query "select id, name, email, telefon from phpkurs";
$sql_result $db->query$query );

    
// Template-Datei waehlen und den Template-Block initialisieren
$template->set_file'template_handle''php_18.html' );
$template->set_block'template_handle''ausgabezeile''ausgabezeile_variable' );

// Durchlesen und Ausgeben des Ergebnisses in einer HTML-Tabelle
while( $db->next_record() ) 
{
    
// Platzhalter im Template ersetzen
    
$template->set_var'id'$db->f"id" ) );
    
$template->set_var'name'$db->f"name" ) );
    
$template->set_var'email'$db->f"email" ) );
    
$template->set_var'telefon'$db->f"telefon" ) );
    
    
// Eine Ausgabezeile erzeugen
    
$template->parse'ausgabezeile_variable''ausgabezeile'true );    
}

// Die gesamte HTML-Ausgabe erzeugen ...
$template->parse'ausgabe''template_handle' );

// ... und ausgeben 
$template->p'ausgabe''index_template_handle' );

?>