ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

This content has been translated automatically.  Click here  to view the French version.
Help / WLanguage / WLanguage functions / Web-specific functions / Upload functions
  • Overview
  • Available elements
  • Upload via an Upload edit control
  • Uploading a file in a page
  • Displaying the image to upload
  • Remark
  • Maximum size of files to upload
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Overview
Uploading consists in saving a file located on the user's computer to the Web server. The file found on the user's computer is "uploaded" to the server: it is loaded and saved on the server.
All types of files can be uploaded.
Examples for using the file upload:
  • Phone Book site: when a new contact is added to the phone book, the user can select the contact photo on their computer. In order for the photo to be displayed independently of the Web user, the photo is "uploaded" to the server.
  • Site for document management: each Web user can make different types of documents available to the other Web users: text, ... These documents are selected on the computer of the Web user and "uploaded" to the server in order to be made available to all the Web users.
Available elements
The following elements are used to manage the file upload:
  • an UPLOAD edit control: In the browser, a "BROWSE" button is automatically added to the right of the Upload edit control. This button allows the Web user to select the file to "upload".
    A gray button is displayed in the editor. This button cannot be modified (style, caption, ...).
    Caution: this edit control is a specific control: no Value properties should be used on this control. To get the name of the uploaded file, use UploadFileName. The upload mode with this type of control is presented in Upload via an edit control.
  • an Upload control (single-file or multi-file): Several controls are automatically inserted into the editor as well as the WLanguage code required to use them immediately. This control can be generated for HTML5-based execution. For more details, see Upload control.
  • two server functions of WLanguage:
    UploadCopyFileSaves an "uploaded" file on the server. During this backup, the saved file can be renamed on the server.
    UploadFileNameReturns the name of an "uploaded" file (initial file name or file name saved on server)
  • several WLanguage browser functions are used to handle the Upload control:
    UploadCurrentFileIndicates the file currently uploaded via the Upload control.
    UploadCurrentFileSizeReturns the total size (in bytes) of the file currently uploaded via an Upload control.
    UploadCurrentFileSizeSentReturns the size (in bytes) already sent for the file currently uploaded via an Upload control.
    UploadDeleteDeletes a file from the list of files to upload: the file will not be uploaded on the server.
    UploadDeleteAllClears the list of files to upload: no file will be uploaded on the server.
    UploadSizeReturns the total size (in bytes) of the file currently uploaded via an Upload control.
    UploadSizeSentReturns the total size (in bytes) of files already sent by the current upload via an Upload control.
    UploadStartStarts sending the selected files into an Upload control.
Upload via an Upload edit control

Uploading a file in a page

To upload a file in a page:
  1. Create an UPLOAD edit control (the type of the control is defined in the "General" tab of the control). This control allows the Web user to select the file to "upload".
  2. Add a Button control or a Link control. This control will be used to upload the file on the server. This Button or Link control must be of type "Submit" ("Button action" in the "General" tab of the control description window). When the page is validated using this control, the file is uploaded to a temporary directory on the server. Therefore, this file cannot be viewed by the other Web users.
  3. In the server click code of this Button or Link control, you can use:
    • UploadFileName (UploadFileName(<Upload control>, False)) to check whether the file was uploaded and to retrieve its name. Indeed, during the upload, the file is renamed with a temporary file name.
    • UploadCopyFile to copy and rename the uploaded file on the server. This file can be copied into the resource directory (_WEB) or into a directory accessible via an alias.
    • HLinkMemo to load the image in a memo item of an HFSQL file.
Mistake not to make: The direct use of the file name on the browser station (reading the value by the Property Value in server or browser code) in file management functions is an error not to be made.. Indeed, this operation operates in development mode (the server and the browser are found on the same computer) but NOT in deployment. In this case, the server and the browser are different computers. The server does not see the browser files. To get the names of the files to use, use UploadFileName.

Displaying the image to upload

To display the image previously selected with an Upload edit control (EDT_UploadControl) in an Image control (IMG_ImageControl):
  1. In the code of the page, add the optional "OnMouseMove" browser code.
  2. Enter the following code lines in this code:
    IF SAI_ChampUpLoad <> "" THEN
    IF IMG_ChampImage <> SAI_ChampUpload THEN
    IMG_ChampImage = SAI_ChampUpload
    END
    END
Remark: This operation may not operate depending on the browser used and on the security level.
Remark

Maximum size of files to upload

By default, the size of files to upload is not limited in the WEBDEV engine. This size can be limited:
  • by the Web server used. For more details, see the documentation about the Web server used.
  • by WEBDEV Application Server.
The file will not be uploaded if its size exceeds the limit size.
To modify the maximum size of files to upload in WEBDEV Application Server, the registry must be modified on the server. This modification can be performed for all the WEBDEV applications.
To modify the size of the uploaded files for all the WEBDEV applications:
  1. Select the following registry key:
    • On a 64-bit computer: HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\PC SOFT\WEBDEV\29.0
    • On a 32-bit computer: HKEY_LOCAL_MACHINE\SOFTWARE\PC SOFT\WEBDEV\29.0
  2. Add the MAX_UPLOAD key. The value of this key corresponds to the maximum size of files to upload (in KB).
For a large transfer (several hundreds of MB), we recommend that you use the FTP protocol instead of the upload. You have the ability to perform an FTP transfer from a WEBDEV page, via a Java applet created with WINDEV.
PHP Limits in PHP:
  • The size of the uploaded files is limited by the "upload_max_filesize" and "post_max_size" directives in the configuration file of PHP (php.ini file).
  • The file upload must be allowed by the PHP server. To do so, the "file_uploads" directive must be set to "on" in the configuration file of PHP (php.ini file).
  • The upload_tmp_dir directive of the configuration file must be specified toward a directory with read/write rights.
Related Examples:
Uploading or Downloading a file Unit examples (WEBDEV): Uploading or Downloading a file
[ + ] This example explains how to upload (copy to the server) or download (download from the server) a file and it allows you to:
- Copy a file from the browser computer to the server
- Download a file found on the server
- Download a file found on the server via a link
- Download a file found on the server by requesting its opening
Minimum version required
  • Version 9
Comments
Click [Add] to post a comment

Last update: 01/12/2024

Send a report | Local help