PHP - subir y enseñar imagenes con php mysql

 
Vista:
sin imagen de perfil
Val: 60
Ha aumentado su posición en 2 puestos en PHP (en relación al último mes)
Gráfica de PHP

subir y enseñar imagenes con php mysql

Publicado por vanessa (27 intervenciones) el 31/01/2018 18:56:36
Hola alguien me podria ayudar tengo el siguiente problema

tengo un codigo para poder subir y almacenar fotos con php y mysql y muestra las fotos almacenadas en otra pagina y funciona bien
el problema es cuando se sube una imagenque tenga mas altura que ancho por ejemplo 600 x 400 la rota y la foto la muestra acostada aunque en la carpeta se muestra normal sin cambios

y si se cube una imagen con mas ancho que alto ejem 400 x 600 no hay problema la sube asi tal es
es buscado en todos lados y nada mas eh encontrado que puede ser por como se tomo la foto si en vertical u horizontal

alguien me podria ayudar para poder cambiar de formato o algo para poder rotar nada mas ese tipo de imagenes

este es parte de mi codigo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
if (empty($_SESSION['username']) && empty($_SESSION['password'])){
    echo "<meta http-equiv='refresh' content='0; url=index.php?alert=1'>";
}
//  el usuario ya ha iniciado sesión, a continuación, ejecutar el comando para insertar, actualizar y borrar
else {
    if ($_GET['act']=='insert') {
        if (isset($_POST['save'])) {
            // captura de datos desde un formulario 
            $title              = mysqli_real_escape_string($mysqli, trim($_POST['title']));
		    $descr              = mysqli_real_escape_string($mysqli, trim($_POST['descr']));
			$precio             = mysqli_real_escape_string($mysqli, trim($_POST['precio']));
            $tipo				= mysqli_real_escape_string($mysqli, trim($_POST['tipo']));
			$visible		    = mysqli_real_escape_string($mysqli, trim($_POST['visible']));
			$maps		        = mysqli_real_escape_string($mysqli, trim($_POST['maps']));
 
//$file = 'foo.jpg';
//$pathInfo = pathinfo($file);
//rename($file, 'nombre_nuevo' . $pathInfo['extension']);		
 
 
 
 
 
//   $name_file         = $_FILES['imagen']['name'] = str_replace(".JPG", ".PNG", $_FILES['imagen']['name']);
 
			$name_file          = strtolower ($_FILES['image']['name']);
            $size_file          = $_FILES['image']['size'];
            $tipe_file          = $_FILES['image']['type'];
            $tmp_file           = $_FILES['image']['tmp_name'];
 
 
            // determinar la extensión permisible
            $allowed_extensions = array('jpg','jpeg','png','JPG');
 
            // Establecer una ruta de carpeta para almacenar la imagen
            $path               = "../../../images/portfolio/".$name_file;
 
 
            // Comprobar la extensión
            $file               = explode(".", $name_file);
 
            $extension          = array_pop($file);
 
            // Compruebe si el tipo de archivo que esté cargado de conformidad con las extensiones permitidas
            if(in_array($extension, $allowed_extensions)) {
 
 
                // Si el tipo de archivo que esté cargado de conformidad con las extensiones permitidas:
                if($size_file  <= 1000000) {
 
					 // Comprueba si el tamaño del archivo subido menos igual a 1 MB
                    //Si el tamaño del archivo es menor o igual a 1 MB, hacer:
                    //El proceso de carga
                    if(move_uploaded_file($tmp_file, $path )) {
 
					 // Compruebe si la imagen fue subida o no con éxito
                        // Si la imagen ha cargado correctamente, Marca:
 
 
 
 
                        // consultar comando para guardar los datos en la tabla is_portfolio
           $query = mysqli_query($mysqli, "INSERT INTO is_portfolio(title,descr,precio,tipo,visible,image,,maps)
  VALUES('$title','$descr','$precio','$tipo','$visible','$name_file','$maps')")
                                   or die('Hubo un error en la consulta de inserción : '.mysqli_error($mysqli));
 
                        // comprobar consulta
                        if ($query) {
                            // si tiene éxito mensaje indican exitosa almacén de datos
                            header("location: ../../main.php?module=portfolio&alert=1");
                        }
                     } else {
                        // Si la imagen no se ha subido, mostrar un mensaje no se ha subido
                        header("location: ../../main.php?module=portfolio&alert=4");
                    }
                } else {
                    // Si el tamaño del archivo es de menos de 1 MB, mostrar un mensaje no se ha subido
                    header("location: ../../main.php?module=portfolio&alert=5");
                }
         } else {
                //Si el tipo de archivo subido no es JPG / JPEG / PNG, mostrar un mensaje no se ha subido
                header("location: ../../main.php?module=portfolio&alert=6");
            }
        }
    }

de antema no gracias
saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de santi
Val: 588
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

subir y enseñar imagenes con php mysql

Publicado por santi (204 intervenciones) el 02/02/2018 02:47:47
Hola,

creo que lo que te pasa es que al cambiar el ancho o el alto se mantienen las proporciones, que es la clave porque no deforma la imagen...

Desde mi punto de vista, lo mejor es utilizar un componente tipo "cropit" -> http://scottcheng.github.io/cropit/

En este caso eres tu quien decide las medidas de la imagen y le das al usuario la posibilidad de modificarla según su gusto.

Pasar los datos a un archivo no es tan difícil pero tienes que hacer pruebas.

Espero que te sirva ::)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 60
Ha aumentado su posición en 2 puestos en PHP (en relación al último mes)
Gráfica de PHP

subir y enseñar imagenes con php mysql

Publicado por vanessa (27 intervenciones) el 02/02/2018 19:56:10
Hola muchas gracias por tu ayuda
ya tengo una función en javascript la cual me rota la imagen
habra alguna forma de guardar la imagen rotada y dejarla con la rotacion

1
2
3
4
5
6
7
<div class="col-sm-8">
  <input style="height:35px" type="file" name="image" autocomplete="off">
  <br>
  <img src="../images/portfolio/<?php echo $data['image']; ?>" height="150" id="img">
  <button type="button" onclick="rotate(90)" class="btn2">Rotar</button>
 
</div>


1
2
3
4
5
6
7
8
<script>
function rotate(value)
{
document.getElementById('img').style.webkitTransform="rotate(" + value + "deg)";
document.getElementById('img').style.msTransform="rotate(" + value + "deg)";
document.getElementById('img').style.transform="rotate(" + value + "deg)";
}
</script>

gracias
saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 60
Ha aumentado su posición en 2 puestos en PHP (en relación al último mes)
Gráfica de PHP

subir y enseñar imagenes con php mysql

Publicado por vanessa (27 intervenciones) el 06/02/2018 20:24:41
resuelto muchas gracias
en esta pagina se explica muy bien el proceso

https://eldesvandejose.com/2017/02/21/rotacion-automatica-de-imagenes/#comment-161

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar