DivDataReader
DivDataReader Du er her: /  Forsiden  /  Kildekoden  /  Dto  /  Divdatareader   Login nu   Login
DivDataReader
 ««« Se kilde koden
DivDataReader
DivDataReader Basic DivDataReader DivDataReader Base DivDataReader DivDataReader Component DivDataReader DivDataReader Db DivDataReader DivDataReader Dto  DivDataReader DivDataReader Form DivDataReader DivDataReader Form-elements DivDataReader DivDataReader Jquery DivDataReader DivDataReader Layout DivDataReader DivDataReader Menu DivDataReader DivDataReader Menu-fisheye DivDataReader DivDataReader Mvc DivDataReader DivDataReader Tab DivDataReader DivDataReader Table DivDataReader DivDataReader Template DivDataReader DivDataReader Util DivDataReader
DivDataReader
DivDataReader
DivDataReader Index
 
Tilbage

Navn : DivDataReader.php


Sample code, tutorial

Sådan benyttes komponenten DivDataReader klassen

Først skal du inkludere den fil der beskriver komponenten, som en klasse fil

  • <?
    require_once(HTML_PACKAGE_PATH.'/DivDataReader.php');
    ?>

Dernæst kan du enten benytte komponenten som et taglib (statiske metoder):

  • <?
    DivDataReader
    ::display($param1, $param2, $param3, ...);
    ?>

eller du kan lave en instance af komponenten og benytte metoderne direkte:

  • <?
    $object
    = new DivDataReader($param1, $param2, $param3, ...);
    print
    $object->getHtml();
    ?>

Parent html

Sådan vises komponenten DivDataReader klassen

Kontakt Firma profil

PHP source code

Den fulde PHP kildekode for DivDataReader klassen

<?
/**
* @package dto
* @filesource
* @see HTML_DTO_UTIL_PATH.'/DivDataReader.php'
* @copyright (c) http://Finn-Rasmussen.com
* @license http://Finn-Rasmussen.com/license/ myPHP License conditions
* @author http://Finn-Rasmussen.com
* @version 1.10
* @since 22-feb-2007
*/

/**
* The required files
*/
require_once(HTML_BASE_UTIL_PATH.'/Div.php');
require_once(
HTML_BASE_UTIL_PATH.'/Span.php');
require_once(
HTML_BASE_UTIL_PATH.'/Link.php');
require_once(
HTML_BASE_UTIL_PATH.'/Image.php');
require_once(
HTML_DTO_UTIL_PATH.'/DataReaderFactory.php');
if (
defined('HTML_LANGUAGE_UTIL_PATH')) {
    require_once(
HTML_LANGUAGE_UTIL_PATH.'/Translate.php');
}
if (
defined('HTML_LOG_UTIL_PATH')) {
    require_once(
HTML_LOG_UTIL_PATH.'/Log.php');
}

/**
* Generates a
*   <div class="$class" align="$align" id="$id">$text</div>
* <code>
* Usage:
*   $html = new DivDataReader($datareader, $text, $class, $align, $id);
*   print $html->getHtml();
* </code>
* @package dto
*/

class DivDataReader extends Div {
    
/**
     * @var DataReader The Data Reader object
     */
    
var $datareader = '';

    
/**
     * @var $layout The different layouts to use
     * image link | image link | etc. on the same line
     * image link | image link | etc. on the same line and google search
     * image and link on each line
     * <li> image and link on each line
     * image <br> link etc. on the same line
     */
    
var $layout = '';

    
/**
     * Constructor
     * @param DataReader $datareader The Data Reader object
     * @param String $text,  The text for the Div tag or an object
     * @param String $class  The css class name
     * @param String $align  The align attribute
     * @param String $id     The ID attribute
     */
    
function DivDataReader($datareader='',$text='',$class='',$align='', $id='') {
        
$this->Div($text, $class, $align, $id);
        
$this->datareader = $this->getDatareader($datareader);
        
$this->adjustColumns();
    }

    
/**
     * Get the DataReader to use for this class
     * @param DataReader $datareader The DataReader object, if defined
     * @return DataReader or array The DataReader object or an array of default data
     */
    
function getDatareader($datareader) {
        
$theDatareader = $datareader;
        if (
$theDatareader == '') {
            
$columns = array(
             
LINK_TEXT_CONTACT_US=>array('text'=>LINK_TEXT_CONTACT_US,'href'=>LINK_HREF_EMAIL.'?'.REQUEST_EMNE.'=','title'=>LINK_TITLE_CONTACT_US,), // ,'class'=>'email'
             
LINK_TEXT_COMPANY_PROFILE=>array('text'=>LINK_TEXT_COMPANY_PROFILE,'href'=>LINK_HREF_URL.'/hvepseboguide/About/','title'=>LINK_TITLE_COMPANY_PROFILE,),
            );
            
$theDatareader = $columns;
        }
        return
$theDatareader;
    }

    
/**
     * Get the CSS class Name for this component
     * @abstract
     * @return String The CSS class name
     */
    
function getCssClass() {
        return
CSS_BODY;
    }

    
/**
     * Return the column data as html
     * The column data may be
     * - LINK_NAME
     * - IMAGE_NAME
     * - link
     * - image
     * - link + image
     * <code>
     * </code>
     * @param  String $page   The page key
     * @param  array  $column The column to loop for key/value pairs
     * @return Object The html as an object
     */
    
function newColumn($page, $column) {
        
$object = new Raw();
        if (
count($column)>0) {
            
$text   = '';
            
$href   = '';
            
$title  = '';
            
$aux    = '';
            
$src    = '';
            
$width  = '';
            
$height = '';
            
$alt    = '';
            
$span   = '';
            
$class  = $this->getCssClass();
               
$theValue = '';
            foreach(
$column as $key=>$value) {
                switch (
$key) {
                    case
KEY_TRIANGLE:
                        
$theValue = $this->newTriangle($value, $class);
                        
$class .= ' '.CSS_ONEPC;
                        break;
                    default:
                        $
$key = $value;
                        break;
                }
            }
            if (
$theValue == '') {
                if (
defined('HTML_LANGUAGE_UTIL_PATH')) {
                    
$text = ucfirst(Translate::get($text));
                }
                
$aux = '';
                if (
$this->layout & LINK_LAYOUT_LI) {
                    
$aux = LINK_LAYOUT_LI;
                } else if (
$this->layout & LINK_LAYOUT_BR) {
                    
$aux = LINK_LAYOUT_BR;
                }
                if (
is_a($this, "MenuFishEye")) {
                    
$theValue = new Link('',$href,$class,$title,$aux);
                    
$theValue->add(new Span($text,'','',"xdisplay: none;")); // The Menu Fish Eye
                
} else {
                    
$theValue = new Link($text,$href,$class,$title,$aux);
                }
                if (
$src != '') {
                    
$theValue->add(new Image($src,$width,$height,$alt,$class));
                } else {
                }
            }
            
$object->add($theValue);
        } else {
            
// Ignore
        
}
        return
$object;
    }

    
/**
     * Return the content as a row object
     * @return Object The content as an object
     */
    
function newColumns() {
        
$object = new Raw();
        
$numrows = 0;
        if (
is_a($this->datareader,DATA_READER_CLASS_NAME)) {
            
$numrows = $this->datareader->getNumRows();
        }
        if (
$numrows > 0) {
            if (
$this->layout & LINK_LAYOUT_LI) {
                
$object = new Ul();
            }
            foreach(
$this->datareader->getRows() as $page=>$column) {
                
$object->add($this->newColumn($page, $column));
            }
        } else {
            
$object->add(new Raw(TEXT_NO_DATA));
        }
        return
$object;
    }
    
    
/**
     * Adjust the columns for the different views
     */
    
function adjustColumns() {
        if (
$this->datareader != '' && is_array($this->datareader)) {
            
$columns   = array();
            if (
$this->layout & LINK_LAYOUT_TRIANGLE) {
                   
$columns[] = array(KEY_TRIANGLE=>IMAGE_TRIANGLE);
            }
            foreach(
$this->datareader as $key=>$column) {
                
$columns[] = $column;
            }
            
$this->datareader = DataReaderFactory::newDataReader($columns);
        }
        if (!
is_a($this->datareader,DATA_READER_CLASS_NAME)) {
            
$msg = $this->getClassName().'(), '.DATA_READER_CLASS_NAME." object expected, unknown datareader type=".gettype($this->datareader);
            if (
defined('HTML_LOG_UTIL_PATH')) {
                
Log::error(__FILE__,__LINE__,$msg);
            } else {
            }
            
Message::add($msg,__FILE__,__LINE__);
        }
    }

    
/**
     * Get the content for the columns
     * Each row is definition of a column
     * @return String The html
     */
    
function getColumns() {
        
$html = '';
        
$this->add($this->newColumns());
        
$html .= $this->getStart();
        
$html .= $this->getEnd();
        return
$html;
    }
}
?>

HTML source code

Den fulde HTML kildekode for DivDataReader klassen

<?
<!-- Test -->
<
div><!-- Kontakt --><a id="Link39" class="baseBody" href="http://www.hvepseeksperten.dk/FormMail/?baseEMNE=" title="Kontakt via email&#013;">Kontakt</a>
<!--
Firma profil --><a id="Link40" class="baseBody" href="http://www.hvepseeksperten.dk/hvepseboguide/About/" title="Hvem er vi egentlig?">Firma&nbsp;profil</a>
<!--
Kontakt --><a id="Link41" class="baseBody" href="http://www.hvepseeksperten.dk/FormMail/?baseEMNE=" title="Kontakt via email&#013;">Kontakt</a>
<!--
Firma profil --><a id="Link42" class="baseBody" href="http://www.hvepseeksperten.dk/hvepseboguide/About/" title="Hvem er vi egentlig?">Firma&nbsp;profil</a>
</
div>

?>

Class methods

Her er 'klasse metoderne' for DivDataReader klassen:

  • test
  • gethtml
  • object
  • getclassname
  • getmsg
  • addhtml
  • tostring
  • getcachefilename
  • save
  • content
  • stop
  • html
  • setobject
  • set
  • get
  • getattribute
  • gettag
  • add
  • getsizeof
  • getelement
  • getelements
  • gettoogle
  • getmaximize
  • getminimize
  • newtriangle
  • display
  • showsource
  • div
  • getstart
  • getend
  • start
  • end
  • divdatareader
  • getdatareader
  • getcssclass
  • newcolumn
  • newcolumns
  • adjustcolumns
  • getcolumns

Object vars

Her er 'objekt variable' for DivDataReader klassen:

  • html =>
  • sql =>
  • elements => Array
  • sizeof => 2
  • text =>
  • class =>
  • align =>
  • id =>
  • datareader => Object
  • layout =>

DataReader.php

Her er felterne i DataReader for DivDataReader klassen:

  0   






  1   






DivDataReader

Vis denne side på danmark

Vis denne side på Germany

Vis denne side på England

Vis denne side på France

Vis denne side på Italy

Vis denne side på Norge

Vis denne side på Sverige

Vis denne side på USA


 
DivDataReader