Ver Mensaje Individual
  #36 (permalink)  
Antiguo 01/12/2015, 03:29
ommmm
 
Fecha de Ingreso: octubre-2015
Ubicación: Barcelona
Mensajes: 66
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Como subir un archivo, dentro de un formulario?

Saludos,

Gracias a la gran ayuda de Mortiprogramador, ya puedo subir y descargar archivos.
Muestro los códigos a continuación, para si a alguien le puede servir de ayuda:


Subir
Código PHP:
Ver original
  1. <html>
  2.     <head>
  3.         <title></title>
  4.         <META http-equiv="Content-Type" CONTENT="text/html; charset=utf-8">
  5.     </head>
  6.  
  7.     <body bgcolor="#F75353">
  8.     <center>
  9.  
  10. <?php
  11.          
  12.         include '../header.php';
  13.     ?>
  14.     <?php
  15.  
  16.  
  17.      
  18.             require_once ('../conexion.inc.php');
  19.             $db1 = mysql_connect($servidor,$usuario,$password) or die("Error al conectar al DBMS.");
  20.             mysql_select_db($basedatos) or die("Error al conectar a la BD");
  21.            
  22.  
  23.      // Datos de conexión a configurar
  24.     $directorio = "../../subidas/";
  25.  
  26.     // Recibo los datos
  27.             $IdRFQ = $_POST['txtidrfq'];
  28.             $Data = $_POST['txtdata'];
  29.             $projectPartNombre = $_POST['txtprojectPartNombre'];
  30.            
  31.             $RMPartNumber = $_POST['txtRMPartNumber'];              
  32.             $Suppliers = $_POST['txtsupplier'];            
  33.             $Price = $_POST['txtprice'];  
  34.             $Cry2 = $_POST['txtcry2'];
  35.             $MOQ = $_POST['txtmoq'];
  36.             $Volume = $_POST['txtvolume'];        
  37.             $Investment = $_POST['txtinvestment'];
  38.             $Cry = $_POST['txtcry'];        
  39.             $Timing = $_POST['txttiming'];
  40.             $Incoterms = $_POST['txtincoterms'];
  41.             $Comments = $_POST['txtcomments'];
  42.            
  43.             $nombre = '';
  44.             if(!empty($_FILES['archivo']['name']))
  45.             {
  46.                 //aqui recibo el archivo
  47.                 $nombre = $_FILES['archivo']['name'];
  48.                 $tipo = $_FILES['archivo']['type'];
  49.                 $tamano = $_FILES['archivo']['size'];
  50.                 // muevo el archivo del temporal al directorio definitivo
  51.                 //move_uploaded_file($_FILES['archivo']['tmp_name'],$directorio.$nombre);
  52.                 //asigno la ruta y nombre del archivo para almacenarlo
  53.                 $fichero_subido = $directorio.$nombre;
  54.  
  55.                 $fp = fopen($_FILES['archivo']['tmp_name'], "rb");
  56.                 $binario = fread($fp, $tamano);
  57.                 $binario = addslashes($binario);
  58.                 fclose($fp);
  59.             }
  60.                        
  61.     $q1= "INSERT INTO rfq (idrfq, data, projectPartNombre, RMPartNumber, suppliers, price, cry2, moq, volume, investment, timing, cry, incoterms)
  62. values ('$IdRFQ','$Data','$projectPartNombre','$RMPartNumber','$Suppliers', '$Price', '$Cry2', '$MOQ', '$Volume', '$Investment', '$Timing', '$Cry', '$Incoterms')";
  63. $result = mysql_query($q1)  or die ("No se pudo crear la RFQ");
  64.      
  65.  
  66.     if( !empty($nombre) )
  67.     {
  68.         $q1= "INSERT INTO archivos (archivo_binario, archivo_nombre, archivo_peso, archivo_tipo, IdRFQ)
  69.        values ('$binario','$nombre', '$tamano', '$tipo', (SELECT MAX(IdRFQ) FROM rfq))";
  70.         $result = mysql_query($q1)  or die ("No se pudo ejecutar la consulta");
  71.  
  72.     }
  73.  
  74.     if($q1){
  75.         $msg = "Datos cargados";
  76.     } else {
  77.         $msg = "Datos no cargados";
  78.     }
  79.  
  80.      
  81.            
  82.             mysql_close();
  83.         ?>
  84.          
  85.        
  86.        
  87.  
  88.  
  89. <p></p>
  90.             <a href="http://www.forosdelweb.com/f18/index.php">Home</a>
  91.  
  92.         </center>
  93.     </body>
  94.    
  95. </html>



Bajar
Código PHP:
Ver original
  1. <?php
  2. if(isset($_GET['IdRFQ'])) {
  3.  
  4.     $servidor = "localhost";
  5.     $basedatos = "bd_ofertas_para_productos";
  6.     $usuario = "root";
  7.     $password = "";
  8.     $link = mysql_connect($servidor,$usuario,$password) or die('Problemas al conectar');
  9.     mysql_select_db('bd_ofertas_para_productos') or die("Error al conectar a la BD");  
  10.  
  11.     $IdRFQ = $_GET['IdRFQ'];  
  12.     $qry = "SELECT * FROM archivos WHERE IdRFQ=$IdRFQ";
  13.  
  14.    $res = mysql_query($qry) or die("Error en la consulta");
  15.    
  16.     $contenido = mysql_result($res, 0, "archivo_binario");
  17.     $tipo = mysql_result($res, 0, "archivo_tipo");
  18.     $nombre = mysql_result($res, 0, "archivo_nombre");
  19.     $peso = mysql_result($res,0,"archivo_peso");
  20.  
  21.     header("Content-type: $tipo");
  22.     // header("Content-length: $peso");
  23.     // header("Content-Disposition: inline; filename=$nombre");
  24.     print $contenido;
  25.  
  26.  
  27. }
  28.  
  29. ?>