Tilbage Navn : EngineForm.php
Sample code, tutorial
Sådan benyttes komponenten EngineForm klassen
Først skal du inkludere den fil der beskriver komponenten, som en klasse fil
<?
require_once( HTML_PACKAGE_PATH . '/EngineForm.php' );
?>
Dernæst kan du enten benytte komponenten som et taglib (statiske metoder):
<?
EngineForm :: display ( $param1 , $param2 , $param3 , ...);
?>
eller du kan lave en instance af komponenten og benytte metoderne direkte:
<?
$object = new EngineForm ( $param1 , $param2 , $param3 , ...);
print $object -> getHtml ();
?>
Parent html
Sådan vises komponenten EngineForm klassen
PHP source code
Den fulde PHP kildekode for EngineForm klassen
<?
/**
* @package mvc
* @see HTML_MVC_CONTROLLER_PATH.'/EngineForm.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_MVC_CONTROLLER_PATH . '/Engine.php' );
require_once( HTML_DB_LOGIN_QUERY_PATH . '/QueryLogin.php' );
/**
* The FormView, ListView and Login form parsing engine
* This is the controller for a List View or Form View
* where the user may Insert, Update or delete records
* <code>
* Usage:
* $engine = new EngineForm($table,$sql,$name,$view);
* print $engine->getHtml();
* Or
* EngineForm::display($table,$sql,$name,$view);
* </code>
* @package mvc
*/
class EngineForm extends Engine {
/**
* Constructor
* @param String $table The table to use
* @param String $sql The SQL to excute
* @param String $name The Engine Name to use
* @param String $view The View to use
*/
function EngineForm ( $table = '' , $sql = '' , $name = '' , $view = '' ) {
$theTable = $table != '' ? $table : DATABASE_PREFIX . TABLE_NAME_LOGIN ;
$theSql = $sql != '' ? $sql : QueryLogin :: get ( $theTable );
$theName = $name != '' ? $name : ENGINE_NAME_LOGIN ;
$theView = $view != '' ? $view : GRID_LAYOUT_VIEW_LOGIN ;
$this -> Engine ( $theTable , $theSql , $theName , $theView );
}
/**
* Display html
* <code>
* Usage:
* EngineForm::display($table,$sql,$name,$view);
* </code>
* @static
* @param String $table The table to use
* @param String $sql The SQL to excute
* @param String $name The Engine Name to use
* @param String $view The View to use
*/
function display ( $table = '' , $sql = '' , $name = '' , $view = '' ) {
$html = new EngineForm ( $table , $sql , $name , $view );
$html -> addHtml ();
}
}
?>
HTML source code
Den fulde HTML kildekode for EngineForm klassen
<?
< table width = "323" class= "formView baseBorder" border = "0" cellpadding = "2" cellspacing = "0" >
< tr >
< td class= "baseArrowHeader" valign = "middle" >< img src = "/images/arrow-headline.gif" width = "4" height = "7" alt = "EngineForm" />
</ td >
< th class= "baseColorHeader" valign = "top" align = "left" > Login ( 1 )</ th >
</ tr >
</ table >
< table width = "323" class= "formView baseBorder" border = "0" cellpadding = "10" cellspacing = "0" >
< tr >
< td valign = "top" >< form action = "/source-code/mvc/EngineForm/index.php" method = "post" name = "Viewlogin" id = "Form58" >
< label for= "Label55" accesskey = "N" title = "Accelerator key, use (Alt + N)" >
< b > User < span class= "baseColorDark" > n </ span > ame & nbsp ;( Skal & nbsp ; udfyldes )</ b >& nbsp ; ( Alt + N ) </ label >< br />
< input type = "text" name = "username" id = "Label55" class= "formXLARGE baseBorder baseBody" maxlength = "100" value = "zita" title = "username
100
string
demo_login
not_null
" tabindex = "8" />< br />
< label for= "Label56" accesskey = "M" title = "Accelerator key, use (Alt + M)" >
< b > E < span class= "baseColorDark" > m </ span > ail & nbsp ;( Skal & nbsp ; udfyldes )</ b >& nbsp ; ( Alt + M ) </ label >< br />
< input type = "text" name = "email" id = "Label56" class= "formXLARGE baseBorder baseBody" maxlength = "100" value = "NOT_USED@hvepse.dk" title = "email
100
string
demo_login
not_null
" tabindex = "9" />< br />
< label >
< b > Created date ( Skal udfyldes )</ b >& nbsp ; </ label >< br />
< input type = "text" name = "created_date" id = "Readonly57" class= "formXLARGE baseBorder baseBody" maxlength = "19" readonly = "readonly" value = "20040920080359" title = "created_date
19
timestamp
demo_login
not_null
unsigned
zerofill
binary
" />< br />
< div align = "right" >< input type = "button" id = "Cancelbutton59" class= "formButton baseBorder baseBody"
onclick = "history.back();" value = "Fortryd" title = "Fortryd" tabindex = "10" />
< input type = "reset" id = "Resetbutton60" class= "formButton baseBorder baseBody"
value = "Nulstil" title = "Nulstil (Alt + B)" tabindex = "11" accesskey = "B" />
<!-- VIEW_LOGIN_FORM -->
< input type = "submit" id = "Submitbutton61" class= "formButton baseBorder baseBody"
value = "Login" title = "Login (Alt + O)" tabindex = "12" accesskey = "O" />
</ div >
</ form >
< script type = "text/javascript" >
//<![CDATA[
function setFocus_Viewloginusername () {if ( typeof document . Viewlogin == 'object' ) {if ( typeof document . Viewlogin . username == 'object' ) { document . Viewlogin . username . focus (); document . Viewlogin . username . select ();}}}if ( typeof focusIsDefined == 'undefined' ) {function onload2Body () {var onloadCurrent = window . onload ;if ( typeof onloadCurrent !== 'function' ) { window . onload = setFocus_Viewloginusername ;} else { window . onload = function() { onloadCurrent (); setFocus_Viewloginusername ();}}} onload2Body (); focusIsDefined = true ;}
//]]>
</script>
</td>
</tr>
</table>
?>
Class methods
Her er 'klasse metoderne' for EngineForm klassen:
engineform
display
engine
object
getclassname
getmsg
addhtml
gethtml
tostring
getcachefilename
save
content
stop
html
setobject
set
get
getattribute
gettag
add
getsizeof
getelement
getelements
gettoogle
getmaximize
getminimize
newtriangle
showsource
engineobject
getview
doget
dogetview
logout
dopost
loginform
getnextview
execute
Object vars
Her er 'objekt variable' for EngineForm klassen:
html =>
sql => SELECT username, email, created_date FROM demo_login WHERE demo_login_id=510
elements => Array
sizeof => 0
table => demo_login
name => EngineLogin
view => 128
Desværre har du ikke slået javascript til i din browser, så dele af hjemmesiden vil ikke fungere