Foros del Web » Programando para Internet » PHP »

Files de una Tabla a Otra tabla .. ... ..

Estas en el tema de Files de una Tabla a Otra tabla .. ... .. en el foro de PHP en Foros del Web. Hola Buen Día & Comienzo de Semana .. º.º .. Pues aqui de New... Help!!!! Una consulta tal ves ovia pero bueno no encuentro una ...
  #1 (permalink)  
Antiguo 16/02/2004, 10:26
 
Fecha de Ingreso: julio-2003
Ubicación: Queretaro Qro.
Mensajes: 131
Antigüedad: 20 años, 8 meses
Puntos: 1
Files de una Tabla a Otra tabla .. ... ..

Hola Buen Día & Comienzo de Semana .. º.º ..

Pues aqui de New... Help!!!!

Una consulta tal ves ovia pero bueno no encuentro una solucion... les cuento pues.

Miren el asunto es que tengo una tabla en donde estoy guardando de momento documentos (table::filesTem) de forma temporal, esto con la idea de validarlos y despues ingresarlos (o moverlos) en otra tabla en donde estos documentos seran visto ya como autorizados (digamoslo asi, table::Files), bueno he probado con una simple consulta y despues tratar de ingresarlos como datos pero me resulta error.
Esta es la forma en que lo he tratado de hacer:

Código PHP:
// ***** Pasar los Datos de filesTem a Files????

// Select para obtener datos de la consulta
     
$tfile mysql_query("SELECT fileName, mimeType, fileData FROM filesTem)
      or die("
Error");
  
// Se Muestran los datos de la DB
   while($aFile = mysql_fetch_array($tfile)) {
    $v_fileName = $resultados_doc['fileName'];
    $v_mimeType = $resultados_doc['mimeType'];
    $v_fileData = $resultados_doc['fileData'];
      
    // Insertar 
    mysql_query("
INSERT INTO Files VALUES ('','$v_fileName','$v_mimeType','$v_fileData')") 
      or die(mysql_error());
   } 
y bueno por los resultados no es la forma correcta de hacerlo, ya que no son datos comunes.

Bueno me imagino que debo hacer algo similar al momento en que se ingresaron por primera vez a la taba filesTemp.

Código PHP:
  // forma en que recibo los datos del formulario
    
$archivo =   $_FILES["archivito"]["tmp_name"];
    
$tamanio $_FILES["archivito"]["size"];
    
$mimeType $_FILES["archivito"]["type"];
    
$filaName $_FILES["archivito"]["name"];
    .. ... ..
  
// abrir y cerrar $fp
    
$fp fopen($archivo"rb");
    
$fileData fread($fp$tamanio);
    
$contenido addslashes($fileData);
    
fclose($fp);
  
// Insert fileTem
    
... .. .. 
bueno la verdad no se por donde llegar a la posible solucion.

Espero que alguien me pueda ayudar y/o aportar informacion que me lleve a una solucion, como siempre agradesco a todos por darse el tiempo de leer esta consulta y sobre todo por su aportacion Gracias .. '.' ..

__________________
Kike Lee
Paz && Bien

Última edición por kikelee; 16/02/2004 a las 10:33
  #2 (permalink)  
Antiguo 17/02/2004, 14:34
 
Fecha de Ingreso: julio-2003
Ubicación: Queretaro Qro.
Mensajes: 131
Antigüedad: 20 años, 8 meses
Puntos: 1
Files (documentos x)

Hola ForosdelWebManiacos

que nadie sabe algo al respecto???

__________________
Kike Lee
Paz && Bien
  #3 (permalink)  
Antiguo 17/02/2004, 14:52
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Si obtienes el "record-set" (registros) de tu consulta realizada (mysql_query()) hacia una variable como es $aFile .. y usas mysql_fetch_array() .. lo que vas a obtener es un array asocitivo bajo ese nombre de variable .. así que esto no sería correcto .. ¿de donde sacas el $resultados_doc ?

while($aFile = mysql_fetch_array($tfile)) {
$v_fileName = $resultados_doc['fileName'];
$v_mimeType = $resultados_doc['mimeType'];
$v_fileData = $resultados_doc['fileData'];

Sería para ese caso:


Código PHP:
   while($aFile mysql_fetch_array($tfile)) {
    
$v_fileName $aFile['fileName'];
    
$v_mimeType $aFile['mimeType'];
    
$v_fileData $aFile['fileData']; 
Por lo demás .. no sé que es eso de "me dá error" .. deberías especifica que es lo que sucede o que error textual dá PHP o Mysql a traves de sus mysql_error() que usas en el código ...

También estaría bueno que pusieras el código completo que usas o que vas a obtener cuando modifiques lo que te comento .. sobre todo visto que tienes problemas de todo indole y más con el uso de las respectivas funciones que intervienen a la hora de obtener los resultados de una consulta realizada a tu BD.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 18/02/2004, 09:47
 
Fecha de Ingreso: julio-2003
Ubicación: Queretaro Qro.
Mensajes: 131
Antigüedad: 20 años, 8 meses
Puntos: 1
Gracias por la Observacion

Hola .. 'º.º'..


Gracias Cluster por la correcion, es cierto lo del codigo lo que pasa es que no mantuve codigo y lo borre y use otro codigo para reconstruirlo y no me fije (cierto $aFiles deberia de ser en lugar de: $resultados_doc).

Dejame correr el script de nuevo y te comento que tipo de horror me da, y si hace falta pondre todo el script de lo que hago para subir los Files a la DB y lo que hago para pasar los files de una tabla a la otra.


En breve regreso...
__________________
Kike Lee
Paz && Bien

Última edición por kikelee; 18/02/2004 a las 09:50
  #5 (permalink)  
Antiguo 18/02/2004, 11:23
 
Fecha de Ingreso: julio-2003
Ubicación: Queretaro Qro.
Mensajes: 131
Antigüedad: 20 años, 8 meses
Puntos: 1
Error Files!!!!

Bueno aqui de regreso con el mensaje de error ..º.º..

Comento un poco, este es el script que utilizo para obtener los datos de la tabla temporal TtempFile.

Obtengo los datos con una consulta tFiles y ahora quiero hacer la insertar los datos en la otra tabla TFiles.

Código PHP:
// Consulta
$tFiles mysql_query("SELECT fileName, fileData, mimeType  FROM $TtempFiles)
     or die("
No accesa a la Base de Datos");

// Se Muestran los datos de la DB
while($aFiles = mysql_fetch_array($tFiles)) {
 mysql_query("
INSERT INTO TFiles VALUES ('','$aFiles[fileName]','$aFiles[fileData]','$aFiles[mimeType]')") 
      or die(mysql_error());

Y este es el error que me envia:
You have an error in your SQL syntax near '·žú' at line 1

Y hasta donde he visto el problema esta en el fileData, no se como solucionarlo, quiero pensar que deberia de funcionar ya que no trato de abrir su contenido, simplemente mover su contenido hacia otra tabla.

Se que en el momento de ingresar por primera vez los archivos en la table temporal se hace una apertura y/o lectura del archvo para poder interpretar el contenido, sera que tengo que hacer algo asi para poderlo mover de una tabla a la otra?


Bueno Cluster agradesco tus comentarios y de todos aquellos que se permitan agregar un comentario al respecto, Gracias
__________________
Kike Lee
Paz && Bien
  #6 (permalink)  
Antiguo 23/02/2004, 16:45
 
Fecha de Ingreso: julio-2003
Ubicación: Queretaro Qro.
Mensajes: 131
Antigüedad: 20 años, 8 meses
Puntos: 1
Perdonen yo de new

Pues con la suplica de que si alguin sabe que puedo hacer al respecto para poder solucinar mi pequeño problema.

Parece simple pero creo que no es así, pues lo he intentado, es una tabla que guarda (files, documento, archivos - como gusten llamarle) y estoy usando una tabla temporal ya que si no se validan estos files la idea es depurar la tabla en x tiempo, los files validados, tendrian que pasar a almacenarse (moverse) a otra tabla de documentos validados.

Que puedo hacer, ya que parece que no puedo mover los datos de una tabla a otra con un simple select y un insert, el problema mayor es en el campo donde guardo el contenido total del documento.

Bueno espero que tengan una propuesta, saben si soy un aprendiz y posiblemente me cueste plasmar lo que busco. Y como siempre agradesco a todo aquel que pueda aportar algo al respecto, un ejemplo, documentacion del tipo que sea pero que me permita poder abundar este tema y mis conocimientos, Gracias
__________________
Kike Lee
Paz && Bien
  #7 (permalink)  
Antiguo 23/02/2004, 16:55
 
Fecha de Ingreso: julio-2003
Ubicación: Queretaro Qro.
Mensajes: 131
Antigüedad: 20 años, 8 meses
Puntos: 1
Perdon lo lo habia pues

Me base eneste ejemplo que esta en esta link:

http://www.programacion.com/php/articulo/datos_blob
__________________
Kike Lee
Paz && Bien
  #8 (permalink)  
Antiguo 24/02/2004, 07:24
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Los datos "binarios" no los puedes meter "así como así" a tu BD .. mejor dicho pasando por scripts PHP como lo estás haciendo ..

Debes añadir "slashes" para "escapar" caracteres fuera del ASCII "legible" como te está sucediento y te está marcando el error de sintax SQL ..

Fijate en este mini-tutorial al respecto en la parte que se lee el archivo .. se aplica addslashes() antes de guardarlo en tu campo blod.

http://www.forosdelweb.com/s/msg127775.html

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #9 (permalink)  
Antiguo 26/02/2004, 18:09
 
Fecha de Ingreso: julio-2003
Ubicación: Queretaro Qro.
Mensajes: 131
Antigüedad: 20 años, 8 meses
Puntos: 1
::Files de una Tabla a Otra tabla -> SOLUCIÓN::

Gracias AMIGO CLUSTER....

Debo decir que este chavo es un chido pa la programacion, en tenias razon Cluster, no me cayo nada mal leer tu pequeño Tutorial y las aportaciones que algunos hicieron, creo que los mensajes anteriores en esta consulta deberian de borrarse pero eso yo no lo decido como sea aqui lo que se podria llamar una solucion.

Pues funciona!!! eso es lo unico que puedo decir de momento, y tenias razon habia que aplica addslashes().


Generales:

Este script lo que hace o para lo que tenia que construirse era para ingresar archivos en una tabla temporal, para posteriormente moverlos a otra tabla en el momento en que estos archivos sean aceptados, si no son aceptados estos se eliminaran.

Bueno este script solo mueve los datos de una tabla a otra, espero que les sirva y ustedes deciden si les puede ser util.

Como sea Gracias Cluster, espero poder contar con tus comentarios, hasta pronto

Código PHP:
<?php

    
// usted puede modificar la información de la conexión para su servidor de la base de datos:
    
$conexion=mysql_connect("localhost","","") or die ("no se ha podido conectar a la BD");

    
// conexion con la bd
    
mysql_select_db("tu_db") or die ("no se ha podido seleccionar la BD");
    
    
$sql "SELECT id, archivo_binario, archivo_nombre, archivo_peso, archivo_tipo FROM archivosTemp";

    
$consulta mysql_query($sql,$conexion);

    while(
$archTemp mysql_fetch_array($consulta)) {
   
      
// leer del archvio .. el binario subido.
      
$binario_contenido addslashes($archTemp[archivo_binario]);
    
      
//insertamos los datos en la BD.
      
$consulta_insertar "INSERT INTO archivos (id, archivo_binario, archivo_nombre, archivo_peso, archivo_tipo) VALUES ('', '$binario_contenido', '$archTemp[archivo_nombre];', '$archTemp[archivo_peso]', '$archTemp[archivo_tipo]')";
    
      
mysql_query($consulta_insertar,$conexion) or die("No se pudo insertar los datos en la base de datos.");
    
      
//insertamos los datos en la BD.
      
$consulta_borrar "DELETE FROM archivosTemp WHERE id = $archTemp[id]";
      
mysql_query($consulta_borrar,$conexion) or die(mysql_error()); 
   }
?>
__________________
Kike Lee
Paz && Bien
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 22:40.