Inicio arrow Articulos arrow Lenguaje PHP arrow Como subir una imágen mediante un formulario en php
Como subir una imágen mediante un formulario en php PDF Imprimir E-Mail
Funciona de la siguiente manera, con mi código subo un archivo via input_file en una forma y este se guarda automaticamente en el archivo \\tmp del directorio de php del servidor, solamente mientras corres el codigo, porque despues el mismo servidor lo borra (por seguridad) cuando termina el código; a este archivo le da un nombre temporal, asi que con codigo lo copio a mi directorio del sitio y le cambio el nombre.

Esta es la forma:

  <form action=<?php echo$PHP_SELF ?> method=post enctype=multipart/form-data name=ubicaform2 id=ubicaform2>

<input name=addubica type=submit id=addubica value=subir imagen>

Imagen: <input name=upimagen type=file id=upimagen>

</form>

Si te das cuenta, envio la forma a la misma pagina PHP pero esto lo puedes cambiar dirigiéndolo a otra pagina que procese la inserción a la base de datos, lo que si debes tomar mucho en cuenta, al menos para imágenes es el enctype=multipart/form-data

Luego, al principio de mi pagina (o en la pagina a donde es dirigida la forma) pones esto:


if (isset ($addubica)) {
print $upimagen = upimagen ;
print $upimagen_name = upimagen_name ;
print $upimagen_type = upimagen_type ;
print $upimagen_size = upimagen_size ;

$newimage = sprintf (imagenes/%s, $upimagen_name);
move_uploaded_file($upimagen, $newimage);

mysql_select_db($database_travconn, $travconn);
$sql = INSERT INTO ubicacion (imagen) VALUES ('$newimage');
$result = mysql_query($sql);
}


Asi entra el registro en la base de datos haciendo referencia a la imagen que quedó en mi subdirectorio imagenes.

Las cuatro lineas 'print' solo estan para confirmar el nombre de la imagen original, el nombre que queda, el tipo y el tamaño de la imagen, ya que lo hayas probado, puedes borrar estas lineas o comentarlas con //

Asi, al tope de la página resultante en el browser aparecería algo asi:

jtix25s.tmp=upimagen mi_imagen.gif=upimagen_name jpeg/gif=upimagen_type 2654=upimagen_size

Nota : ciertas veces despues del nombre temporal de la imagen te puede salir un warning diciendo que no se puede crear la imagen y no se puede mover al directorio, esto se debe a los permisos que tienes en el directorio \\tmp


Por último en la página donde quieras que se abra el archivo solo lo llamas con el nombre que le diste, sacándolo de la base de datos, en mi caso sería:


<img src=<?php echo $row_Ubicacion['imagen']; ?>>

que me da como resultado imagen/mi_imagen.gif

aunque el archivo de la imagen ya esta fisicamente en el subdirectorio imagen con la base de datos solo asigno el source, es decir, en este caso el archivo de la imagen queda guardado en el subdirectorio imagenes/ de mi site, y en el campo 'imagen' de mi base de datos queda solo el path imagenes/mi_imagen.gif.

 
< Anterior   Siguiente >

Trabajos

Portafolio

Ultimos Enlaces

Error: no links to display
Banner

Articulos

Instalación del servidor Apache

A continuación vamos a explicar la instalación de un servidor Apache en un sistema operativo Windows 98. Debemos tener en cuenta que esta versión es una versión beta de calidad. Esto significa que no ofrece la estabilidad y seguridad que la versión de unix, de hecho existen numerosos errores e inconsistencias, aun así es suficiente para realizar pruebas en nuestro ordenador.

Comencemos con la instalación:

Leer más...
 




Newsletter Compumonte






   
   Compumonte.com.ar Funciona bajo Joomla
Webmaster Gerardo Irribarra