Quelltext der Datei: http://www.michaelster.ch/lernen/class_blaettern_v3.php

Dateigrösse: 4.81 kb

[Anzeige mit Zeilennummern]


<?php
/*
 * Seiten abfuellen u. blaettern
 *
 * INPUTS
 *
 * @param    int     total        // Anzahl Datensaetze insgesamt, mandatory                
 * @param    int     start        // Startwert, DB-Abfrage = from, default = 0, mandatory    
 * @param    int     zeilen        // Anzahl Zeilen pro Seite, DB-Abfrage = to, default = 10, mandatory        
 * @param    string     order        // DESC oder ASC, default = DESC, optional                                    
 * @param    string     suchbegriff    // Suchbegriff aus einer Abfrage LIKE %$suchbegriff%, default = '', optional
 * @param    string     spalte        // Spalte (=Cols) nach der sortiert werden soll, default = NULL, optional    
 * @param    string     css            // Array mit CSS-Formatierung link                        
 * @param    string     csshover    // Array mit CSS-Formatierung link:hover                
 *
 * RETURNS
 *
 * @return    string    HTML-Code:
 * @return    int        start        $_GET['start'] value im Link angehaengt, mandatory        
 * @return    int        zeilen        $_GET['zeilen'] value im Link angehaengt, mandatory        
 * @return    string    order        $_GET['order'] value im Link angehaengt, optional        
 * @return    string    spalte        $_GET['spalte'] value im Link angehaengt, optional         
 * @return    string    suchbegriff    $_GET['suchbegriff'] value im Link angehaengt, optional    
 *
 *
 * @author      michaelster        
 * @version     1.3 | 2006-03-07
 */
 
class ClassAbfuellen
{

    /*** Eigenschaften: ***/
    private $mIntTotal;        
    private $mIntStart;        
    private $mIntZeilen;      
    private $mStrOrder;        
    private $mStrSuchbegriff;
    private $mStrSpalte;     
    private $mStrCss;        
    private $mStrCssActive;    
    private $mStrUkap;        
    private $mReturnHtml;    // @return string (html-code)

    /**
    * Konstruktor:
    */
    public function __construct($total,                 
                                $start          = 0,        
                                $zeilen      = 5,        
                                $order          = '',        
                                $suchbegriff = '',        
                                $spalte      = '',        
                                $css          = '',        
                                $cssactive      = '',        
                                $ukap         = ''
                               )
    {
        $this->mIntTotal           = $total;        
        $this->mIntStart        = $start;        
        $this->mIntZeilen        = $zeilen;        
        $this->mStrOrder        = $order;        
        $this->mStrSuchbegriff    = $suchbegriff;    
        $this->mStrSpalte        = $spalte;        
        $this->mStrCss            = $css;            
        $this->mStrCssActive    = $cssactive;    
        $this->mStrUkap            = $ukap;        
    }
    
    /**
    * Methode abfuellen()
    */
    public function abfuellen()
    {
        $this->mReturnHtml  =  '';
        
        if ($this->mIntTotal > $this->mIntZeilen)
        {
            $seiten = intval($this->mIntTotal / $this->mIntZeilen);
            if ($this->mIntTotal % $this->mIntZeilen != 0)
            {
                $seiten++;
            }
        }
        
        for ($i = 1; $i <= $seiten; $i++)
        {
            $fwd = ($i-1) * $this->mIntZeilen;
            if (($this->mIntStart / $this->mIntZeilen + 1) == $i)
            {
                $this->mReturnHtml  .=  '&nbsp;&nbsp;';
                $this->mReturnHtml  .=  '<span style="' . $this->mStrCssActive . '">';
                $this->mReturnHtml  .=  $i;
                $this->mReturnHtml  .=  '</span>';
            }
            else
            {
                $this->mReturnHtml  .=  '&nbsp;&nbsp;';
                $this->mReturnHtml  .=  '<a style="' . $this->mStrCss;
                $this->mReturnHtml  .=  '" href="' . $_SERVER['PHP_SELF'];
                $this->mReturnHtml  .=  '?kap=' . $_REQUEST['kap'];
                $this->mReturnHtml  .=  '&amp;navid=' . $_REQUEST['navid'];
                $this->mReturnHtml  .=  '&amp;ukap=' . $this->mStrUkap;
                $this->mReturnHtml  .=  '&amp;start=' . $fwd;
                $this->mReturnHtml  .=  '&amp;zeilen=' . $this->mIntZeilen;
                $this->mReturnHtml  .=  $this->mStrOrder == '' 
                                        ? '' 
                                        : '&amp;order=' . $this->mStrOrder;
                $this->mReturnHtml  .=  $this->mStrSpalte == '' 
                                        ? '' 
                                        : '&amp;spalte=' . $this->mStrSpalte;
                $this->mReturnHtml  .=  $this->mStrSuchbegriff == '' 
                                        ? '' 
                                        : '&amp;suchbegriff=' . $this->mStrSuchbegriff;
                $this->mReturnHtml  .=  '">';
                $this->mReturnHtml  .=  $i;
                $this->mReturnHtml  .=  '</a>';
            }
        }
        
        $this->mReturnHtml   =  $this->mReturnHtml == '' 
                                ? '' 
                                : '<b>Seite</b>' . $this->mReturnHtml;
        
        /** HTML-Code ausgeben **/
        return $this->mReturnHtml;
        echo $this->mReturnHtml;
    }

} 
/*** class blaettern() ends here ***/



/************************************************************************************************************
/*                                                                                                            *
/*    EXAMPLE FOR GOOD USE:                                                                                    *
/*                                                                                                            *
/*    $css         = 'font-size:11px; padding:3px; color:black; font-weight:bold';                                *
/*    $csshover     = 'background-color:#cde2ed';                                                                *
/*                                                                                                            *
/*    $sites =& new ClassAbfuellen($total, $start, $zeilen, $order, $suchbegriff, $spalte, $css, $csshover);    *
/*    echo $sites->abfuellen();                                                                                *
/*                                                                                                            *
/***********************************************************************************************************/

?>