Foros del Web » Programando para Internet » PHP »

buscar

Estas en el tema de buscar en el foro de PHP en Foros del Web. Hola a todos, necesito poner un cuadro de dialogo para buscar archivos en forma local (dentro del mismo computador), como se puede hacer??? si me ...
  #1 (permalink)  
Antiguo 04/05/2005, 11:08
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
buscar

Hola a todos, necesito poner un cuadro de dialogo para buscar archivos en forma local (dentro del mismo computador), como se puede hacer???

si me equivoque de foro redirecioneme por favor


salu2
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #2 (permalink)  
Antiguo 04/05/2005, 11:54
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Con HTML y su campo file lo podrías hacer:

<input type="file" name="archivo">

Pero .. supongo que algo quieres hacer con dicho archivo: subirlo al servidor? ..

En las FAQ's veras muchos ejemplos sobre "Upload" donde se usa $_FILES y move_uploaded_file() para recibir el archivo enviado (y detalles sobre la codificación de tu formulario HTML que hay que definir).

Un saludo,
  #3 (permalink)  
Antiguo 04/05/2005, 12:31
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
De acuerdo

gracias pero ya lo encontre todo lo que necesito hacer bueno casi todo


aqui dejo el codigo por si alguien lo necesita

FORM.html

Código HTML:
<table align="center">
    <tr>
      <td height="100"> 
        <FORM ENCTYPE="multipart/form-data" ACTION="script.php" METHOD="post"> 

<!-- # con este input "oculto" establecemos el limite máximo
# del tamaño del fichero a transferir. En este ejemplo 100.000 bytes-->
<INPUT type="hidden" name="lim_tamano" value="100000"> 

    <p><span class="t_b">Archivo a transferir</span><br> 

      <INPUT name="archivo" type="file" class="t_n">
    </p> 

<p>
      <INPUT name="enviar" type="submit" class="t_n" value="Aceptar">
    </p>

</FORM></td></tr></table> 
Script.php

Código PHP:
<?

if ($archivo != "none" AND $archivo_size != 
                                   
AND $archivo_size<=$lim_tamano){
        
    if (
copy ($archivo$archivo_name)) {
      echo 
"<div align='center'><h2><strong>Se ha transferido el archivo $archivo_name</h2></div>";
      echo 
"<div align='center'><br>Su tamaño es: $archivo_size bytes<br></div>";
      echo 
"<div align='center'><br>El fichero es tipo: $archivo_type <br></div>";
      echo 
"<table align='center'>
    <td>
  <form name='form1' method='post' action='tu pagina'>
    <input name='Submit' type='submit' class='t_n' value='Volver'>
  </form>
  </td></table>"
;
               }
}else{
    echo 
"<div align='center'><h2>No ha podido transferirse el fichero</h2></div>";
    echo 
"<div align='center'><h3>su tamaño no puede exceder de $lim_tamano bytes</h2></div>";
    echo 
"<form name='form1' method='post' action='tu pagina'>
    <input name='Submit' type='submit' class='t_n' value='Volver'>
  </form>"
;
}
 
?>
Lo que necesito ahora es saber como carajo llamo esta imagen para que la puedan descargar , habra alguna forma???


salu2
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #4 (permalink)  
Antiguo 04/05/2005, 12:49
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
No uses "copy()" .. usa en su lugar move_uploaded_file().

Tampoco uses $archivo_propiedad .. usa $_FILES['archivo']['propiedad'] .. donde "propiedad" es "size" .. "name" .. "tmp_name" ...

Sino .. tal vez te funcione en un determinado servidor pero en otros con otra configuración no te irá .. (de hecho es inseguro lo que propusistes de ejemplo .. )

Por ejemplo .. algo que debes usar:
Código PHP:
if (move_uploaded_file($_FILES['archivo']['tmp_name'], $_FILES['archivo']['name'])) 
Ahí tu archivo cae en el directorio que esté el script PHP que lo ejecuta "script.php" .. si quieres cambia la ruta de destino de tu archivo ..

www.php.net/move_uploaded_file
(es el 2° parámetro ...)

[php]
Lo que necesito ahora es saber como carajo llamo esta imagen para que la puedan descargar , habra alguna forma???[/quote]

Bueno .. puedes leer los archivos de ese directorio con:
dir()
www.php.net/dir

Ahí podrás generar un tag de imagen HTML con el dato que obtengas de leer los archivos que tiene tal directorio .. para verla .. o bien algo más complejo usando cabeceras HTTP para forzar la descarga.

Revisa en el foro por "download" (o usa google) .. busca tambien por header() y readfile() .. además de cabeceras HTTP como "content-type" que es una de las que necesitarías ....

Y visita las FAQ's del foro PHP (si, ese mensaje de los primeros que dice "FAQ's") por qué ahí tienes ejemplos de todo esto (o casi).

Un saludo,
  #5 (permalink)  
Antiguo 04/05/2005, 12:52
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
loq eu se me habia olvidad es que cada usuario suba sus archivos y no vea lo de los demas con este script supongo que se veran los de todos los usuarios

cierto????
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #6 (permalink)  
Antiguo 04/05/2005, 18:09
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Con cuál script?? .. según veo no tienes nada que te muestre los archivos, solo para subir archivos.

Lo que te menciona Cluster para poder visualizar las imagenes... ve que es una función que leerá el contenido de un directorio, podrías hacer un "sistema básico" para mostrar solo un directorio correspondiente a un usuario.. entonces estaríamos hablando de un directorio por usuario... pero esto es algo básico y (creo) facilmente violable si tu objetivo es verdaderamente IMPERDIR el acceso...

Utilizas las palabras "que cada usuario"... lo que hace suponer que tienes un sistema ya para "diferenciar e identificar usuarios" ¿un sistema de loguin?. Podrías hacer uso de dicho sistema y así como restringirías páginas a "usuarios no logueados" podrías restringuir los archivos a "usuarios que no corresponden".

La verdad es que las opciones son demasiadasy podrás encontrar diferentes maneras dentro del foro... lo que yo haría es hacer uso de una Base de Datos, guardar la ruta de los archivos y el usuario a que corresponden, así se haria una consulta (para mostrar) recuperando solo los archivos por usuario y la descarga por id de archivo... somo es costumbre.

No puedo dejarte un enlace por ahora que te sea útil.. solo puedo recomendarte busques y leas en el foro... Suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #7 (permalink)  
Antiguo 05/05/2005, 06:41
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Como dice jam1138 ..

Si hablas ya de que cada usuario tenga asociada sus imagenes .. ahí te hace falta ya un sistema de gestión de usuarios para "relacionarlas" .. Iria de lo mejor una Base de datos para tal fin y un modelo de datos acorde .. Pero, si no dejas bien claro y detallas -todas las características- de tu sistema .. así sólo vamos dando las soluciones "cerradas" a lo que vas pidiendo.

En su defecto tienes sitios como www.hotscripts.com con multitud de aplicaciones de este estilo ya hechas, para casos particulares: detalla como para orientarte algo .. pero es necesario que si tienes previsto lo que ahora estás comentando .. lee sobre Base de datos (si no las conoces, por ejemplo en: www.mysql-hispano.com) y com interactuar con esta desde PHP (www.php.net/mysql) y los tutoriales de las FAQ's que veras aquí en el foro .. ahí te haces una idea de como "gestionar información" en general .. luego ya vendrá si tu información son "unos datos de un registro" y asociado "N imagenes" .. en ese proceso habrá que ver como "subir" tu imagen (eso ya lo tienes ahora listo) y como vas a relacionar ambos datos.

En resumen .. empezastes justo -al reves- de como debes plantear un "proyecto" (por muy pequeño que sea este o aunque sea personal). Primero se "analiza" se vé que necesitas y luego se "desarrolla" (aprendiendo por el camino temas concretos que no conozcas) .. Esto es válido para cualquier proyecto que tengas entre manos!.

Un saludo,
  #8 (permalink)  
Antiguo 05/05/2005, 07:42
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
miren el sistema de gestion esta tengo la base de datos y todo, lo que necesito saber es como hago para diferenciar los archivos de cada usuario y mostrar una lista de ellos.

Creo que no les conte de que se trata, es como un maletin, puedes subir tus archivos al servidor y cuando los necesites los puedes descargar, estamos hablando de archivos de no mas de 500Kb, onda archivos word o algo por el estilo...

captan la idea ahora????


salu2
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #9 (permalink)  
Antiguo 05/05/2005, 09:47
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Insisto una vez más ..

De nada sirve que digas "tengo la base de datos y todo" .. si no concretas "como" gestionas los usuarios en tu aplicación.


Si no tienes sistema de gestión de usuarios donde identifiques a tus usuarios en tu apliacación .. tendrás que partir por ahí.

Si ya lo tienes . .detalla que usa ese sistema para "saber" en cada script tuyo quien está identificado en tu sistema (sesiones? .. cookies? .. que valor guardas ahí que hace referencia a tu usuario? ...)

En fin .. todo esto es para llegar a que puedas hacer una Tabla más en tu BD de tu aplicación que quedará con datos tipo:

id_archivo
id_usuario
nombre_archivo

Así guardaras el "id" del usuario que subió tu archivo (que usó tu script de "upload") y el nombre del archivo (que lo tienes cuando sube en $_FILES['archivo']['name']). De esta forma "mostrar" los archivos de tu usuario es cosa de hacer una consulta SQL a esa tabla condicional tipo: ... WHERE id_usario='$id_usuario' .. siendo $id_usuario el usuario que esté en el sistema en ese momento, ya sea por qué lo identificas con una variable de sesión o una cookie u otro método.

Un "administrador" podrá ver todos los archivos de todos los usuarios o haciendo consultas concretas por ese "id_usuario" ..

Un saludo,
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 16:35.