Foros del Web » Programando para Internet » PHP »

move_uploaded_file

Estas en el tema de move_uploaded_file en el foro de PHP en Foros del Web. Hola a todos!! Estoy organizando una galería para un cliente, la cual se puede actualizar con un formulario para subir más imágenes si las necesita. ...
  #1 (permalink)  
Antiguo 02/03/2011, 06:48
 
Fecha de Ingreso: septiembre-2010
Ubicación: Valencia, Spain, Spain
Mensajes: 17
Antigüedad: 13 años, 7 meses
Puntos: 1
move_uploaded_file

Hola a todos!! Estoy organizando una galería para un cliente, la cual se puede actualizar con un formulario para subir más imágenes si las necesita. El caso es que estoy atascado con el move_uploaded_file. Le he dado tantas vueltas que ya no veo donde está el error, o si el código está mal desde el principio.

Formulario:

(recojo el nombre de la foto que le quiera poner, el archivo de imagen, y un texto para un pie de foto)

<form action="formatimg.php" method="post" enctype="multipart/form-data" name="nuevaimagen" id="nuevaimagen">
<table width="600" border="0" align="center" cellpadding="0" cellspacing="5">
<tr>
<td width="120" align="right" valign="top"><label for="nombre" class="label">Nombre*:</label></td>
<td width="229"><input name="nombre" type="text" class="campo" id="nombre" /></td>
</tr>
<tr>
<td align="right" valign="top"><label for="imagen" class="label">Imagen*:</label></td>
<td><input name="imagen" type="file" class="campo" id="imagen" /></td>
</tr>
<tr>
<td width="120" align="right" valign="top"><label for="texto" class="label">Texto*:</label></td>
<td width="229"><input name="texto" type="text" class="campo" id="texto" /></td>
</tr>
<tr>
<td width="120"><span class="error"><?php echo $msg; ?></span></td>
<td align="right"><input type="hidden" name="MAX_FILE_SIZE" value="800000"> <input name="subirimg" type="submit" class="boton" id="subirimg" value="Enviar" /></td>
</tr>
</table>
</form>

Archivo para subir las imágenes:

<?
require_once('cnx.php');

if($HTTP_POST_FILES['imagen']['tmp_name']){
$nombre_archivo = $HTTP_POST_FILES['imagen']['name'];
$tipo_archivo = $HTTP_POST_FILES['imagen']['type'];
$tamano_archivo = $HTTP_POST_FILES['imagen']['size'];
$nombre = $_POST["nombre"];
$texto = $_POST["texto"];
$rutafoto = "/img/".$nombre_archivo;

if (!((strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg")) && ($tamano_archivo < 800000))) {
echo "La extensión o el tamaño de los archivos no es correcta. <br><br>Se permiten archivos .gif o .jpg de 800 Kb máximo";

}else{
move_uploaded_file($HTTP_POST_FILES['imagen']['tmp_name'], $rutafoto");
}

$sqlimagen="INSERT INTO galeria (nombre, imagen, texto, thumb) VALUES ('$nombre', '$rutafoto', '$texto', '1')";
echo $sqlimagen;
print_r($_FILES);
mysql_query ($sqlimagen,$idcon) or die ('No se insertó nada');
}
?>


Bueno, pues eso es... Insertar en la BBDD funciona correctamente, pero no va cuando quiero mover el archivo a la carpeta img dentro de la carpeta raiz...

Espero que alguien me pueda ayudar o remitir a algún sitio. Gracias!!
  #2 (permalink)  
Antiguo 02/03/2011, 09:49
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Respuesta: move_uploaded_file

Que es lo que "no va"? No sube la imagen? marca algun error?
La ruta donde lo quieres subir tiene permisos de escritura?
  #3 (permalink)  
Antiguo 03/03/2011, 04:15
 
Fecha de Ingreso: septiembre-2010
Ubicación: Valencia, Spain, Spain
Mensajes: 17
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: move_uploaded_file

Vale, ya he conseguido que funcione. Era un problema de permisos, tenía las carpetas habilitadas únicamente para la lectura, no admitía modificación desde fuera.

No dije nada, no obstante lo dejo por si a alguien le puede venir bien el código :P
  #4 (permalink)  
Antiguo 03/03/2011, 04:33
 
Fecha de Ingreso: febrero-2010
Mensajes: 52
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: move_uploaded_file

Una cosa, yo cambiaria HTTP_POST_FILES por $_FILES , ya que te podría dar algun error, si estas trabajando en versiones más recientes.


Un saludo.
  #5 (permalink)  
Antiguo 03/03/2011, 07:01
 
Fecha de Ingreso: septiembre-2010
Ubicación: Valencia, Spain, Spain
Mensajes: 17
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: move_uploaded_file

Cita:
Iniciado por chesterfield001 Ver Mensaje
Una cosa, yo cambiaria HTTP_POST_FILES por $_FILES , ya que te podría dar algun error, si estas trabajando en versiones más recientes.


Un saludo.
Sí lo cambié ya. Gracias por recordármelo :)

Etiquetas: file, move, mover, uploader
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 14:16.