Foros del Web » Programando para Internet » PHP »

upload... que nunca funciona

Estas en el tema de upload... que nunca funciona en el foro de PHP en Foros del Web. Hola, a ver si alguien me puede decir porqué este archivo : <html> <head> <title>Subiendo una nueva foto</title> </head> <body> <h1>Subiendo un archivo</h1> <br> <div ...
  #1 (permalink)  
Antiguo 18/10/2004, 03:34
 
Fecha de Ingreso: marzo-2004
Mensajes: 50
Antigüedad: 20 años, 1 mes
Puntos: 0
Exclamación upload... que nunca funciona

Hola, a ver si alguien me puede decir porqué este archivo :
<html>
<head>
<title>Subiendo una nueva foto</title>
</head>
<body>
<h1>Subiendo un archivo</h1>
<br>
<div align="center">
<?php
if (is_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'])) {
copy($HTTP_POST_FILES['userfile']['tmp_name'], "http://localhost/puebaimagenes/imagenes");
} else {
echo " Filename: " . $HTTP_POST_FILES['userfile']['name'];
}

move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], "http://localhost/puebaimagenes/imagenes");
?>
<br>
<br>

<a href="index.php">Volver</a>
<br>
</div>
</body>
</html>

me envia el siguiente error:
Warning: copy(http://localhost/puebaimagenes/imagenes): failed to open stream: HTTP wrapper does not support writeable connections. in c:\appserv\www\pruebaimagenes\subearchivo.php on line 16

Warning: move_uploaded_file(http://localhost/puebaimagenes/imagenes): failed to open stream: HTTP wrapper does not support writeable connections. in c:\appserv\www\pruebaimagenes\subearchivo.php on line 21
Warning: move_uploaded_file(): Unable to move 'E:\WINNT\TEMP\phpD.tmp' to 'http://localhost/puebaimagenes/imagenes' in c:\appserv\www\pruebaimagenes\subearchivo.php on line 21

Un saludo.
  #2 (permalink)  
Antiguo 18/10/2004, 03:37
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

No puedes copiar a una URL http://... , tienes que hacerlo a una ruta absoluta o relativa, por ejemplo 'puebaimagenes/imagenes'. Y en esa ruta debes incluir el nombre del fichero.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 18/10/2004, 03:50
 
Fecha de Ingreso: marzo-2004
Mensajes: 50
Antigüedad: 20 años, 1 mes
Puntos: 0
Gracias Josemi, ...pero todavía no me funciona,
he probado esto:
<?
//tomo el valor de un elemento de tipo texto del formulario
$cadenatexto = $_POST["cadenatexto"];
echo "Escribió en el campo de texto: " . $cadenatexto . "<br><br>";

//datos del arhivo
$nombre_archivo = $HTTP_POST_FILES['userfile']['name'];
$tipo_archivo = $HTTP_POST_FILES['userfile']['type'];
$tamano_archivo = $HTTP_POST_FILES['userfile']['size'];
//compruebo si las características del archivo son las que deseo
if (!((strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg")) && ($tamano_archivo < 100000))) {
echo "La extensión o el tamaño de los archivos no es correcta. <br><br><table><tr><td><li>Se permiten archivos .gif o .jpg<br><li>se permiten archivos de 100 Kb máximo.</td></tr></table>";
}else{
if (move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], "c:\appserv\www\pruebaimagenes\imagenes\$nombre_ar chivo")){//no se si puedo poner la variable $nombre_archivo en la ruta, igual es una burrada.
echo "El archivo ha sido cargado correctamente.";
}else{
echo "Ocurrió algún error al subir el fichero. No pudo guardarse.";
}
}
?>
me dice que el archivo ha sido guardado correctamente pero en realidad no está en la carpeta imagenes.

Última edición por vanax; 18/10/2004 a las 04:08 Razón: error al escribir el código
  #4 (permalink)  
Antiguo 18/10/2004, 06:59
 
Fecha de Ingreso: agosto-2004
Ubicación: Valencia
Mensajes: 149
Antigüedad: 19 años, 8 meses
Puntos: 0
Cambia esto:

if (move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], "pruebaimagenes/imagenes/$nombre_archivo")){
__________________
www.adimensional.info Adimensional
www.cientosderecetas.com Cientos de recetas
  #5 (permalink)  
Antiguo 18/10/2004, 08:43
 
Fecha de Ingreso: marzo-2004
Mensajes: 50
Antigüedad: 20 años, 1 mes
Puntos: 0
lo he probado así y tampoco sale los siguientes errores:

Warning: move_uploaded_file(pruebaimagenes/imagenes/pipapaz.jpg): failed to open stream: No such file or directory in c:\appserv\www\pruebaimagenes\subearchivo.php on line 25

Warning: move_uploaded_file(): Unable to move 'E:\WINNT\TEMP\php6.tmp' to 'pruebaimagenes/imagenes/pipapaz.jpg' in c:\appserv\www\pruebaimagenes\subearchivo.php on line 25
Ocurrió algún error al subir el fichero. No pudo guardarse.
La linea 25 es esta:

if (move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], "pruebaimagenes/imagenes/$nombre_archivo"))
un saludo.
  #6 (permalink)  
Antiguo 18/10/2004, 13:42
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Veamos, tu script esta en el directorio c:\appserv\www\pruebaimagenes\ . Entonces tienes que poner la ruta relativa desde ese directorio. Y la ruta relativa es imagenes/

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 20/10/2004, 13:09
 
Fecha de Ingreso: marzo-2004
Mensajes: 50
Antigüedad: 20 años, 1 mes
Puntos: 0
Es verdad el problema estaba en la ruta ya funciona.
Muchas gracias.
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 15:58.