Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/12/2012, 16:11
bloguero
 
Fecha de Ingreso: noviembre-2011
Mensajes: 97
Antigüedad: 12 años, 5 meses
Puntos: 3
Pregunta como obtener id de un update, asi como el mysql_insert_id lo obtiene del insert

Hola compañeros, tengo estos 2 archivos en php, que son para subir bajar archivos en php, lo he modificado a mis necesidades, solo cambie el nombre de la tabla y cambie a update en vez de insert, ya que solo quiero ingresar 3 campos, porque si lo dejaba como insert, me insertaba los demas campos de empleado como vacio, cuando yo quiero es que esos tres campos se ingresen en un usuarios ya registrado.
pero al mento de hacer esto, no me funciona el bajar archivo, ya como se pueden dar cuenta, necesita del $id_archivo, y este valor, lo obtiene con el mysql_insert_id. leyendo manueles, entendi que el mysql_insert_id, solo funciona cuando hay una consulta insert, y como yo lo cambie a update, ya no funciona eso. Alguien podria dar,e una sugerencia de como darle solucion? porfavor.


subir_rar.php
Código PHP:
Ver original
  1. <?php
  2.    
  3.     require_once("autentificacion_empleado.php");
  4.  
  5. $codigo=$_SESSION["usua_empl"];
  6.  
  7.  
  8.     include("conexion_mysql.php");
  9.    
  10.     $si_subio=false;
  11.     $id_archivo="";
  12.    
  13.     if (isset($_FILES['archivo']) )
  14.     {
  15.         // application/msword ======> Word 2003,
  16.         // application/vnd.openxmlformats-officedocument.wordprocessingml.document ===========> Word 2007 and 2010
  17.         // application/vnd.ms-excel =======> Excel 2003
  18.         // application/vnd.openxmlformats-officedocument.spreadsheetml.sheet  =========> Excel 2007 and 2010
  19.            
  20.         // Cargar en un arreglo los formatos de archivos permitidos
  21.        
  22.         $tipos = array("application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.ms-excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
  23.         $maximo = 100204000;       
  24.         if (in_array($_FILES['archivo']['type'],$tipos))
  25.         {
  26.             if($_FILES['archivo']['size'] <= $maximo)
  27.             {
  28.                 $archivo = $_FILES["archivo"]["tmp_name"];
  29.                 $tamanio=array();
  30.                 $tamanio = $_FILES["archivo"]["size"];
  31.                 $tipo = $_FILES["archivo"]["type"];
  32.                 $nombre_archivo = $_FILES["archivo"]["name"];
  33.                 extract($_REQUEST);
  34.                 if ( $archivo != "none" )
  35.                 {
  36.                     $fp = fopen($archivo, "rb");
  37.                     $contenido = fread($fp, $tamanio);
  38.                     $contenido = addslashes($contenido);
  39.                     fclose($fp);
  40.                     $query = "UPDATE empleado set archivo='$contenido', nombre='$nombre_archivo', tipo='$tipo' where usua_empl='$codigo'";
  41.                     if (mysql_query($query))
  42.                     {          
  43.                         $si_subio=true;
  44.                         $id_archivo=mysql_insert_id();
  45.                     }
  46.                     else
  47.                     {
  48.                         $si_subio=false;
  49.                         echo mysql_error();
  50.                     }
  51.                 }else
  52.                 {
  53.                     echo "No fue posible subir el archivo";
  54.                     echo '<a href="index.php">Subir Otro Archivo</a><br > ';
  55.                 }
  56.                
  57.                 if($si_subio)
  58.                 {          
  59.                     echo '<a href="index.php">Subir Otro Archivo</a><br > ';
  60.                     echo "<a href="."bajar_archivo.php?id_archivo=".$id_archivo.">Descargar Archivo: ".$id_archivo."</a>";
  61.                 }
  62.             }
  63.             else
  64.             {
  65.                 echo "Tamanño de Archivo demasiado grande";
  66.             }              
  67.         } else
  68.         {
  69.             echo "El formato del archivo no es correcto Solo Word y Excel";
  70.         }
  71.     }
  72.     else
  73.             echo "No Ha seleccionado";
  74.  
  75.  
  76. ?>


bajar_archivo.php

Código PHP:
Ver original
  1. <?php
  2.    
  3.     include("conexion_mysql.php");
  4.    
  5.     $qry="Select * from empleado where usua_empl={$_REQUEST['id_archivo']}";
  6.     $res=mysql_query($qry) or die(mysql_error()." qry::$qry");
  7.     $obj=mysql_fetch_object($res);     
  8.     header("Content-type: {$obj->tipo}");
  9.     header('Content-Disposition: attachment; filename="'.$obj->nombre.'"');
  10.     print $obj->archivo;
  11.     mysql_close();
  12. ?>