2013-09-07 34 views
5

SửajQuery File Upload, tìm và chỉnh sửa dữ liệu được lưu trong DB

Với jQuery File Upload Documentation tôi có thể tiết kiệm dữ liệu với những hình ảnh trong MySQL DB (xem pic 1 + 2)

Bây giờ, nơi tôi đang mắc kẹt là làm thế nào để lấy lại dữ liệu. Sau khi tải lên tôi muốn hiển thị các bức ảnh với các dữ liệu từ DB nhưng không có gì tôi có thể tìm thấy làm thế nào để làm điều đó.

Nếu có ai biết cách chỉnh sửa json phụ thêm dữ liệu DB HOẶC chỉ cách tôi có thể var_dump nó chỉ để đẩy tôi đi đúng hướng sẽ tuyệt vời! Tôi không thể tìm thấy nơi mà các json được tạo ra. Các json bây giờ trông như thế này:

{"files":[{ 
    "name"   : "02 (1).jpg", 
    "size"   : 12508, 
    "type"   : "image\/jpeg", 
    "url"   : "http:\/\/localhost:8888\/server\/php\/files\/02%20%281%29.jpg", 
    "thumbnailUrl" : "http:\/\/localhost:8888\/server\/php\/files\/thumbnail\/02%20%281%29.jpg", 
    "deleteUrl" : "http:\/\/localhost:8888\/server\/php\/?file=02%20%281%29.jpg", 
    "deleteType" : "DELETE" 
}]} 

và tôi muốn thực hiện điều đó như:

{"files":[{ 
    "name"   : "02 (1).jpg", 
    "size"   : 12508, 
    "type"   : "image\/jpeg", 
    "url"   : "http:\/\/localhost:8888\/server\/php\/files\/02%20%281%29.jpg", 
    "thumbnailUrl" : "http:\/\/localhost:8888\/server\/php\/files\/thumbnail\/02%20%281%29.jpg", 
    "deleteUrl" : "http:\/\/localhost:8888\/server\/php\/?file=02%20%281%29.jpg", 
    "deleteType" : "DELETE", 
    "titleDB"  : "Title1", 
    "textDB"  : "Lorem ipsum dolor...." 
}]} 

tôi đã cố gắng (như Raja giải thích) và thay đổi sau

require('UploadHandler.php'); 
$upload_handler = new UploadHandler(); 
$response_enc = $this->upload_handler->initialize(); 

Nhưng hơn Tôi nhận được thông báo lỗi "JSON.parse: ký tự không dấu cách không mong muốn sau dữ liệu JSON" và tôi đã tiết lộ thông tin đó và tôi đã tìm thấy thông tin nhưng không có gì giúp ích cho tôi.

Có ai có thể giúp tôi về vấn đề này hoặc biết nơi tôi có thể tìm thấy Thông tin không? Cảm ơn bạn!

picpic2

Trả lời

2

này sẽ cung cấp cho bạn những ý tưởng cơ bản chỉnh sửa câu trả lời json từ thư viện uploadhandler,

EDITED:

Trong thư viện uploadhandler.php bạn và thay đổi dòng này để nó sẽ trả về phản hồi,

public function post($print_response = true) đến public function post($print_response = false)

public function get($print_response = true) để public function get($print_response = false)

protected function initialize() để public function initialize()

EDITED: thay đổi này quá function __construct($options = null, $initialize = false, $error_messages = null)

và trong

function initialize() 
// 
      case 'POST': 
       return $this->post(); //Change this line like here 
       break; 
//// 
      case 'GET': 
       return $this->get(); //Change this line like here 
       break; 
// 

Sau đó, trong chức năng mà bạn gọi thư viện có được phản hồi b ack,

require('UploadHandler.php'); 
$upload_handler = new UploadHandler(); 
$response = $upload_handler>initialize(); 

print_r($response); //Dump the response here and check  

$custom_arr = //Save all your custom variables here (DB insert id, Text etc) 
//Sample format of custom_arr 
//$custom_arr['insert_id'] = $mysql_primary_key_id; 
//$custom_arr['txt'] = $user_custom_text_field; 
// 

$response['custom_data'] = $custom_arr; 

echo json_encode($response); 

Trong giao diện người dùng, bạn có thể sử dụng cuộc gọi fileuploaddone để nhận dữ liệu và phát.

+0

ooooh rAjA cảm ơn bạn rất nhiều. Tôi sẽ thử! – caramba

+0

Bạn được chào đón :) Hãy cho tôi biết nếu bạn bị kẹt ở bất cứ đâu – rAjA

+0

ngay khi tôi có $ response_enc = $ this-> upload_handler-> initialize(); Tôi gặp lỗi (JSON.parse: ký tự không phải khoảng trắng không mong muốn sau dữ liệu JSON) bất kỳ ý tưởng nào tại sao?$ custom_arr (biến) sẽ trông như thế nào? – caramba

Các vấn đề liên quan