---
title: "Uploader.AfterPackageUpload Event ActiveX/Java Uploader "
canonical: https://www.aurigma.com/docs/us8/JA_E_Uploader_AfterPackageUpload.htm
product: "Upload Suite 8"
---

# Uploader.AfterPackageUpload Event ActiveX/Java Uploader 

Supported browsers: ![Internet Explorer](https://www.aurigma.com/docs/us8/icons/ie8.png)![Firefox](https://www.aurigma.com/docs/us8/icons/firefox.png)![Google Chrome](https://www.aurigma.com/docs/us8/icons/chrome.png)![Safari](https://www.aurigma.com/docs/us8/icons/safari.png)
 
This event fires when the current package was uploaded successfully.

## Syntax
 
```aspx-cs
<script type="text/javascript">
function Uploader1_AfterPackageUpload(packageIndex, response){
    //...your code...
}
</script>
```

```
<aur:Uploader ID="Uploader1" runat="server">
    <ClientEvents>
        <aur:ClientEvent EventName="AfterPackageUpload" HandlerName="Uploader1_AfterPackageUpload" />
    </ClientEvents>
</aur:Uploader>
```
 
```
<script type="text/javascript">
function Uploader1_AfterPackageUpload(packageIndex, response){
    //...your code...
}
</script>
```

```
<?php
    $Uploader = new Uploader("Uploader1");
    //...other params...
    $Uploader->getClientEvents()->setAfterPackageUpload("Uploader1_AfterPackageUpload");
    //...other params...
    $Uploader->render();
?>
```
 
```
function Uploader1_AfterPackageUpload(packageIndex, response){
    //...your code...
}
```

```
$au.uploader({
    events: {
        //...other params...
        afterPackageUpload: [Uploader1_AfterPackageUpload],
        //...other params...
    }
})
```
 
### Parameters
 
 - packageIndex
     - Type: **Number**
 
The zero-based index of the package inside the current upload session.
 - response
     - Type: **String**
 
The HTML code of the page returned from the server-side upload script after processing the current package.
 
### Return Value
 
Type: **Boolean**
 
If `false`, the upload process stops and the [Error](https://www.aurigma.com/docs/us8/JA_E_Uploader_Error.htm.md) event is fired with error code `18`.

## Remarks
 
**Note** 
This event makes sense if the FilesPerPackage[FilesPerPackage (ASP.NET)](https://www.aurigma.com/docs/us8/JA_P_Aurigma_ImageUploader_UploadSettings_FilesPerPackage.htm.md)[FilesPerPackage (PHP)](https://www.aurigma.com/docs/us8/JA_P_P_UploadSettings_FilesPerPackage.htm.md)[filesPerPackage (JavaScript)](https://www.aurigma.com/docs/us8/JA_P_J_$au_uploadSettings_filesPerPackage.htm.md) property is greater than or equal to `1`; otherwise, this event works equally to the [AfterUpload](https://www.aurigma.com/docs/us8/JA_E_Uploader_AfterUpload.htm.md).
 
You can use this event to stop the upload if the currently uploaded file fails some server-side verification. To do this, you can use the following algorithm:
 
1. Configure ActiveX/Java Uploader to send every file in a separate package, i.e. set the **FilesPerPackage** property to `1`.
2. Write your server-side upload script. It should apply some verification to the uploaded file and put the corresponded string value to the response. For example, `"Success"` if the file meets verification conditions or `"Failed"` if does not.
 ```csharp
    <script runat="server">
    void Page_Load()
    {if (Request.Files.Count == 0)	return;if (VerifyFile(Request.Files[0]))	Response.Write("Success");else	Response.Write("Failed");
    }
    </script>
    ```
3. Then use the [AfterPackageUpload](https://www.aurigma.com/docs/us8/JA_E_Uploader_AfterPackageUpload.htm.md) event handler to check this response using the response parameter. If it equals to `"Failed"` the event handler should return `false`.
 ```
    function afterPackageUpload(index, response){if (response.substring(0, 6) == "Failed")	return false;else	return true;
    } 
    ```
4. Right now the upload process stops and the **Error** event is fired with error code `18`.

## See Also
 
### Reference
 
- [Error Event](https://www.aurigma.com/docs/us8/JA_E_Uploader_Error.htm.md)
- FilesPerPackage Property[FilesPerPackage (ASP.NET)](https://www.aurigma.com/docs/us8/JA_P_Aurigma_ImageUploader_UploadSettings_FilesPerPackage.htm.md)[FilesPerPackage (PHP)](https://www.aurigma.com/docs/us8/JA_P_P_UploadSettings_FilesPerPackage.htm.md)[filesPerPackage (JavaScript)](https://www.aurigma.com/docs/us8/JA_P_J_$au_uploadSettings_filesPerPackage.htm.md)
- AfterPackageUpload Property[AfterPackageUpload (PHP)](https://www.aurigma.com/docs/us8/JA_P_P_ClientEvents_AfterPackageUpload.htm.md)[afterPackageUpload (JavaScript)](https://www.aurigma.com/docs/us8/JA_P_J_$au_events_afterPackageUpload.htm.md)

### Manual
 
- [Using Events](https://www.aurigma.com/docs/us8/using-javascript-api.htm.md)
