I'm trying to upload image with text message to php server through HTTP POST but the sent message is reached to server as null
@IBOutlet var image: UIImageView!
var CUSTOMER_KEY = "dkeqnq9fmkhq"
var msg = "The first msg"
override func viewDidLoad() {
    super.viewDidLoad()
}
@IBAction func selectVideo(sender: AnyObject) {
    var videoPickerController = UIImagePickerController()
    videoPickerController.delegate = self
    videoPickerController.sourceType = .SavedPhotosAlbum
    videoPickerController.mediaTypes =  [kUTTypeMovie as String]
    self.presentViewController(videoPickerController, animated: true, completion: nil)
}
@IBAction func selectPicture(sender: AnyObject) {
    let ImagePicker = UIImagePickerController()
    ImagePicker.delegate = self
    ImagePicker.sourceType = UIImagePickerControllerSourceType.PhotoLibrary
    self.presentViewController(ImagePicker, animated: true, completion: nil)
}
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
    image.image = info[UIImagePickerControllerOriginalImage] as? UIImage
    self.dismissViewControllerAnimated(true, completion: nil)
}
@IBAction func upload_request(sender: AnyObject) {
    UploadRequest()
}
func UploadRequest()
{
    let comURL = "myurlhere?customer_key=dkeqnq9fmkhq&msg=MSGHere"
    let sendURL:NSURL = NSURL(string: comURL.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)!)!
    let request = NSMutableURLRequest(URL: sendURL)
    request.HTTPMethod = "POST"
    let boundary = generateBoundaryString()
    request.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
    if (image.image == nil)
    {
        return
    }
    let image_data = UIImagePNGRepresentation(image.image!)
    if(image_data == nil)
    {
        return
    }
    let body = NSMutableData()
    let newRandomName = randomStringWithLength(32)
    let fname = (newRandomName as String) + ".png"
    let mimetype = "image/png"
    print ("New File Name:" + (newRandomName as String))
    body.appendData("--\(boundary)\r\n".dataUsingEncoding(NSUTF8StringEncoding)!)
    body.appendData("Content-Disposition:form-data; name=\"test\"\r\n\r\n".dataUsingEncoding(NSUTF8StringEncoding)!)
    body.appendData("hi\r\n".dataUsingEncoding(NSUTF8StringEncoding)!)
    body.appendData("--\(boundary)\r\n".dataUsingEncoding(NSUTF8StringEncoding)!)
    body.appendData("Content-Disposition:form-data; name=\"file\"; filename=\"\(fname)\"\r\n".dataUsingEncoding(NSUTF8StringEncoding)!)
    body.appendData("Content-Type: \(mimetype)\r\n\r\n".dataUsingEncoding(NSUTF8StringEncoding)!)
    body.appendData(image_data!)
    body.appendData("\r\n".dataUsingEncoding(NSUTF8StringEncoding)!)
    body.appendData("--\(boundary)--\r\n".dataUsingEncoding(NSUTF8StringEncoding)!)
    request.HTTPBody = body
    let session = NSURLSession.sharedSession()
    let task = session.dataTaskWithRequest(request) {
        (
        let data, let response, let error) in
        guard let _:NSData = data, let _:NSURLResponse = response  where error == nil else {
            print("error")
            return
        }
        let dataString = NSString(data: data!, encoding: NSUTF8StringEncoding)
        print(dataString)
    }
    task.resume()
}
func generateBoundaryString() -> String
{
    return "Boundary-\(NSUUID().UUIDString)"
}
func randomStringWithLength (len : Int) -> NSString {
    let letters : NSString = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    var randomString : NSMutableString = NSMutableString(capacity: len)
    for (var i=0; i < len; i++){
        var length = UInt32 (letters.length)
        var rand = arc4random_uniform(length)
        randomString.appendFormat("%C", letters.characterAtIndex(Int(rand)))
    }
    return randomString
}
Also If i want to make the same thing to send image, video and text message at the same time how I can do that to take video path after selected it and upload it to server through HTTP POST?
 
     
     
     
    