Foros del Web » Programando para Internet » PHP »

Insertar datos de quien suve un archivo???

Estas en el tema de Insertar datos de quien suve un archivo??? en el foro de PHP en Foros del Web. Hola, soy novato y navegando por ay me encontre con este sistema de upload de archivos, y funciona bien, los archivos se suven a la ...
  #1 (permalink)  
Antiguo 21/06/2010, 02:10
Avatar de Vergara  
Fecha de Ingreso: junio-2010
Ubicación: San Francisco California
Mensajes: 249
Antigüedad: 13 años, 10 meses
Puntos: 6
Insertar datos de quien suve un archivo???

Hola, soy novato y navegando por ay me encontre con este sistema de upload de archivos, y funciona bien, los archivos se suven a la carpeta files, pero me gustaria saver, como ago para que tamben se guarde la informacion de el usuario que suve el archivo y la del archivo en la base de datos??? Gracias...




Cita:
<?php
$status = "";
if ($_POST["action"] == "upload") {
// obtenemos los datos del archivo
$tamano = $_FILES["archivo"]['size'];
$tipo = $_FILES["archivo"]['type'];
$archivo = $_FILES["archivo"]['name'];
$prefijo = substr(md5(uniqid(rand())),0,6);

if ($archivo != "") {
// guardamos el archivo a la carpeta files
$destino = "files/".$prefijo."_".$archivo;
if (copy($_FILES['archivo']['tmp_name'],$destino)) {
$status = "Archivo subido: <b>".$archivo."</b>";
} else {
$status = "Error al subir el archivo";
}
} else {
$status = "Error al subir archivo";
}
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Sube Tus Fotos</title>
<link href="estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table width="413" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="413" height="40" class="titulo">Sube Tus Fotos </td>
</tr>
<tr>
<td class="text">Por favor seleccione el archivo a subir:</td>
</tr>
<tr>
<form action="upload.php" method="post" enctype="multipart/form-data">
<td class="text">
<input name="archivo" type="file" class="casilla" id="archivo" size="35" />

<input name="enviar" type="submit" class="boton" id="enviar" value="Upload File" />
<input name="action" type="hidden" value="upload" /> </td>
</form>
</tr>
<tr>
<td class="text" style="color:#990000"><?php echo $status; ?></td>
</tr>
<tr>
<td height="30" class="subtitulo">Listado de Archivos Subidos </td>
</tr>
<tr>
<td class="infsub">
<?php
if ($gestor = opendir('files')) {
echo "<ul>";
while (false !== ($arch = readdir($gestor))) {
if ($arch != "." && $arch != "..") {
echo "<li><a href=\"files/".$arch."\" class=\"linkli\">".$arch."</a></li>\n";
}
}
closedir($gestor);
echo "</ul>";
}
?> </td>
</tr>
</table>
</body>
</html>
  #2 (permalink)  
Antiguo 21/06/2010, 02:15
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Insertar datos de quien suve un archivo???

para eso necesitas una base de datos, una tabla dentro de la misma... y por supuesto: datos

ahora, tus datos ya los tienes.. son variables, a lo que me pregunto... ¿ya tienes los datos del usuario?

perfecto, son variables... ;)

entonces solo debes conectar a la base de datos, y realizar una consulta INSERT para ello... y puesto a que no sabemos ni el nombre de tu tabla, ni las columnas y mucho menos los nombres de tus variables pues lo demás te toca a ti...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 21/06/2010, 08:55
 
Fecha de Ingreso: junio-2010
Mensajes: 37
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: Insertar datos de quien suve un archivo???

Seria asi:
Subir.html
Código HTML:
Ver original
  1. <form action="cargararchivos.php" method="post" enctype="multipart/form-data">
  2.   <input name="archivo" type="file" size="35" />
  3.   <input name="enviar" type="submit" value="Cargar Archivo" />
  4.     <input name="action" type="hidden" value="cargararchivo" />    
  5. </form>

cargararchivos.php
Código PHP:
Ver original
  1. <?php
  2. $mensaje = "";
  3. if ($_POST["action"] == "cargararchivo")
  4. {
  5.     // obtenemos los propiedades del archivo
  6.     $carpeta = "subiraqui/";
  7.     chmod($carpeta, 777);
  8.     $ip=$_SERVER['REMOTE_ADDR'];
  9.     $tamano = $_FILES["archivo"]['size'];
  10.     $tipo = $_FILES["archivo"]['type'];
  11.     $archivo = $_FILES["archivo"]['name'];
  12.     $prefijo = substr(md5(uniqid(rand())),0,6);
  13.     if ($archivo != "" && $tamano <1048576 && $tipo=="image/jpeg")  //Aqui indicamos que el tamaño sea menor a un mega y solo admita archivo jpg
  14.     {
  15.         // guardamos el archivo a la carpeta files
  16.         $destino =  $carpeta.$prefijo."_".$archivo;
  17.         if (copy($_FILES['archivo']['tmp_name'],$destino))
  18.         {
  19.             //establece una conexión con la base de datos.
  20.             $conexion = mysql_connect("localhost","root","") or die("No se pudo realizar la conexion con el servidor.");
  21.             mysql_select_db("cargarfile",$conexion) or die("No se puede seleccionar BD");
  22.             $consulta_insertar = "INSERT INTO subirfile (archivo, ip) VALUES ('$destino', '$ip')";
  23.             mysql_query($consulta_insertar,$conexion) or die("Error al insertar.");
  24.             $mensaje = "El archivo <b>".$archivo."</b> fue cargado al servidor y agregado la base de datos";
  25.         }
  26.         else
  27.         {
  28.             $mensaje = "Error al subir a la carpeta, verifique que su carpeta exista y tenga los permisos necesarios";
  29.         }
  30.     }
  31.     else
  32.     {
  33.         $mensaje = "Error en propiedades del archivo.";
  34.     }
  35.     echo $mensaje;
  36. }
  37. ?>

Revisa sobre seguridad y ataques rfi al momento de cargar este tipo de archivos.

Etiquetas: Ninguno
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 19:03.