Foros del Web » Programando para Internet » PHP »

Copiar imagen de un servidor a otro.

Estas en el tema de Copiar imagen de un servidor a otro. en el foro de PHP en Foros del Web. Tengo una cámara ip que va generando imagenes jpg y quiero que otra pagina php coja la imagen y la guarde en un directorio de ...
  #1 (permalink)  
Antiguo 29/01/2007, 05:13
Avatar de deccweb  
Fecha de Ingreso: febrero-2003
Ubicación: Mataro
Mensajes: 365
Antigüedad: 21 años, 1 mes
Puntos: 0
Copiar imagen de un servidor a otro.

Tengo una cámara ip que va generando imagenes jpg y quiero que otra pagina php coja la imagen y la guarde en un directorio de mi servidor.

Es posible?

Ejemplo:

Camara IP
http://80.x.x.x/imagen.jpg

Copie imagen en:

Servidor PHP
http://www.miweb./imagen.jpg
__________________
Calle17.net

edgargranados.es
  #2 (permalink)  
Antiguo 29/01/2007, 08:45
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: Copiar imagen de un servidor a otro.

Pues bastaría con usar fopen (+fread(), +fclose y luego usar fopen de nuevo para guardar en tu servidor).

También podés usar file_get_contents (más sencillo), y luego otra vez fopen, fwrite, fclose para guardar en tu servidor.

En cualquier caso, sí se puede hacer lo que preguntás, lo que creo más complicado es copiar TODAS las imágenes generadas por la cámara, ya que tendrías que ejecutar el php periódicamente, o dejarlo correr permanentemente...

Eso ya dependerá específicamente de lo que necesites.


Saludos.
  #3 (permalink)  
Antiguo 06/02/2007, 05:26
Avatar de deccweb  
Fecha de Ingreso: febrero-2003
Ubicación: Mataro
Mensajes: 365
Antigüedad: 21 años, 1 mes
Puntos: 0
Re: Copiar imagen de un servidor a otro.

Al final lo consegui. Este es el código que utilizo:

Código PHP:
<? 

function recibe_imagen ($url_origen,$archivo_destino){ 
$mi_curl curl_init ($url_origen); 
$fs_archivo fopen ($archivo_destino"w"); 
curl_setopt ($mi_curlCURLOPT_FILE$fs_archivo); 
curl_setopt ($mi_curlCURLOPT_HEADER0); 
curl_exec ($mi_curl); 
curl_close ($mi_curl); 
fclose ($fs_archivo); 



recibe_imagen("http://ablecd.wz.cz/vendeta/fuhrer/hitler-pretorians.jpg","/usr/home/miweb.com/web/iimagen.jpg");

 
?>
Esto me funciona perfectamente, pero tengo un problema porque quiero cojer la imagen de una cámara ip y la imagen me la da así:

http://ip/snapshotJPEG?Resolution=320x240

Y con esta dirección no me funciona.

Habria alguna forma?
__________________
Calle17.net

edgargranados.es
  #4 (permalink)  
Antiguo 21/02/2007, 10:17
 
Fecha de Ingreso: febrero-2007
Mensajes: 6
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Copiar imagen de un servidor a otro.

Hola, yo quería hacer algo parecido, aunque la foto de origen no sea mía (pero es de dominio público).

La foto en cuestión es ésta:
sohowww .nascom .nasa .gov/data/realtime/mdi_igr/1024/latest.gif (perdonad, no me permiten poner enlaces)

Y como se actualiza cada pocas horas, quiero copiarla a mi web cada x horas para no usar el servidor de la nasa.

Entonces, he probado el script éste, y me salen dos errores, no sé si es que hace falta alguna librería o que no me permiten ejecutar el código en la otra web (no sé si me entendéis). Me dice esto:

Cita:
Warning: fopen(/usr/imagen.jpg): failed to open stream: Permission denied in /var/www/vhost/latinquasar.com/home/html/prueba.php on line 5

Warning: curl_setopt(): supplied argument is not a valid File-Handle resource in /var/www/vhost/latinquasar.com/home/html/prueba.php on line 6
GIF87a
y a partir de ahí me muestra muchos símbolos raros.

gracias
  #5 (permalink)  
Antiguo 21/02/2007, 10:24
Avatar de dopon  
Fecha de Ingreso: julio-2005
Ubicación: Cucuta / Colombia
Mensajes: 493
Antigüedad: 18 años, 9 meses
Puntos: 1
Re: Copiar imagen de un servidor a otro.

si estas usando el mismo codigo e sapenas comprensible

estas usando la ruta destino como

/usr/home/miweb.com/web/iimagen.jpg

o estas haciendolo en la carpeta /usr cambia esa ruta por algo como esto :

/var/www/vhost/latinquasar.com/home/html/imagen.jpg ;)
  #6 (permalink)  
Antiguo 21/02/2007, 10:33
 
Fecha de Ingreso: febrero-2007
Mensajes: 6
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Copiar imagen de un servidor a otro.

Vaya, no había visto que estaban las dos urls al revés
Hecho el cambio, ahora en lugar de la gran cantidad de caracteres que tenía antes, me aparecen 4 errores, y me da a mi que no puedo hacer eso en mi servidor:

Cita:
Warning: fopen(): URL file-access is disabled in the server configuration in /var/www/vhost/latinquasar.com/home/html/prueba.php on line 5

Warning: fopen( sohowww .nascom .nasa .gov/data/realtime/mdi_igr/1024/latest .gif): failed to open stream: no suitable wrapper could be found in /var/www/vhost/latinquasar.com/home/html/prueba.php on line 5

Warning: curl_setopt(): supplied argument is not a valid File-Handle resource in /var/www/vhost/latinquasar.com/home/html/prueba.php on line 6

Warning: fclose(): supplied argument is not a valid stream resource in /var/www/vhost/latinquasar .com/home/html/prueba.php on line 10
  #7 (permalink)  
Antiguo 21/02/2007, 10:40
Avatar de dopon  
Fecha de Ingreso: julio-2005
Ubicación: Cucuta / Colombia
Mensajes: 493
Antigüedad: 18 años, 9 meses
Puntos: 1
Re: Copiar imagen de un servidor a otro.

los 4 errores dan por esto : URL file-access is disabled in the server configuration

reemplaza
/var/www/vhost/latinquasar.com/home/html/imagen.jpg

por simplemete imagen.jpg
  #8 (permalink)  
Antiguo 21/02/2007, 10:47
 
Fecha de Ingreso: febrero-2007
Mensajes: 6
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Copiar imagen de un servidor a otro.

lo que tenía yo puesto en el archivo de prueba era:

Código:
recibe_imagen("url de origen","/usr/imagen.jpg");
lo he cambiado por "/imagen.jpg" y por "imagen.jpg" y nada, me aparece lo mismo

En localhost también he probao, y me dice:

Fatal error: Call to undefined function curl_init() in G:\XAMPPlite\htdocs\www\prueba.php on line 4

así que ni idea.
  #9 (permalink)  
Antiguo 30/04/2009, 14:33
 
Fecha de Ingreso: octubre-2008
Mensajes: 38
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Copiar imagen de un servidor a otro.

Hola, ha pasado ya tiempo de este post, pero yo sigo buscando una solución y parece que aquí la he encontrado al problema que planteo en este post:

h**p://***.forosdelweb .com/f4/como-mostrar-imagen-internet-intranet-634053/

Gracias es te código he conseguido mostrar una imagen de Internet en la Intranet, pero me he encontrado con un problema, en el Internet Explorer la puedo visualizar, en cambio con el Firefox me muestra esto:


h**p://i41.tinypic.com/2lus0ew.png


Hay alguna forma de solucionar esto?



Salu2.
  #10 (permalink)  
Antiguo 10/10/2012, 23:42
 
Fecha de Ingreso: septiembre-2007
Mensajes: 1
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: Copiar imagen de un servidor a otro.

la funcion que esta colocada arriba va bien el problema es ubicar correctamente tu ruta del servidor, donde se grabara el archivo .

si no la conoces, puedes crear un archivo php y coloca lo siguiente

<?
echo dirname(__FILE__);
?>

subelo a la carpeta donde grabaras los archivos y ejecutalo de un navegador, con ello te dara la ruta real y lo demas es solo colocar la ruta obtenida y seguidamente el nombre del archivo que tendra la nueva imagen en la funcion que te proporcionaron y listo.

Saludos a todos la respuesta llego tarde pero mejor que no quede inconcluso el post.
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 15:11.