Foros del Web » Programando para Internet » PHP »

Selector de Imagenes Locales

Estas en el tema de Selector de Imagenes Locales en el foro de PHP en Foros del Web. Hola, soy nuevo en php y estoy buscado la manera de hacer un upload de imágenes pero con una selección previa. Esquemáticamente, se presentarían en ...
  #1 (permalink)  
Antiguo 29/12/2009, 05:18
 
Fecha de Ingreso: diciembre-2009
Mensajes: 7
Antigüedad: 14 años, 3 meses
Puntos: 0
Selector de Imagenes Locales

Hola, soy nuevo en php y estoy buscado la manera de hacer un upload de imágenes pero con una selección previa.
Esquemáticamente, se presentarían en la página un combo para que el usuario determinase la carpeta de origen, un div a la izquierda donde se mostrarían las imágenes que contiene esa carpeta y por ultimo un div a la derecha donde se colocan las imágenes seleccionadas (por drag and drop o mediante un botón). En ambos divs las imágenes se mostrarían en una pequeña área de unos 60px. Para más complicaciones, no estaría nada mal que todo esto se produjera sin subir las imágenes al servidor.....
Que me dicen? es posible?
  #2 (permalink)  
Antiguo 29/12/2009, 06:38
Avatar de cfranco  
Fecha de Ingreso: enero-2008
Ubicación: Barcelona - España
Mensajes: 182
Antigüedad: 16 años, 3 meses
Puntos: 6
Respuesta: Selector de Imagenes Locales

Interesante tu planteamiento:

Pero creo que mas que un problema de PHP esto es más un problema JavaScript ya que lo que quieres, sí se puede hacer pero te repito para los efectos que mencionas como el de copiar y pegar se hacen con JavaScript, como veo que eres nuevo en la Comunidad, no quiero que en tu primer mensaje te dejen "colgado con ésta duda".

Bienvenido a la Comunidad y si preguntas en el foro de JS estoy seguro que sabrán guiarte y de seguro te surgirá algún problema en PHP al momento de almacenar o guardar en alguna Base de Datos, suerte!!!
__________________
Salud y Éxitos
PFI Tube
  #3 (permalink)  
Antiguo 29/12/2009, 06:49
Avatar de TKZeXe  
Fecha de Ingreso: diciembre-2009
Ubicación: Flowers
Mensajes: 166
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Selector de Imagenes Locales

Cita:
Iniciado por mdava Ver Mensaje
Hola, soy nuevo en php y estoy buscado la manera de hacer un upload de imágenes pero con una selección previa.
Esquemáticamente, se presentarían en la página un combo para que el usuario determinase la carpeta de origen, un div a la izquierda donde se mostrarían las imágenes que contiene esa carpeta y por ultimo un div a la derecha donde se colocan las imágenes seleccionadas (por drag and drop o mediante un botón). En ambos divs las imágenes se mostrarían en una pequeña área de unos 60px. Para más complicaciones, no estaría nada mal que todo esto se produjera sin subir las imágenes al servidor.....
Que me dicen? es posible?
El problema podria darse al mostrar un directorio del lado del cliente de esa forma solo con JS,
no lo he visto que recuerde.

la imagen la puedes grabar en un XML o en una BDD BLOB

un xml podria ser:

Código XML:
Ver original
  1. <filename>MiImagen.png</filename>  
  2. <content>iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+
  3. 9AAAABGdBTUEAANbY1E9YMgAAABl0RVh0
  4. U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAABASURBVHjaYvz//38DAxEAIICYGIgEAAFE
  5. tEKAACJaIUAAEa0QIICIVggQQEQrBAggohUCBBDRCgECiGiFAAEGAKAhA5FnxjzJAAAAAElFTkSu
  6. QmCC
  7. </content>

despues lo puedes mostrar con un php, (la imagen es un space blanco)

Código PHP:
Ver original
  1. <?php
  2. header("Content-type: image/gif");
  3. echo base64_decode('iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+
  4. 9AAAABGdBTUEAANbY1E9YMgAAABl0RVh0
  5. U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAABASURBVHjaYvz//38DAxEAIICYGIgEAAFE
  6. tEKAACJaIUAAEa0QIICIVggQQEQrBAggohUCBBDRCgECiGiFAAEGAKAhA5FnxjzJAAAAAElFTkSu
  7. QmCC');
  8. ?>

Última edición por TKZeXe; 29/12/2009 a las 06:55
  #4 (permalink)  
Antiguo 29/12/2009, 12:53
 
Fecha de Ingreso: diciembre-2009
Mensajes: 7
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Selector de Imagenes Locales

lo primero que no encuentro, es la forma de seleccionar una carpeta local. Otra posibilidad podria ser que en el div de la izquierda se muestre un arbol de carpetas del equipo local y en el div de la derecha las imagenes disponibles en esa carpeta ... como en facebook.
  #5 (permalink)  
Antiguo 29/12/2009, 13:17
Avatar de cfranco  
Fecha de Ingreso: enero-2008
Ubicación: Barcelona - España
Mensajes: 182
Antigüedad: 16 años, 3 meses
Puntos: 6
Respuesta: Selector de Imagenes Locales

Lo que pides se hace con JS, porque es el que actuará en el lado del cliente.

También lo que deberias hacer es probar con lo sencillo, es decir trabajar con un filename, para asi poder ver qué variables vas a recibir a lado del servidor.

Haz lo sencillo y luego vé a lo fuerte, te lo recomiendo!!!.
__________________
Salud y Éxitos
PFI Tube
  #6 (permalink)  
Antiguo 29/12/2009, 19:08
 
Fecha de Ingreso: diciembre-2009
Mensajes: 7
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Selector de Imagenes Locales

realmente no entiendo que quieres decirme "trabajar con un filename" ... disculpa mi ignorancia
  #7 (permalink)  
Antiguo 29/12/2009, 23:31
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Selector de Imagenes Locales

definitivamente con Javascript no se puede, tampoco con PHP ...

necesitas una tecnología con mas privilegios (para poder leer el sistema del cliente), básicamente Flash los tiene, pero no creo que sea lo único que anda por ahí....
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 30/12/2009, 03:10
 
Fecha de Ingreso: diciembre-2009
Mensajes: 7
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Selector de Imagenes Locales

me pondre a ver en flash que se puede hacer ....
esto es en Java ... [URL="http://jumploader.com/demo_images.html"]http://jumploader.com/demo_images.html[/URL] ... y realmente es lo que estoy buscando ...
Muchas gracias a todos por ser tan amables.
  #9 (permalink)  
Antiguo 02/01/2010, 20:02
 
Fecha de Ingreso: diciembre-2009
Mensajes: 7
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Selector de Imagenes Locales

He estado buscando y he dado con una aplicación muy interesante llamada Uploadify (http://www.uploadify.com/) que es una mezcla de JQ JS PHP y FLASH ... el caso es que carece de una documentación (o al menos no la he podido ver yo) respecto a como volcar la informacion de los archivos que se suben, en una base de datos ...
Este es el script de upload y me parece que desde aqui se puede tomar la información necesaria para volcarla en la db.
Si alguien conoce esta aplicación o se le ocurre algo mil gracias.
Código PHP:
<?php
if (!empty($_FILES)) {
    
$tempFile $_FILES['Filedata']['tmp_name'];
    
$targetPath $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';
    
$targetFile =  str_replace('//','/',$targetPath) . $_FILES['Filedata']['name'];
    
    
// $fileTypes  = str_replace('*.','',$_REQUEST['fileext']);
    // $fileTypes  = str_replace(';','|',$fileTypes);
    // $typesArray = split('\|',$fileTypes);
    // $fileParts  = pathinfo($_FILES['Filedata']['name']);
    
    // if (in_array($fileParts['extension'],$typesArray)) {
        // Uncomment the following line if you want to make the directory if it doesn't exist
        // mkdir(str_replace('//','/',$targetPath), 0755, true);
        
        
move_uploaded_file($tempFile,$targetFile);
        echo 
"1";
    
// } else {
    //     echo 'Invalid file type.';
    // }
}
?>
  #10 (permalink)  
Antiguo 02/01/2010, 20:18
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Selector de Imagenes Locales

precisamente ahí tienes toda la información, el segundo parámetro de move_uploaded_file() es el nombre y ruta del archivo final...

osea que es esa misma ruta la que necesitas para el INSERT en la base de datos..

pero supongo que eso si lo sabes hacer.... obviamente, después de subir el archivo exitosamente..

si lo piensas un poco, al final es una variable (sin importar su origen) y se utiliza como cualquier otra variable, si, de las que usas en los formularios convencionales, por URL, etc, etc...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 03/01/2010, 05:50
 
Fecha de Ingreso: diciembre-2009
Mensajes: 7
Antigüedad: 14 años, 3 meses
Puntos: 0
realmente no se como hacer el insert ... pero me pondre a investigar como.
Gracias por ponerme en el camino.

pues funciona ... lento, pero funciona. Debo estar comentiendo algun error a la hora de insertar el dato.
Código PHP:
<?php
if (!empty($_FILES)) {
    
$tempFile $_FILES['Filedata']['tmp_name'];
    
$targetPath $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';
    
$targetFile =  str_replace('//','/',$targetPath) . $_FILES['Filedata']['name'];
    
    
$fileTypes  str_replace('*.','',$_REQUEST['fileext']);
     
$fileTypes  str_replace(';','|',$fileTypes);
     
$typesArray split('\|',$fileTypes);
     
$fileParts  pathinfo($_FILES['Filedata']['name']);

        
move_uploaded_file($tempFile,$targetFile);
        echo 
"1";
        
$connectid mysql_connect("localhost","fileup","1234"); 

mysql_select_db("fileup",$connectid); 

$ssql "INSERT INTO img (IMG) VALUES ('$targetFile')"

if (
mysql_query($ssql,$connectid)){ 

    
$ultimo_id mysql_insert_id($connectid); 
    echo 
$ultimo_id
}else{ 
   echo 
"La inserción no se realizó"

}

?>
El unico inconveniente es que si cargas dos imagenes con el mismo nombre le base de datos repite la entrada y lo que es peor, el archivo es el mismo.
Cambiando el nombre del archivo antes de moverlo a su ubicación final o bien asignandole un nombre unico se podria solucionar el tema verdad?

Última edición por GatorV; 04/01/2010 a las 11:24
  #12 (permalink)  
Antiguo 04/01/2010, 07:44
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Selector de Imagenes Locales

genial!!

por lo del nombre único puedes utilizar uniqid() sobre el nombre del archivo...

lo de la lentitud se puede explicar tan solo por el upload que realizas
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #13 (permalink)  
Antiguo 04/01/2010, 11:47
 
Fecha de Ingreso: diciembre-2009
Mensajes: 7
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Selector de Imagenes Locales

lo estoy usando dentro de mi ordenador y cuando realizo el upload sin la base de datos, va tan rapido como cuando muevo ficheros de una carpeta a otra ... pero bue ... el menor de los problemas.
Lo de uniqid() no se comu usarlo .... yo pensaba en algo asi como darle al archivo un nombre sacado de dia+mes+año+hora+min+seg. "04012010184722"
Tienes alguna idea?
  #14 (permalink)  
Antiguo 04/01/2010, 11:59
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Selector de Imagenes Locales

si el nombre del archivo lo tienes ya en una variable (sin su ruta, solo el nombre) sería algo así...
Código PHP:
$nombre 'foo.bar';
$nombre date('Ymdhis') . $nombre;
$nombre uniqid('') . $nombre
así prefijas la fecha o uniqid(), en el ejemplo...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:22.