Хорошо, поэтому с помощью phonegap я создал приложение, которое загружает изображение из библиотеки iphone. Он отправляет его в скрипт php, который декодирует образ base64 и записывает файл. У меня сейчас проблема в том, что это образ base64, и мне нужно сделать его копию и изменить его размер с помощью средства воспламенения кода. Как я уже сказал, он пишет файл нормально, но не может прочитать файл, чтобы изменить его размер.
Это мой код:
if ($_POST['image']) {
// convert the image data from base64
$imgData = base64_decode($_POST['image']);
// set the image paths
$path = './assets/site/images/photo_gallery/';
$file = md5(date('Ymdgisu')) . '.jpg';
$file_path = $path . $file;
$title = trim($_POST['title']);
$description = trim($_POST['description']);
$username = trim($_POST['username']);
$galID = $this->model_mobile->get_user_galID($username);
if($galID){
$galleryID = $galID[0]->galleryid;
write_file($path . $galleryID . '/' . $file, $imgData);
$data = array (
'date_added' => date('o-m-d H:i:s'),
'parentuid' => $galleryID,
'image_url' => $file,
'title' => $title,
'description' => $description,
'gallery_face' => 0,
'active' => 1
);
$config['source_image'] = '/assets/site/images/photo_gallery/' . $galleryID . '/' . $file;
$config['quality'] = '100%';
$config['new_image'] = '/assets/site/images/photo_gallery/' . $galleryID . '/s_' . $file;
$config['maintain_ratio'] = TRUE;
$config['master_dim'] = 'width';
$config['width'] = 200;
$config['height'] = 150;
$this->image_lib->initialize($config);
$this->image_lib->resize();
//$this->db->insert('table', $data);
echo 1;
}else{
echo 0;
}
}else {
echo 0;
}
}
ОБНОВЛЕНИЕ: Я решил проблему!
в моем файле js я отправлял данные изображения в кодировке base64. Это уже есть. Так что, просто отправив данные и затем расшифровав их в php, как описано выше, работал отлично.
Надеюсь, это кому-нибудь поможет!