Foros del Web » Programando para Internet » PHP »

AYUDA fopen a insert into, translado de archivos.

Estas en el tema de AYUDA fopen a insert into, translado de archivos. en el foro de PHP en Foros del Web. Tengo un un script que se ejecuta por medio de CRONJOBS cada mes el cual crea en base a la libreria fpdf un pdf y ...
  #1 (permalink)  
Antiguo 26/06/2008, 13:39
Avatar de WyLY  
Fecha de Ingreso: enero-2002
Ubicación: Cancun, México.
Mensajes: 506
Antigüedad: 22 años, 3 meses
Puntos: 6
Exclamación AYUDA fopen a insert into, translado de archivos.

Tengo un un script que se ejecuta por medio de CRONJOBS cada mes el cual crea en base a la libreria fpdf un pdf y por medio de MIME (tal vez use luego phpmailer) lo envio por correo a cada row de una tabla de usuarios.
el archivo pdf se guarda en el servidor y lo que quiero hacer es al principio del script borrar los archivos *.pdf, supongo que eso no sera tanto problema, uso unlink(), pero lo que quiero hacer es insertar a otra tabla los archivos creados como un backup, para ello podria hacer dos outputs del fpdf, uno que guarde en el servidor y otro que lo envie como cadena para insertarlo en el pdf, el problema es que de hacerlo asi no lo guarda con nombre y no puedo recuperar los datos del archivo como tama;o, tipo, etc.
Lo que pense entonces era hacer un fopen en mi servidor, un filesize pero no consigo insertar en la table el archivo, en pocas palabras.
Necesito transladar un archivo pdf de mi servidor a una table mysql.
cualquier idea, consejo, link, ALGO.

GRACIAS de antemano.
__________________
I do techy stuff for a living and practice MMA with my dog... He always wins.
  #2 (permalink)  
Antiguo 26/06/2008, 14:28
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: AYUDA fopen a insert into, translado de archivos.

Hola WyLY,

Revisa en los aportes del foro, hay un tutorial sobre como insertar archivos en binario en una tabla de tu base de datos.

Saludos.
  #3 (permalink)  
Antiguo 27/06/2008, 14:04
Avatar de WyLY  
Fecha de Ingreso: enero-2002
Ubicación: Cancun, México.
Mensajes: 506
Antigüedad: 22 años, 3 meses
Puntos: 6
Busqueda Respuesta: AYUDA fopen a insert into, translado de archivos.

HOla GatorV, muchas gracias por responder, gab'ia revisado el art'iculo de Cluster, de hecho lo utilizo para subir archivos desde un formulario y es ahi donde radica mi problema de este script, en el de cluster utilizas los arrays FILES para manejar al archivo en temporal y de ahi partir para insertarlo en la DB, en mi caso:
Código PHP:
<?php
require ('fpdf.php');
$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$archivo $pdf->Output('22_resumen.pdf','S'); // La 'S' es para sacar el archivo como string de tal manera que lo que hago es:
$consulta_insertar "INSERT INTO tabla (archivo_binario) VALUES ('$archivo')";
mysql_query($consulta_insertar,$conexio) or die("No se pudo insertar los datos en la base de datos.");
mysql_close($conexio);
?>
Hasta ahi no hay problema, el archivo entra, pero sin nombre ya que el fpdf al ahcer el output como String no permite nombre, de igual forma he intentado obtener los datos de tama;o con $archivo['size'] o filesize($archivo) pero nada.
Te repito si se pudiera quisiera hacer el output del fpdf no como string sino que se guardara en el servido 'D' y de hacer tal vez un fopen para insertarlo en la base de datos, no se si me explico o estoy un poco liado, pero tr agradezco de nuevo, intentare haber si logro algo, un abrazo.
__________________
I do techy stuff for a living and practice MMA with my dog... He always wins.
  #4 (permalink)  
Antiguo 27/06/2008, 14:25
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: AYUDA fopen a insert into, translado de archivos.

Prueba esto:
Código PHP:
<?php
require ('fpdf.php');
$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$name "22_resumen.pdf";
$archivo $pdf->Output($name,'S'); // La 'S' es para sacar el archivo como string de tal manera que lo que hago es:
$size strlen$archivo );
$consulta_insertar "INSERT INTO tabla (archivo_binario) VALUES ('$archivo')";
mysql_query($consulta_insertar,$conexio) or die("No se pudo insertar los datos en la base de datos.");
mysql_close($conexio);
?>
Si lo quieres guardar en el servidor puedes hacer lo mismo a la vez:
Código PHP:
$fh fopen$name"wb" );
fwrite$fh$archivo );
fclose$fh ); 
Saludos.
  #5 (permalink)  
Antiguo 27/06/2008, 17:30
Avatar de WyLY  
Fecha de Ingreso: enero-2002
Ubicación: Cancun, México.
Mensajes: 506
Antigüedad: 22 años, 3 meses
Puntos: 6
De acuerdo Respuesta: AYUDA fopen a insert into, translado de archivos.

HOla GatorV, de nuevo gracias por responder he podido resolver gran parte de mi script, lo unico que me falta es copiar el archivo de mi servidor a una tabla, alguna idea?,
$archivolisto = fopen ($archivo) donde archivo es /RUTA/archivo.extension
INSERT INTO tabla (archivo) VALUES ('$archivolisto')

de nuevo GRACIAS, yo soy de la epoca de Cluster y hace poco regrese a los foros y es bueno ver nuevos moderadores responsables y comprometidos conla comunidad un abrazo y de nuevo gracias.
__________________
I do techy stuff for a living and practice MMA with my dog... He always wins.
  #6 (permalink)  
Antiguo 27/06/2008, 22:30
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: AYUDA fopen a insert into, translado de archivos.

En ese caso tendrias que leer el contenido:
Código PHP:
$fh fopen$archivo"r" );
$contenido addslashesfread$fhfile_size$archivo ) ) );
fclose$fh );
$query "INSERT INTO tabla (archivo) VALUES ('$contenido')"
Saludos.
  #7 (permalink)  
Antiguo 28/06/2008, 01:30
Avatar de WyLY  
Fecha de Ingreso: enero-2002
Ubicación: Cancun, México.
Mensajes: 506
Antigüedad: 22 años, 3 meses
Puntos: 6
De acuerdo Respuesta: AYUDA fopen a insert into, translado de archivos.

GratzieMile GatorV se me olvidaba el addslashes, era filesize sin el _ hehehe, un abrazo ygracias de nuevo.
__________________
I do techy stuff for a living and practice MMA with my dog... He always wins.
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 00:40.