Comunidad de diseño web y desarrollo en internet online

Guardar imagen de Mysql como archivo jpg

Citar            
MensajeEscrito el 14 Ago 2013 05:22 pm
Saludos cordiales, esperando que estén pasando un hermoso día en companía de sus PCs jaja :D
paso a contarles mis problema.

Tengo una aplicación mobil que sube unas imágenes a una Base de Datos en mi servidor, después con un código php, puedo mostrar esas imágenes en el navegador web.
el problema

lo que estoy intentando ahora es de que esa imagen que se muestra en el navegador guardarla en una carpeta del servidor como un archivo JPG.

y así de repente poder eliminar la imagen de la base de datos para que no se haga muy pesada.

Como lo haria?

la única manera que conozco de subir una imagen es con el "botoncito de buscar imagen"

gracias por su apoyo

Por eldavan

12 de clabLevel



 

chrome
Citar            
MensajeEscrito el 15 Ago 2013 01:53 pm
Te faltan muchos datos por aportar ¿qué aplicación movil es la que usas? ¿la hiciste tu (y por lo tanto puedes manipularla) o es de Terceros y no puedes modificar el source? ¿el servidor que mencionas es tuyo? ¿qué tipo de base de datos es? ¿como sube esa aplicación las imagenes al servidor? supuestamente no debería ser DENTRO de la propia base de datos sinó que en un directorio, y en la base de datos lo unico que se guardaría es la URL para verla (en cuyo caso, ya estaría hecho lo que pides).

Si la imagen se sube directamente a la base de datos ¿seguro? .... entonces lo que hay que modificar es esa aplicación movil para que lo haga directamente al directorio web haciendo lo que digo en el 1º parrafo. Evitas que la base de datos no quede muy pesada y te quitas de en medio ese 2º paso que quieres hacer ahora.

No mencionas ni siquiera nada de código que analizar... así es imposible.

Por pitger

Claber

201 de clabLevel



Genero:Masculino  

Cáceres

firefox
Citar            
MensajeEscrito el 15 Ago 2013 04:20 pm
La aplicación con la que subimos las imágenes esta echa en C# para un sistema Windows Mobile.

la base de datos en la que se almacena es Mysql.

Por eldavan

12 de clabLevel



 

chrome
Citar            
MensajeEscrito el 15 Ago 2013 08:47 pm
Me ha parecido ver que abriste otro post con la misma pregunta y ya te dieron una respuesta que te convenció ( http://foros.cristalab.com/mostrar-imagen-desde-mysql-en-pagina-php-t111269/ )

No sé si es el mismo asunto aunque es parecido. En todo caso, ahora que sabemos que la aplicación está hecha en C# y puedes subir las imagenes a MySQL, en el servidor, pues entonces no deberías tener problema para hacer lo que te dije en mi anterior post... define una ruta del server donde subir la imagen (supongo que a través de protocolo FTP y después que se confirma que se subió al 100%, capturas la URL y la introduces en la base de datos.

Por pitger

Claber

201 de clabLevel



Genero:Masculino  

Cáceres

firefox
Citar            
MensajeEscrito el 20 Ago 2013 09:45 pm
Correcto, lo que hace tu aplicación en C# es convertir la imagen a un codigo de muchos caracteres.

como menciona pitger, en ves del archivo solo guarda el "nombre" de la imagen, para que puedas llamarla como:

$ruta = "directirio/imagenes/"
<img src="<? $ruta.$nombre_archivo ?>" />

(consideranco PHP solo haz la traduccion a C#)

y de paso dejo mi multifile upload con PHP
http://elporfirio.com/wp/2013/07/subir-varios-archivos-con-php-multifile-upload/

Por elporfirio

Claber

652 de clabLevel

1 tutorial

Genero:Masculino  

FullStack Web Developer

firefox
Citar            
MensajeEscrito el 20 Ago 2013 10:41 pm
Gracias por las sugerencias,
ya encontré la manera de guardar las imágenes con el sig. código.
------
<!-- Crea las imagens -->
<div id="Creaimagenoriginal">
<?php
conectar();
//$Resultado = mysql_query("SELECT `idpits` , `nombre` FROM `pits` ORDER BY `idpits` DESC LIMIT $li, $can ") or die(mysql_error());
$Resultado = mysql_query("SELECT `idimagenes` ,descripcion, CONCAT( 'img', idimagenes, '_', 'activ', `actividad_idactividad` ) AS 'nombre' FROM `imagenes` where actividad_idactividad=$lanid ") or die(mysql_error());
desconectar();
$color = true;
$nf = 0;
while ($MostrarFila = mysql_fetch_array($Resultado)) {

$mifile = $MostrarFila['nombre'] . '.jpg';
if (!file_exists('images/originales/' . $mifile)) {
save_image('http://servicios.comtel.com.pe/imagenes.php?id=' . $MostrarFila['idimagenes'] . '', 'images/originales/' . $mifile);
}

if (!file_exists('images/resize/' . $mifile)) {
// redimencionar las imagenes
// *** 1) Initialise / load image
$resizeObj = new resize('images/originales/' . $mifile);
// *** 2) Resize image (options: exact, portrait, landscape, auto, crop)
$resizeObj->resizeImage(150, 200, 'crop');
// *** 3) Save image
$resizeObj->saveImage('images/resize/' . $mifile, 100);
}
$_SESSION['descripimagen'][$nf] = $MostrarFila['descripcion'];
$_SESSION['urloriginales'][$nf] = 'images/originales/' . $mifile;
$_SESSION['nombreiamgesnes'][$nf] = 'images/resize/' . $mifile;
$nf+=1;
}

function save_image($inPath, $outPath) { //Download images from remote server
$in = fopen($inPath, "rb");
$out = fopen($outPath, "wb");
while ($chunk = fread($in, 8192)) {
fwrite($out, $chunk, 8192);
}
fclose($in);
fclose($out);
}
?>
</div>

-----
en cuanto a subirlo con FTP solo encontre la manera de hacerlo en formularios windows, pero para mi caso que es para windows mobile no se podía, así que opte por subirlo en un mapa de Bytes.

----
En cuanto a publicar la misma pregunta en diferentes partes, aprendí eso por que así encuentras respuesta mas parido.

Gracias denuevo

Por eldavan

12 de clabLevel



 

chrome
Citar            
MensajeEscrito el 20 Ago 2013 10:44 pm
por cierto, esta pregunta
http://foros.cristalab.com/mostrar-imagen-desde-mysql-en-pagina-php-t111269/
era otra, pero con la unión de todas las preguntas se completo lo que quería hacer.

Por eldavan

12 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.