Foros del Web » Programando para Internet » PHP »

No hay solución para el problema de subir un archivo a un servidor ??

Estas en el tema de No hay solución para el problema de subir un archivo a un servidor ?? en el foro de PHP en Foros del Web. Hola, alguien me puede decir que es lo q estoy haciendo mal, pq esto no funciona: <?php $tipo= $_FILES ['archivo']['type']; if($tipo=="text/plain" || $tipo=="application/pdf" || $tipo=="application/msword") ...
  #1 (permalink)  
Antiguo 24/07/2003, 18:19
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 20 años, 8 meses
Puntos: 0
No hay solución para el problema de subir un archivo a un servidor ??

Hola, alguien me puede decir que es lo q estoy haciendo mal, pq esto no funciona:

<?php
$tipo=$_FILES ['archivo']['type'];

if($tipo=="text/plain" || $tipo=="application/pdf" || $tipo=="application/msword")
{
if($_FILES ['archivo']['size'] < 30000)
{
if(move_uploaded_file($_FILES['archivo'],'carpeta/'.$_FILES ['archivo']['name']))
{
echo "UPLOAD ";
}
}
}
?>

El envio del archivo:

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<table width="100%" height="448" border="0" align="center">
<tr>
<td><form action="envia.php" method="post" name="Envia" enctype="multipart/form-data">
<table width="25%" border="0" align="center">
<tr>
<td> <input name="archivo" type="file"></td>
</tr>
<tr>
<td><input type="submit" name="Submit" value="Aceptar"></td>
</tr>
</table>

</form>
</td>
</tr>
</table>
</body>
</html>

Un saludo y gracias.

Última edición por dominguez; 25/07/2003 a las 10:57
  #2 (permalink)  
Antiguo 24/07/2003, 18:53
Avatar de biblio  
Fecha de Ingreso: enero-2002
Ubicación: Urano
Mensajes: 577
Antigüedad: 22 años, 2 meses
Puntos: 0
php.

Código PHP:
<?php 
$tipo
=$_FILES ['archivo']['type'];
if(
$tipo=="text/plain" || $tipo=="application/pdf" || $tipo=="application/msword"

    if(
$_FILES ['archivo']['size'] < 3000000
    { 
        if(
move_uploaded_file($_FILES['archivo']['tmp_name'],"carpeta/".$_FILES ['archivo']['name'])) { 
            echo 
"UPLOAD "
        } 
    } 

?>
Ahi tienes ya corregido.

Saludos
  #3 (permalink)  
Antiguo 24/07/2003, 18:59
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 20 años, 8 meses
Puntos: 0
me da un error de:

Unable to create "carpeta"

pq puede ser...

Gracias por el interés
  #4 (permalink)  
Antiguo 24/07/2003, 19:04
Avatar de biblio  
Fecha de Ingreso: enero-2002
Ubicación: Urano
Mensajes: 577
Antigüedad: 22 años, 2 meses
Puntos: 0
Imagino que la dicha carpeta lo tienes creado. Porque el script te lo he dado probando.

Fijate si tienes creada esa carpeta, y si esta apunatdo a ello.

Saludos.
  #5 (permalink)  
Antiguo 24/07/2003, 19:09
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 20 años, 8 meses
Puntos: 0
La carpeta está bien.

Ademas del error de antes da otro:

Unable to move "carpeta temporal"
  #6 (permalink)  
Antiguo 24/07/2003, 19:12
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 20 años, 8 meses
Puntos: 0
La ruta de la carpeta temporal en el php.ini está bien, no veo pq da ese problema...
  #7 (permalink)  
Antiguo 24/07/2003, 19:14
Avatar de biblio  
Fecha de Ingreso: enero-2002
Ubicación: Urano
Mensajes: 577
Antigüedad: 22 años, 2 meses
Puntos: 0
si te das cuenta cuando hace el move_uploaded_file(), lo estoy recogiendo de una carpeta temporal, para lo cual en tu php ini debes indicarle un directorio donde se almacenara temporalmente los archivos a subir.

la directiva es esta y lo tengo de este modo.

upload_tmp_dir = c:/php/uploads/


Saludos
  #8 (permalink)  
Antiguo 24/07/2003, 19:16
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 20 años, 8 meses
Puntos: 0
Si, eso lo tengo bien:

upload_tmp_dir="C:\Archivos de programa\EasyPHP\tmp\"
  #9 (permalink)  
Antiguo 24/07/2003, 19:21
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 20 años, 8 meses
Puntos: 0
De hecho, las variables de sesión, he podido comprobar que están ahi bien almacenadas, no sé si eso puede indicar q el problema no es de la carpeta temporal...

Un saludo.
  #10 (permalink)  
Antiguo 24/07/2003, 19:23
Avatar de biblio  
Fecha de Ingreso: enero-2002
Ubicación: Urano
Mensajes: 577
Antigüedad: 22 años, 2 meses
Puntos: 0
La verdad, no sé que mas podrá ser, me quedé sin respuesta.

Saludos
  #11 (permalink)  
Antiguo 24/07/2003, 19:57
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 20 años, 8 meses
Puntos: 0
Hola, al poner como ruta destino el nombre del archivo nada mas, mete el archivo en una carpeta llamada "Apache" q esta al mismo nivel q la carpeta "www" y en ésta es donde quiero meta el archivo:

<?php
$tipo=$_FILES ['archivo']['type'];
if($tipo=="text/plain" || $tipo=="application/pdf" || $tipo=="application/msword")
{
if($_FILES ['archivo']['size'] < 3000000)
{
if(move_uploaded_file($_FILES['archivo']['tmp_name'],"".$_FILES ['archivo']['name'])) {
echo "UPLOAD ";
}
}
}
?>

Si pongo:


<?php
$tipo=$_FILES ['archivo']['type'];
if($tipo=="text/plain" || $tipo=="application/pdf" || $tipo=="application/msword")
{
if($_FILES ['archivo']['size'] < 3000000)
{
if(move_uploaded_file($_FILES['archivo']['tmp_name'],"www/".$_FILES ['archivo']['name'])) {
echo "UPLOAD ";
}
}
}
?>

me dice q un error de q no puede crear esa carpeta, Pero si yo no quiero crear ninguna carpeta!

No encuentro la manera de decirle la ruta pa q lo meta en la carpeta "www"

Porque si le digo, con la barra, lo mete en C:\:


move_uploaded_file($_FILES['archivo']['tmp_name'],"/".$_FILES ['archivo']['name']))

Por favor, alguién tiene la solución...................
  #12 (permalink)  
Antiguo 24/07/2003, 19:58
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 2 meses
Puntos: 5
Ponle

"./www/".$_FILES ['archivo']['name']
__________________
Manoloweb
  #13 (permalink)  
Antiguo 24/07/2003, 20:04
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 20 años, 8 meses
Puntos: 0
Me sigue dando ese dichoso error de q no lo puede crear, no se q habrá ya q ponerle....

Un saludo y gracias por tu interés.
  #14 (permalink)  
Antiguo 24/07/2003, 20:10
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 20 años, 8 meses
Puntos: 0
Cuando tengo q publicar algo en mi servidor local, lo meto en la carpeta "www" y luego accedo a ese archivo desde el navegador.
Pienso q la función pa subir un archivo debería partir de ahi no??

q el "/" significará la carpeta "www" y luego ir profundizando en el árbol de directorios no??, por ejemplo: /otra_carpeta y así sucesivamente no??

...
  #15 (permalink)  
Antiguo 25/07/2003, 10:59
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 20 años, 8 meses
Puntos: 0
Nadie, encuentra solución para el problema q me afecta??

Por favor, ayudenme, q no lo consigo, he intentado de todo...estoy desesperado...


Un saludo y gracias.
  #16 (permalink)  
Antiguo 25/07/2003, 18:35
 
Fecha de Ingreso: julio-2003
Mensajes: 463
Antigüedad: 20 años, 8 meses
Puntos: 0
Hola, lo he solucionado con la función copy

Un saludo
  #17 (permalink)  
Antiguo 25/07/2003, 23:04
Avatar de biblio  
Fecha de Ingreso: enero-2002
Ubicación: Urano
Mensajes: 577
Antigüedad: 22 años, 2 meses
Puntos: 0
Entonces, tarea para la casa, averiguar porque no acpeta la otra función.


Saludos
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:12.