Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   Subir archivos (https://www.clubdelphi.com/foros/showthread.php?t=6474)

Lester 09-01-2004 18:31:50

Subir archivos
 
Hola a todos amigos...

Tengo 2 ficheros, los cuales muestro el código fuente a continuación:

index.php

Código PHP:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<
html>
<
head>
    <
title>Subir archivos</title>
    <
link rel="STYLESHEET" type="text/css" href="estilos_admin.css">
</
head>

<
body>
<
h1>Subir archivos</h1>
<
br>
    <
form action="subearchivo.php" method="post" enctype="multipart/form-data">
        <
b>Campo de tipo texto:</b
        <
br>
        <
input type="text" name="cadenatexto" size="20" maxlength="100">
        <
input type="hidden" name="MAX_FILE_SIZE" value="100000">
        <
br>
        <
br>
        <
b>Enviar un nuevo archivo: </b>
        <
br>
        <
input name="userfile" type="file">
        <
br>
        <
input type="submit" value="Enviar">
    </
form>
</
body>
</
html

subearchivo.php

Código PHP:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
    <title>Subiendo una nueva foto</title>
    <link rel="STYLESHEET" type="text/css" href="estilos_admin.css">
</head>

<body>
<h1>Subiendo un archivo</h1>
<br> 
<div align="center">
<?
//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'],  $nombre_archivo)){
        echo 
"El archivo ha sido cargado correctamente.";
    }else{
        echo 
"Ocurrió algún error al subir el fichero. No pudo guardarse.";
    }
}
?>
<br>
<br>

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

El problema es que en la carpeta TEMP donde debería subir el fichero solo se guardan variables de sesiones....
¿Qué podría ser? :confused:

Lester 09-01-2004 19:26:39

Ya lo pude resolver, muchas gracias a todos de todas formas...

__cadetill 10-01-2004 11:22:01

y podrías dar la solución? sería de agradecer :)

Lester 12-01-2004 19:24:55

Respuesta....
 
Hola a todos nuevamente, para los amigos como Cadetill que querían saber la respuesta aquí se las dejo...

Lo que hice fue simplemente imprimir en pantalla el camino del temporal que el usaba y creé la(s) carpeta(s) correspondientes a donde hacía referencia.
Vale destacar que en el fichero PHP.INI de configuración se le da este mismo camino hacia una carpeta temporal que el PHP deberá utilizar para subir el o los ficheros...

UPLOAD_TMP_DIR (string)

El directorio temporal utilizado para almacenar archivos cuando se envían al servidor. Debe tener permiso de escritura para el usuario bajo el que corra el PHP.

y luego con la función MOVE_UPLOADED_FILE se saca el fichero de allí y se coloca en la carpeta deseada...

Espero que les sea de gran utilidad... ;)


La franja horaria es GMT +2. Ahora son las 17:39:15.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi