## 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: $Revision: $ $Date: $
- 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

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

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.

getErrorCode (line 159)

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 123)

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

string getFileName ()
getFileSize (line 131)

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

integer getFileSize ()
getFileType (line 140)

- 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 167)

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

boolean getHasFile ()
getLocalName (line 149)

- 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 102)

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

integer getMaxFileSize ()
getTagName (line 65)

- 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 244)

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 202)

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 234)

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

onPreRender (line 88)

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.

raisePostDataChangedEvent (line 222)

Raises postdata changed event.

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

- access: public

void raisePostDataChangedEvent ()
saveAs (line 180)

Saves the uploaded file.

- access: public
- throws: TInvalidOperationException file uploading failed or the uploaded file cannot be found on the server.

void 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.

setMaxFileSize (line 115)

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::copyBaseAttributes()
> TWebControl::createStyle()
> TWebControl::getAccessKey()
> TWebControl::getBackColor()
> TWebControl::getBorderColor()
> TWebControl::getBorderStyle()
> TWebControl::getBorderWidth()
> TWebControl::getCssClass()
> 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::setForeColor()
> TWebControl::setHeight()
> TWebControl::setStyle()
> TWebControl::setTabIndex()
> TWebControl::setToolTip()
> TWebControl::setWidth()

Inherited From TControl

> TControl::__construct()
> TControl::addedControl()
> TControl::addParsedObject()
> TControl::applyStyleSheetSkin()
> TControl::autoBindProperty()
> TControl::autoDataBindProperties()
> TControl::bindProperty()
> TControl::broadcastEvent()
> TControl::broadcastEventInternal()
> TControl::bubbleEvent()
> TControl::clearChildState()
> TControl::clearControlState()
> TControl::clearNamingContainer()
> TControl::clearViewState()
> TControl::createChildControls()
> TControl::createControlCollection()
> TControl::createdOnTemplate()
> 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::getEnabled()
> TControl::getEnableTheming()
> TControl::getEnableViewState()
> TControl::getHasAdapter()
> TControl::getHasAttributes()
> TControl::getHasControls()
> 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::setEnabled()
> TControl::setEnableTheming()
> TControl::setEnableViewState()
> TControl::setID()
> TControl::setPage()
> TControl::setSkinID()
> TControl::setTemplateControl()
> TControl::setViewState()
> TControl::setVisible()
> 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::attachEventHandler()
> TComponent::canGetProperty()
> TComponent::canSetProperty()
> 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

Documentation generated on Sun, 04 Jun 2006 18:59:22 -0400 by phpDocumentor 1.3.0RC4