public function uploaderAction(Request $request) { // Получение переданных файлов и информации об альбоме из запроса $file = $_FILES['uploadedImages']; $tmpFileName = $file['tmp_name']; if (is_uploaded_file($tmpFileName)) { chmod($tmpFileName, 0660); } $albumID = $request->get('albumID'); // Создание экземпляра Imagick и образка изображение до нужного размера try { $image = new \Imagick($tmpFileName); } catch (\ImagickException $e) { return new JsonResponse(array('success' => false, 'errorMessage' => ["Файл {$file['tmp_name']} не загрузился"])); } $image->cropImage(800, 800, 0, 0); // Формирование нового имени файла $hashFile = md5_file($tmpFileName); $newFileName = $hashFile . '.jpg'; // Сохранение файла в папки $uploadDir = $request->server->get('DOCUMENT_ROOT') . '/uploaded/images'; $imagePaths = array('800x800' => "{$uploadDir}/800x800/", '200x200' => "{$uploadDir}/200x200/"); foreach ($imagePaths as $size => $path) { $dimensions = explode('x', $size); $image->thumbnailImage((int) $dimensions[0], (int) $dimensions[1], true, false); $image->writeimage($path . $newFileName); } // Сохранение информации о файле в базе $em = $this->getDoctrine()->getManager(); $album = $em->getRepository('PhotoBundle:Album')->find($albumID); if (!$album) { return new JsonResponse(array('success' => false, 'errorMessage' => ["Переданы не корректные парраметры"])); } $photo = new Photo(); $photo->setAlbum($album)->setEnabled(1)->setName($newFileName); $em->persist($photo); $em->flush(); $images = array('success' => true, 'fileName' => $newFileName); //$images = ''; return new JsonResponse($images); }
public function load(ObjectManager $em) { $photo1 = new Photo(); $photo1->setEnabled(); $photo1->setName('cd07ea547b1e72ebce020a277a1c8849.jpg'); $photo1->setAlbum($this->getReference('album-progulka')); $photo2 = new Photo(); $photo2->setEnabled(); $photo2->setName('650a66c7210b756f9a57e648d2b6d6cd.jpg'); $photo2->setAlbum($this->getReference('album-progulka')); $photo3 = new Photo(); $photo3->setEnabled(); $photo3->setName('18290ebcfcb7867260b4445595a7bf8a.jpg'); $photo3->setAlbum($this->getReference('album-progulka')); $photo4 = new Photo(); $photo4->setEnabled(); $photo4->setName('5ac4829e232eb024d9a9c154ad321fc6.jpg'); $photo4->setAlbum($this->getReference('album-progulka')); $photo5 = new Photo(); $photo5->setEnabled(); $photo5->setName('eb66159c445125841cf58c09113dc0a4.jpg'); $photo5->setAlbum($this->getReference('album-progulka')); $photo6 = new Photo(); $photo6->setEnabled(); $photo6->setName('287bde35632cf8a742c96db8a1b33074.jpg'); $photo6->setAlbum($this->getReference('album-progulka')); $photo7 = new Photo(); $photo7->setEnabled(); $photo7->setName('be8b7154ef263cf213f2a8dac6a5c70c.jpg'); $photo7->setAlbum($this->getReference('album-progulka')); $em->persist($photo1); $em->persist($photo2); $em->persist($photo5); $em->persist($photo6); $em->persist($photo3); $em->persist($photo4); $em->persist($photo7); $em->flush(); }