2016-10-24 9 views
1

こんにちは私は、私のiStock swiftアプリケーションから複数の画像をアップロードしています。データベースに複数のファイルを保存するPHP

私の問題は私のDBにそれらを格納することができないと私はかなり確信しています...それは私のPHPコードで行うことです...それは1イメージのためにうまく動作しますが、2 images ...私はループを使ってみましたが、何もうまくいかず、恐らくそれらをインプリメントするための私のせいかもしれません。

ここに私のPHPコードは、誰でもそれが大いに感謝することができれば!

// STEP 2.3 Move uploaded file 
$folder = $folder . "/" . basename($_FILES["file"]["name"]); 

if (move_uploaded_file($_FILES["file"]["tmp_name"], $folder)) { 


    $returnArray["message"] = "Post has been made with picture"; 
    $blogImage1 = "http://**********/Files/Posts/ImgPosts/" .$id . "/" . $Title . "-". $uuid . "/" . basename($_FILES["file"]["name"]); // 

} else { 
//$returnArray["message"] = "Post has been made without picture"; 
$Image1 = ""; 

} 

スウィフトコード

func createBodyWithParameters(parameters: NSMutableDictionary?,boundary: String) -> NSData { 
    let body = NSMutableData() 

    if parameters != nil { 
     for (key, value) in parameters! { 

      if(value is String || value is NSString){ 
       body.appendString("--\(boundary)\r\n") 
       body.appendString("Content-Disposition: form-data; name=\"\(key)\"\r\n\r\n") 
       body.appendString("\(value)\r\n") 
      } 
      else if(value is [UIImage]){ 
       var i = 0; 
       for image in value as! [UIImage]{ 
        let filename = "image\(i).jpg" 
        let data = UIImageJPEGRepresentation(image,1); 
        let mimetype = "image/jpg" 
        //"\(key)\(i)" 
        body.appendString("--\(boundary)\r\n") 
        body.appendString("Content-Disposition: form-data; name=\"\(key)\(i)\"; filename=\"\(filename)\"\r\n") 
        body.appendString("Content-Type: \(mimetype)\r\n\r\n") 
        body.append(data!) 
        body.appendString("\r\n") 
        i += 1; 
       } 


      } 
     } 
    } 
    body.appendString("--\(boundary)--\r\n") 
    //  NSLog("data %@",NSString(data: body, encoding: NSUTF8StringEncoding)!); 
    return body 
} 

誰もがより多くのコードを参照する必要がある場合、私に知らせてください。

+0

投稿している2番目のファイル名は何ですか? –

+0

@AlbertAkkiそれはまた "ファイル"私は配列をアップロードしています..しかし、私は "file0"(最初の画像)と "file2"(2番目の画像)に変更することができます何をお勧めしますか?迅速なコードを見たいですか? –

+0

はいファイル名を変更して試してください。また、2つのファイルのアップロードコードを2回書く必要があるPHPコードを更新してください –

答えて

0

私は私のIOSアプリでUIImage配列から複数の画像を追加し、これに画像を追加するための私のPHPファイルで、現在のコードを変更することで、私の問題を修正:

foreach ($_FILES["file"]["tmp_name"] as $index => $tmp_name) { 
    $filePath = $folder . "/" . basename($_FILES["file"]["name"][$index]); 
    if (move_uploaded_file($tmp_name, $filePath)) { 
     // rename like you want to 
     $filePath = "http://**.**.***.**/Files/Posts/IMGPosts/" .$id . "/" . $Title . "-". $uuid . "/" . basename($_FILES["file"]["name"][$index = 0]); // 
     $Image1 = $filePath; // 
     $filePath = "http://**.**.***.**/Files/Posts/IMGPosts/" .$id . "/" . $Title . "-". $uuid . "/" . basename($_FILES["file"]["name"][$index = 1]); // 
     $Image2 = $filePath; // 

希望、これはあまりにも他の人を助けそれ以上の詳細については、下記のコメントだけ!

関連する問題