Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/09/2009, 22:21
marpec
 
Fecha de Ingreso: abril-2008
Mensajes: 43
Antigüedad: 16 años
Puntos: 0
Subir Archivos en carpetas separadas

Hola chicos:
Cada vez aprendo más php con los manuales, videos de vuestra página son muy buenos y gracias por entregar información de tan buena calidad.
Bueno paso a lo mío:
Actualmente subo archivos al servidor desde un formulario, el cual guarda los archivos en una sola carpeta.

En el formulario coloque un select que muestra los nombre de usuario guardados en la BD.

Necesito saber si es posible que al seleccionar el archivo y del select escoger un usuario y al presionar el boton subir guarde ese archivo en una carpeta (carpetas previamente creadas en el servidor con el nombre de cada usuario, se me ocurre esta solución ya que no son muchos los usuarios)
Ya que luego estos usuarios entrarán a su página y deben ver sólo su carpeta con sus archivos.

Necesito su ayudita consejos sugerencia.
Se me ocurre de pronto crear distintas variables con rutas de las carpetas con los distintos nombre de usuarios y crear un switch y que al verificar ambos campos envie el archivo a la carpeta que coincida con el nombre seleccionado del select, y pero ahí tengo un problema como rescato el valor actual del select no se me ocurre, como tampoco si será posible implementar esta solución que opinan ustedes??

aca va lo que tengo

<?php
require_once("includes/config1.php");//conecta BD

$consulta="SELECT DISTINCT nombre from users " ; // rescato nombre de usuarios BD

$res=mysql_query($consulta) or die ("consulta fallo2");
$num=mysql_num_rows($res);
?>

<form action="up_file.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" >
<br>
<br>
<b>Enviar un nuevo archivo: </b>
<br>
<input name="archivosubir" type="file">
<br><br>
<select name="sfile0" style="font-family:arial; text-align:LEFT; fonf-weight:bold; font-size:13pt; width:230px; height:20px;">_
<option>SELECCIONAR USUARIO</option>
<?php
For ($i=0;$i<$num;$i++)
{
$a=mysql_result($res,$i,0);
echo "<option value=\"".$a."\">".$a;
}
mysql_close();
?>
</select>
<br><br>
<input type="submit" value="Enviar">
</form>
</body>

<?php
// getcwd() ---> Captura la direccion correcta
$dir=getcwd();
echo $_POST['cadenatexto']." Nombres<br>";
if ($_POST['cadenatexto']!='')
{

$path=$dir."/descargas/";//ruta carpeta donde se descargan los archivos
$nombre_archivo = $_FILES['archivosubir']['name'];
$tipo_archivo = $_FILES['archivosubir']['type'];
$tamano_archivo = $_FILES['archivosubir']['size'];
if (!((strpos($nombre_archivo, "doc") || strpos($nombre_archivo, "gif") || strpos($nombre_archivo,"jpg") || strpos($nombre_archivo,"pdf") || strpos($nombre_archivo,"xls"))))
{
echo "La extensión o el tamaño de los archivos no es correcta";
}
else
{
if (move_uploaded_file($HTTP_POST_FILES['archivosubir']['tmp_name'], $path.$_FILES['archivosubir']['name']))
{
echo "El archivo ha sido cargado correctamente.";
}
else
{
echo "Ocurrió algún error al subir el fichero. No pudo guardarse.";
}
}
}
?>