Advertisement
Guest User

Untitled

a guest
Feb 23rd, 2020
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.61 KB | None | 0 0
  1. public function uploadSingleImage(Request $request,EntityManagerInterface $emm,Ayuda $helpers) {
  2. $dataJson = $request->get('data', null);
  3. if ($dataJson != null) {
  4. $params = json_decode($dataJson);
  5. $login = isset($params->login) ? $params->login : null;
  6. $base64 = isset($params->base64) ? $params->base64 : null;
  7.  
  8. $base64 = str_replace(" ", "+", $base64); //El string base_64 nos llega con espacios que sustituiremos por símbolos ‘+’.
  9.  
  10.  
  11. $uniname = uniqid() . date("Y-m-d-H-i-s") . ".jpg"; //Generamos el nombre de la imagen, lo usaremos para guardar la misma como archivo y en la base de datos.
  12.  
  13.  
  14. $new_image_url = "../public/images/profile/" . $uniname; //Generamos la url donde se almacena la foto.
  15.  
  16.  
  17. $base64 = 'data:image/jpeg;base64,' . $base64;
  18. $base64 = base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $base64)); //Añadimos una cabecera para que el string base_64 se interprete como una imagen y lo decodificamos.
  19.  
  20.  
  21. file_put_contents($new_image_url, $base64); //Pasamos la foto al directorio indicado.
  22.  
  23. $em = $this->getDoctrine();
  24. $userD = $em->getRepository(UsuariosDetalles::class)->find($login); //Buscamos al usuario que ha realizado la foto para insertar la ruta a su foto de perfil.
  25.  
  26.  
  27. $userD->setImg("images/profile/" . $uniname); //Insertamos la ruta a la foto de perfil del usuario que ha realizado la foto.
  28.  
  29. $emm->flush(); //Aplicamos cambios
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement