Ver Mensaje Individual
  #5 (permalink)  
Antiguo 18/11/2002, 19:17
Avatar de GhostRider
GhostRider
 
Fecha de Ingreso: julio-2001
Ubicación: en mi propio infierno
Mensajes: 248
Antigüedad: 22 años, 8 meses
Puntos: 0
yo tuve el mismo problema y si, necesitaron configurar el servidor no solo en las globales, sino con acceso al directorio \tmp que es donde entran los archivos con mi codigo - solamente mientras corre el codigo - para despues copiarlos a mis archivos y cambiarles el nombre.

No se si me explique, va de nuevo: con mi código subo un archivo 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, 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, aqui esta el codigo, espero que te sirva:


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, 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 lineas que estan como comentario solo estan para confirmar el nombre de la imagen original, el nombre que queda, el tipo y el tamaño de la imagen, si quieres que aparezca quita las diagonales.

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

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

que me da como resultado "imagen/nombre.jpg"

aunque el archivo de la imagen ya esta fisicamente en el subdirectorio "imagen" con la base de datos solo asigno el source.