## Class TFileUpload

Description

Implements interfaces:

- IPostBackDataHandler
- IValidatable

TFileUpload class

TFileUpload displays a file upload field on a page. Upon postback, the text entered into the field will be treated as the name of the file that will be uploaded to the server. The property HasFile indicates whether the file upload is successful. If successful, the file may be obtained by calling saveAs to save it at a specified place. You can use FileName, FileType, FileSize to get the original client-side file name, the file mime type, and the file size information. If the upload is not successful, ErrorCode contains the error code describing the cause of failure.

TFileUpload raises OnFileUpload event if a file is uploaded (whether it succeeds or not).

- since: 3.0
- version: $Id: TFileUpload.php 2693 2009-07-20 10:36:48Z carlgmathisen $
- author: Marcus Nyeholt <tanus@users.sourceforge.net>, Qiang Xue <qiang.xue@gmail.com>

Located in /Web/UI/WebControls/TFileUpload.php (line 35)

    TComponent
       |
       --TApplicationComponent
          |
          --TControl
             |
             --TWebControl
                |
                --TFileUpload

Direct descendents

Class | Description
--- | ---
TActiveFileUpload | TActiveFileUpload

Class Constant Summary
MAX_FILE_SIZE = 1048576
Method Summary
void addAttributesToRender (THtmlWriter $writer)
boolean getDataChanged ()
integer getErrorCode ()
string getFileName ()
integer getFileSize ()
string getFileType ()
boolean getHasFile ()
bool getIsValid ()
string getLocalName ()
integer getMaxFileSize ()
string getTagName ()
mixed getValidationPropertyValue ()
boolean loadPostData (string $key, array $values)
void onFileUpload (TEventParameter $param)
void onPreRender (mixed $param)
void raisePostDataChangedEvent ()
boolean saveAs (string $fileName, [boolean $deleteTempFile = true])
void setIsValid (bool $value)
void setMaxFileSize (int $size)
Methods
addAttributesToRender (line 77)

Sets name attribute to the unique ID of the control.

This method overrides the parent implementation with additional file update control specific attributes.

- access: protected

void addAttributesToRender (THtmlWriter $writer)

- THtmlWriter $writer: the writer used for the rendering purpose

Redefinition of:

TWebControl::addAttributesToRender()
  Adds attribute name-value pairs to renderer.

Redefined in descendants as:

- TActiveFileUpload::addAttributesToRender() : Adds ID attribute, and renders the javascript for active component.

getDataChanged (line 248)

Returns a value indicating whether postback has caused the control data change.

This method is required by the IPostBackDataHandler interface.

- return: whether postback has caused the control data change. False if the page is not in postback mode.
- access: public

boolean getDataChanged ()
getErrorCode (line 164)

Returns an error code describing the status of this file uploading.

- return: the error code
- access: public
- see: http://www.php.net/manual/en/features.file-upload.errors.php

integer getErrorCode ()
getFileName (line 128)

- return: the original full path name of the file on the client machine
- access: public

string getFileName ()
getFileSize (line 136)

- return: the actual size of the uploaded file in bytes
- access: public

integer getFileSize ()
getFileType (line 145)

- return: the MIME-type of the uploaded file (such as "image/gif"). This mime type is not checked on the server side and do not take its value for granted.
- access: public

string getFileType ()
getHasFile (line 172)

- return: whether the file is uploaded successfully
- access: public

boolean getHasFile ()
getIsValid (line 268)

Returns true if this control validated successfully.

Defaults to true.

- return: wether this control validated successfully.
- access: public

bool getIsValid ()
getLocalName (line 154)

- return: the local name of the file (where it is after being uploaded). Note, PHP will delete this file automatically after finishing this round of request.
- access: public

string getLocalName ()
getMaxFileSize (line 107)

- return: the maximum file size, defaults to 1MB (1048576 bytes).
- access: public
- see: TFileUpload::setMaxFileSize()

integer getMaxFileSize ()
getTagName (line 67)

- return: tag name of the file upload control
- access: protected

string getTagName ()

Redefinition of:

TWebControl::getTagName()
  Returns the tag name used for this control.

getValidationPropertyValue (line 258)

Returns the original file name as the property value to be validated.

This method is required by IValidatable property.

- return: the property value to be validated
- access: public

mixed getValidationPropertyValue ()
loadPostData (line 206)

Loads user input data.

This method is primarly used by framework developers.

- return: whether the data of the control has been changed
- access: public

boolean loadPostData (string $key, array $values)

- string $key: the key that can be used to retrieve data from the input data collection
- array $values: the input data collection

onFileUpload (line 238)

This method is invoked when a file is uploaded during a postback.

The method raises OnFileUpload event to fire up the event handler. If you override this method, be sure to call the parent implementation so that the event delegates can be invoked.

- access: public

void onFileUpload (TEventParameter $param)

- TEventParameter $param: event parameter to be passed to the event handlers

Redefined in descendants as:

- TActiveFileUpload::onFileUpload() : This method is invoked when a file is uploaded.

onPreRender (line 93)

Sets Enctype of the form on the page.

This method overrides the parent implementation and is invoked before render.

- access: public

void onPreRender (mixed $param)

- mixed $param: event parameter

Redefinition of:

TControl::onPreRender()
  This method is invoked when the control enters 'OnPreRender' stage.

Redefined in descendants as:

- TActiveFileUpload::onPreRender() : Publish the javascript

raisePostDataChangedEvent (line 226)

Raises postdata changed event.

This method calls onFileUpload method. This method is primarly used by framework developers.

- access: public

void raisePostDataChangedEvent ()
saveAs (line 184)

Saves the uploaded file.

- return: true if the file saving is successful
- access: public

boolean saveAs (string $fileName, [boolean $deleteTempFile = true])

- string $fileName: the file name used to save the uploaded file
- boolean $deleteTempFile: whether to delete the temporary file after saving. If true, you will not be able to save the uploaded file again.

Redefined in descendants as:

- TActiveFileUpload::saveAs() : Saves the uploaded file.

setIsValid (line 275)

- access: public

void setIsValid (bool $value)

- bool $value: wether this control is valid.

setMaxFileSize (line 120)

Sets the maximum size that a file can be uploaded.

Note, this is an advisory value to the browser. Sets this property with a reasonably large size to save users the trouble of waiting for a big file being transferred only to find that it was too big and the transfer failed.

- access: public

void setMaxFileSize (int $size)

- int $size: the maximum upload size allowed for a file.

#### Inherited Methods

Inherited From TWebControl

> TWebControl::addAttributesToRender()
> TWebControl::clearStyle()
> TWebControl::copyBaseAttributes()
> TWebControl::createStyle()
> TWebControl::getAccessKey()
> TWebControl::getBackColor()
> TWebControl::getBorderColor()
> TWebControl::getBorderStyle()
> TWebControl::getBorderWidth()
> TWebControl::getCssClass()
> TWebControl::getDisplay()
> TWebControl::getFont()
> TWebControl::getForeColor()
> TWebControl::getHasStyle()
> TWebControl::getHeight()
> TWebControl::getStyle()
> TWebControl::getTabIndex()
> TWebControl::getTagName()
> TWebControl::getToolTip()
> TWebControl::getWidth()
> TWebControl::render()
> TWebControl::renderBeginTag()
> TWebControl::renderContents()
> TWebControl::renderEndTag()
> TWebControl::setAccessKey()
> TWebControl::setBackColor()
> TWebControl::setBorderColor()
> TWebControl::setBorderStyle()
> TWebControl::setBorderWidth()
> TWebControl::setCssClass()
> TWebControl::setDisplay()
> TWebControl::setForeColor()
> TWebControl::setHeight()
> TWebControl::setStyle()
> TWebControl::setTabIndex()
> TWebControl::setToolTip()
> TWebControl::setWidth()

Inherited From TControl

> TControl::__construct()
> TControl::addedControl()
> TControl::addParsedObject()
> TControl::addToPostDataLoader()
> TControl::applyStyleSheetSkin()
> TControl::autoBindProperty()
> TControl::autoDataBindProperties()
> TControl::bindProperty()
> TControl::broadcastEvent()
> TControl::bubbleEvent()
> TControl::clearChildState()
> TControl::clearControlState()
> TControl::clearNamingContainer()
> TControl::clearViewState()
> TControl::convertUniqueIdToClientId()
> TControl::createChildControls()
> TControl::createControlCollection()
> TControl::dataBind()
> TControl::dataBindChildren()
> TControl::dataBindProperties()
> TControl::ensureChildControls()
> TControl::findControl()
> TControl::findControlsByID()
> TControl::findControlsByType()
> TControl::focus()
> TControl::getAdapter()
> TControl::getAllowChildControls()
> TControl::getAttribute()
> TControl::getAttributes()
> TControl::getChildControlsCreated()
> TControl::getClientID()
> TControl::getControls()
> TControl::getControlStage()
> TControl::getControlState()
> TControl::getCustomData()
> TControl::getEnabled()
> TControl::getEnableTheming()
> TControl::getEnableViewState()
> TControl::getHasAdapter()
> TControl::getHasAttributes()
> TControl::getHasChildInitialized()
> TControl::getHasControls()
> TControl::getHasInitialized()
> TControl::getHasLoaded()
> TControl::getHasLoadedPostData()
> TControl::getHasPreRendered()
> TControl::getID()
> TControl::getNamingContainer()
> TControl::getPage()
> TControl::getParent()
> TControl::getRegisteredObject()
> TControl::getSkinID()
> TControl::getSourceTemplateControl()
> TControl::getTemplateControl()
> TControl::getUniqueID()
> TControl::getViewState()
> TControl::getVisible()
> TControl::hasAttribute()
> TControl::initRecursive()
> TControl::isDescendentOf()
> TControl::isObjectRegistered()
> TControl::loadRecursive()
> TControl::loadState()
> TControl::loadStateRecursive()
> TControl::onDataBinding()
> TControl::onInit()
> TControl::onLoad()
> TControl::onPreRender()
> TControl::onUnload()
> TControl::preRenderRecursive()
> TControl::raiseBubbleEvent()
> TControl::registerObject()
> TControl::removeAttribute()
> TControl::removedControl()
> TControl::render()
> TControl::renderChildren()
> TControl::renderControl()
> TControl::saveState()
> TControl::saveStateRecursive()
> TControl::setAdapter()
> TControl::setAttribute()
> TControl::setChildControlsCreated()
> TControl::setControlStage()
> TControl::setControlState()
> TControl::setCustomData()
> TControl::setEnabled()
> TControl::setEnableTheming()
> TControl::setEnableViewState()
> TControl::setID()
> TControl::setPage()
> TControl::setSkinID()
> TControl::setTemplateControl()
> TControl::setViewState()
> TControl::setVisible()
> TControl::trackViewState()
> TControl::traverseChildControls()
> TControl::unbindProperty()
> TControl::unloadRecursive()
> TControl::unregisterObject()
> TControl::__get()

Inherited From TApplicationComponent

> TApplicationComponent::getApplication()
> TApplicationComponent::getRequest()
> TApplicationComponent::getResponse()
> TApplicationComponent::getService()
> TApplicationComponent::getSession()
> TApplicationComponent::getUser()
> TApplicationComponent::publishAsset()
> TApplicationComponent::publishFilePath()

Inherited From TComponent

> TComponent::addParsedObject()
> TComponent::attachEventHandler()
> TComponent::canGetProperty()
> TComponent::canSetProperty()
> TComponent::createdOnTemplate()
> TComponent::detachEventHandler()
> TComponent::evaluateExpression()
> TComponent::evaluateStatements()
> TComponent::getEventHandlers()
> TComponent::getSubProperty()
> TComponent::hasEvent()
> TComponent::hasEventHandler()
> TComponent::hasProperty()
> TComponent::raiseEvent()
> TComponent::setSubProperty()
> TComponent::__get()
> TComponent::__set()

Class Constants
MAX_FILE_SIZE = 1048576 (line 40)

Maximum file size (in bytes) allowed to be uploaded, defaults to 1MB.

#### Inherited Constants

Inherited from TControl

> TControl::AUTOMATIC_ID_PREFIX
> TControl::CLIENT_ID_SEPARATOR
> TControl::CS_CHILD_INITIALIZED
> TControl::CS_CONSTRUCTED
> TControl::CS_INITIALIZED
> TControl::CS_LOADED
> TControl::CS_PRERENDERED
> TControl::CS_STATE_LOADED
> TControl::ID_FORMAT
> TControl::ID_SEPARATOR
> TControl::IS_CHILD_CREATED
> TControl::IS_CREATING_CHILD
> TControl::IS_DISABLE_THEMING
> TControl::IS_DISABLE_VIEWSTATE
> TControl::IS_ID_SET
> TControl::IS_SKIN_APPLIED
> TControl::IS_STYLESHEET_APPLIED
> TControl::RF_ADAPTER
> TControl::RF_AUTO_BINDINGS
> TControl::RF_CHILD_STATE
> TControl::RF_CONTROLS
> TControl::RF_CONTROLSTATE
> TControl::RF_DATA_BINDINGS
> TControl::RF_EVENTS
> TControl::RF_NAMED_CONTROLS
> TControl::RF_NAMED_CONTROLS_ID
> TControl::RF_NAMED_OBJECTS
> TControl::RF_SKIN_ID

Documentation generated on Mon, 22 Feb 2010 12:17:44 +0000 by phpDocumentor 1.3.0RC4