Foros del Web » Programando para Internet » PHP »

Copiar datos de una tabla a un directorio

Estas en el tema de Copiar datos de una tabla a un directorio en el foro de PHP en Foros del Web. El tema es el siguiente, tengo una tabla donde guardo el codigo de empresa, el path de un directorio con fotos, quiero leer dicho archivo ...
  #1 (permalink)  
Antiguo 26/08/2008, 06:46
 
Fecha de Ingreso: agosto-2008
Mensajes: 3
Antigüedad: 15 años, 7 meses
Puntos: 0
Copiar datos de una tabla a un directorio

El tema es el siguiente, tengo una tabla donde guardo el codigo de empresa, el path de un directorio con fotos, quiero leer dicho archivo y las fotos que sean de una determinada empresa copiarlas a otro directorio.

Al realizar dicho script con el comando copy me despliega el siguiente error :

Warning: copy(http://www.puntaonline.com/inmupp/CA3241_1.JPG) [function.copy]: failed to open stream: HTTP wrapper does not support writeable connections. in /home/mronline/public_html/inmupp/copiofotos.php on line 19

Como puedo solucionar el problema ?

Muchas gracias.
Andres.
  #2 (permalink)  
Antiguo 26/08/2008, 07:45
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Copiar datos de una tabla a un directorio

el error te lo indica, estas intentando copiar un fichero "web" con una funcion que solo copia ficheros localmente

debes cambiar el path en la funcion copy, por ejemplo, en este caso tienes:
http://www.puntaonline.com/inmupp/CA3241_1.JPG
debes cambiarlo por algo como esto:
/mi_directorio_web/puntaonline.com/inmupp/CA3241_1.JPG

evidentemente, el distino tambien debe ser un directorio local, no puedes hacer un copy('mi_fichero.txt', 'http://google.es/mi_fichero.txt');
  #3 (permalink)  
Antiguo 26/08/2008, 07:53
 
Fecha de Ingreso: agosto-2008
Mensajes: 3
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Copiar datos de una tabla a un directorio

El tema que los archivos los tengo en otro servidor !!!!

Asi esta definido el script :

<?php
$db_host="localhost";
$db_nombre="mronline_relm_db";
$db_user="mronline";
$db_pass="porga23";
$link=mysql_connect($db_host, $db_user, $db_pass) or die ("Error conectando a la base de datos.");
mysql_select_db($db_nombre,$link) or die("Error seleccionando la base de datos.");
$tabla='tbl_files';
$qry = mysql_query("SELECT url,filename FROM $tabla WHERE owner = '96'");
$campos = mysql_num_fields($qry);
$directorio="http://www.puntaonline.com";
while($row=mysql_fetch_row($qry)){
for($j=0; $j<$campos; $j++) {
$archivo=$directorio."/".$row[0]."/".$row[1];
$destino="http://www.puntaonline.com/inmupp"."/".$row[1];
copy($archivo, $destino);
}
}
?>

Que me sugeris para resolver el problema ?

Gracias !!!
Andres.
  #4 (permalink)  
Antiguo 26/08/2008, 07:55
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Copiar datos de una tabla a un directorio

Si estan en otro servidor, deberas usar las funciones de FTP para copiar ficheros entre servidores, con copy, no puedes hacerlo.
  #5 (permalink)  
Antiguo 28/08/2008, 07:27
 
Fecha de Ingreso: agosto-2008
Mensajes: 3
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Copiar datos de una tabla a un directorio

OK, y como seria la sintaxis del comando ?

Es decir como hago para recorrer la tabla donde tengo los datos y a su vez copiando las fotos mediante ftp a otro directorio ?

Gracias !!!!
Andres.
  #6 (permalink)  
Antiguo 28/08/2008, 07:36
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Copiar datos de una tabla a un directorio

Cita:
Iniciado por bolsoaqb Ver Mensaje
OK, y como seria la sintaxis del comando ?

Es decir como hago para recorrer la tabla donde tengo los datos y a su vez copiando las fotos mediante ftp a otro directorio ?

Gracias !!!!
Andres.
Hombre, pues, no te lo voy a dar hecho, pero te dire que "solo" debes quitar la linea del copy(...) y poner ahi la funcion propia de ftp para conectarte al servidor subir el fichero y desconectarte.

te recomiendo que hagas una conexion primero al servidor, y la mantengas hasta que salgas del while, y dentro del mismo while, haces solo el upload del fichero al servidor.

mirate el manual de php.net las funciones de ftp, hay muchos ejemplos, y lo tuyo, es de lo mas sencillito
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 17:25.