Foros del Web » Programando para Internet » PHP »

Aun no lo logro!!

Estas en el tema de Aun no lo logro!! en el foro de PHP en Foros del Web. Ya he pedido ayuda en varias oportunidades sobre lo mismo.. y pues siempre me remiten a los faqs.. y la verdad aun no me da ...
  #1 (permalink)  
Antiguo 09/12/2002, 16:31
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
Aun no lo logro!!

Ya he pedido ayuda en varias oportunidades sobre lo mismo.. y pues siempre me remiten a los faqs.. y la verdad aun no me da esto de subir archivos en especial imagenes!!!! y realmente necesito solucionar esto pronto.. espero que me puedan ayudar si pueden algo de codigo mucho mejor y con algunos comentarios para ver si entiendo.. porque esto de tratar con codigo echo por alguien más a ratos se me complica..

  #2 (permalink)  
Antiguo 10/12/2002, 06:41
Avatar de GaboMaKano  
Fecha de Ingreso: noviembre-2002
Ubicación: Viña del Mar - Chile
Mensajes: 323
Antigüedad: 21 años, 5 meses
Puntos: 2
cual es tu duda???
__________________
Exito!!
:censura:
Visita Uganet.cl
  #3 (permalink)  
Antiguo 10/12/2002, 07:25
Avatar de Phobos  
Fecha de Ingreso: abril-2001
Ubicación: sentado frente a un pc prestado
Mensajes: 375
Antigüedad: 23 años
Puntos: 2
aqui te va un codigo que solo permite subir un tipo de archivo, pero es modificable,

suerte

Código PHP:
<?php 
//formulario de upload por jorge luis martinez 
 
$extension explode(".",$archivo_name); 
$num count($extension)-1
if(
$extension[$num] == "jpg"

    if(
$archivo_size 30000
    { 
        if(!
copy($archivo"archivos/".$archivo_name)) 
        { 
        echo 
"error al copiar el archivo"
        } 
        else 
        { 
        echo 
"archivo subido con exito"
        } 
    } 
    else 
    { 
    echo 
"el archivo supera los 30kb"
    } 

else 

echo 
"el formato de archivo no es valido, solo .gif"

?>
ojo que tienes que crear el directorio archivos para que funcione.
y si lo instalas en el servidor recuerda darle permiso 777 al directorio.
  #4 (permalink)  
Antiguo 10/12/2002, 07:32
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Lo que tienes en las FAQ's que tanto te remiten es un resumen de lo que dice el manual oficial de PHP sobre el tema de "file upload" ...

http://us.php.net/manual/en/features.file-upload.php

Si lo lees .. veras que antes de probar ningun código debes de tener en cuenta algunas directivas de php (de tu php.ini) sobre el tema de "uploads" .. si no las tienes ajustadas .. no podras hacer un "upload" ...

;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;

; Whether to allow HTTP file uploads. Si Está a ON es permitido Uploads .. A OFF .. no ...
file_uploads = On

; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
upload_tmp_dir = algun directorio de tu sistema de ficheros .. ha de estar creado ..

; Maximum allowed size for uploaded files.
upload_max_filesize = 2M


Ademas de eso, tienes que tener claro como funciona el sistema de ficheros de tu servidor .. Si usas windows .. las rutas ya sabras que son: c:\directorio\algo\mis_uploads ... y en UNIX/Linux son /algo/algo/mis_uploads .. Eso, tanto para ajustar las directivas del php.ini como para usar la funcion copy() o move_uploaded_files(). Y como dice Phobos .. en sistemas UNIX/Linux deberas tambien de darle permisos de escritura/lectura a tu directorio donde muevas tus ficheros y al directorio temporal q definas para los Uploads.

Otro detalle es que conozcas tu versión de PHP y la configuración del tema: register_globals = ON u OFF ....

En muchos tutoriales se "asume" register_globals a ON y en consecuencia usan por ejemplo:

$nombredelcampofiledetuformulario_parametro .. siendo parametro por ejemplo: tmp_file, name, type, error ....

Otros manuales usan el array:
$HTTP_POST_FILES['nombredelcampofiledetuformulario']['parametro']

Y ahora, el manual oficial usa el array superglobal:
$_FILES['nombredelcampofiledetuformulario']['parametro']

Ahora, la pregunta .. es q método usar para acceder a las propiedades del fichero q subo (q hago el Upload) .. Pues sencillamente depende de la versión de PHP q uses .. Si usas una versión superior a la 4.1.x .. es recomendable que uses el ultimo método ($_FILES) .. Usandolo te dará igual la configuración de register_globals ... Si usas version anterior a la 4.0.? .. deberas usar $HTTP_POST_FILES .. El primer método para nada es recomendable usarlo.


Y .. Si tienes problemas con tus "uploads" .. deberias revisar todos los puntos que te menciono (mejor dicho q menciona php.net .. pues yo aquí no hago mas q un resumen ...). Cuando tengas claro q tu configuración está correcta .. ahi pruebas el método (cógido) que quieras atendiendo a las condiciones de tu la versión de PHP q uses ... Y .. Sobre todo, si tienes problemas .. indica que version de PHP usas, que sistema operativo usas y ahora que lo sabes .. indica la configuración q usas en el apartado "file upload" de tu php.ini + el cógido que pretendes usar (el formulario y el script php).



Un saludo,

Última edición por Cluster; 10/12/2002 a las 07:40
  #5 (permalink)  
Antiguo 10/12/2002, 07:38
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Phobos .. conoces el parametro 'type' del sistema de uploads?

en tu caso: (asumiendo globales .. q no te recomiendo usar ...)
$archivo_type

Eso te devuelve el formato MINE del fichero q estas subiendo .. Es mas seguro mirar su formato MINE q no la extensión solo .. Con te aseguras q sea un GIF (el $archivo_type te devulverá en caso de un gif: img/gif .. si mal no recuerdo). Así evitas que te pueda subir un .exe por ejemplo camuflado en un archivo que solo le cambié la extensión.

Un saludo,
  #6 (permalink)  
Antiguo 10/12/2002, 21:17
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
Gracias a todos!! ya les estare contando que tal me fue...

  #7 (permalink)  
Antiguo 11/12/2002, 06:06
Avatar de Phobos  
Fecha de Ingreso: abril-2001
Ubicación: sentado frente a un pc prestado
Mensajes: 375
Antigüedad: 23 años
Puntos: 2
buen aporte cluster...

lo voy a estudiar.

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 15:13.