Foros del Web » Programando para Internet » PHP »

Como enviar archivos de una página a otra?

Estas en el tema de Como enviar archivos de una página a otra? en el foro de PHP en Foros del Web. Hola a todos! Mi duda es, ¿puedo enviar un archivo alojado en mi servidor a otro servidor mediante URL? Ya he probado a hacerlo mediante ...
  #1 (permalink)  
Antiguo 25/04/2013, 05:10
 
Fecha de Ingreso: abril-2013
Ubicación: Berlin
Mensajes: 5
Antigüedad: 10 años, 11 meses
Puntos: 0
Como enviar archivos de una página a otra?

Hola a todos!
Mi duda es, ¿puedo enviar un archivo alojado en mi servidor a otro servidor mediante URL?
Ya he probado a hacerlo mediante FTP y todo funciona bien, pero en el caso en que el otro servidor no pueda usar FTP debería de hacerlo mediante URL y aquí me he perdido un poco.
He estado mirando el uso de funciones como copy() de PHP (quizás sea la mejor opción) y el uso de curl, pero ninguna de estas opciones las comprendo muy bien.
¿Podrías orientarme por dónde puedo seguir?
Gracias de antemano!!
  #2 (permalink)  
Antiguo 25/04/2013, 05:16
pr0
 
Fecha de Ingreso: marzo-2004
Mensajes: 687
Antigüedad: 20 años
Puntos: 28
Respuesta: Como enviar archivos de una página a otra?

Es imposible subir un fichero a un servidor "ajeno" sin usar un usuario y una contraseña, ya sea de una cuenta FTP o del propio sistema.

Imaginate que todo el mundo pudiera hacer un script para subir ficheros al servidor que quisiera sin permisos de usuario!
  #3 (permalink)  
Antiguo 25/04/2013, 05:23
 
Fecha de Ingreso: abril-2013
Ubicación: Berlin
Mensajes: 5
Antigüedad: 10 años, 11 meses
Puntos: 0
Respuesta: Como enviar archivos de una página a otra?

Si, bueno, hasta ahi estamos de acuerdo.
En este caso tengo acceso a los 2 servidores, pero de todas formas se que es posible hacer lo que comento. Ya no sea enviar el archivo en sí completo (Cosa que mediante FTP si he podido hacer), sino coger el contenido de dicho archivo, enviarlo mediante URL, y desde el otro servidor procesar ese contenido y generar el archivo.

Sé que es posible hacerlo. Ahora mismo no se cómo, pero no desistiré hasta poder conseguirlo ;)
  #4 (permalink)  
Antiguo 25/04/2013, 05:51
 
Fecha de Ingreso: abril-2013
Ubicación: Berlin
Mensajes: 5
Antigüedad: 10 años, 11 meses
Puntos: 0
Respuesta: Como enviar archivos de una página a otra?

De momento he conseguido que ,desde un archivo PHP en el servidor de destino, me muestre el contenido del archivo del servidor de origen. Ahora solo queda que me guarde ese contenido en el servidor origen.
De momento el código que tengo es este: (archivo en el servidor de destino)

Código PHP:
                $url ='url_del_archivo_en_el_servidor_origen';
        
$save_to='url_del_archivo_en_el_servidor_destino';
        
        
$g=$save_to.basename($url);
        
//echo $g;
        
if(!is_file($g)){
        
            
$ch=curl_init($url);
            
$fp=fopen ($g"w+");
        
            
curl_setopt ($chCURLOPT_FILE$fp);
            
curl_setopt ($chCURLOPT_HEADER ,0);
            
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,60);
        
            
curl_exec ($ch);
            
curl_close ($ch);
            
fclose($fp);
        } 
Este código muestra el contenido del archivo, pero no lo guarda. ¿Alguna idea?

Gracias!
  #5 (permalink)  
Antiguo 25/04/2013, 06:59
pr0
 
Fecha de Ingreso: marzo-2004
Mensajes: 687
Antigüedad: 20 años
Puntos: 28
Respuesta: Como enviar archivos de una página a otra?

Si solamente quieres el contenido del archivo para procesarlo en otro servidor puedes mirarte la función file_get_contents de php, es posible que te sirva.
  #6 (permalink)  
Antiguo 25/04/2013, 07:06
 
Fecha de Ingreso: abril-2013
Ubicación: Berlin
Mensajes: 5
Antigüedad: 10 años, 11 meses
Puntos: 0
Respuesta: Como enviar archivos de una página a otra?

Gracias por contestar.
Esa funcion ya la he usado alguna vez, y creo que puede serme bastante útil.
Y, si no me equivoco, usando file_put_contents() me puedo crear un archivo, en el servidor de origen con los datos que recogo con file_get_contents.
Cierto?
  #7 (permalink)  
Antiguo 29/04/2013, 08:45
 
Fecha de Ingreso: abril-2013
Ubicación: Berlin
Mensajes: 5
Antigüedad: 10 años, 11 meses
Puntos: 0
Sonrisa Respuesta: Como enviar archivos de una página a otra?

Escribo simplemente para comentad que al final lo he conseguido! ;)
Os explico un poco el funcionamiento (por si a alguien le interesa):
Desde una proyecto basado en Wordpress al guardar un nuevo post automáticamente guardo ese post en un archivo.
Lo que yo pretendía era enviar dicho archivo a una segunda página automáticamente para que se "posteara" allí también, y lógicamente eso no se puede hacer directamente. Yo he usado dos métodos:

1- Via FTP:
Conectando con el otro servidor y generando la conexión FTP es bastante sencillo hacerlo.

2- Via URL:
-Cogo el estilo de la página receptora para maquetar el post guardado.
-Ese archivo lo divido en 3 partes para enviarlo por $_POST mediante Curl.(link del archivo, ID del post, contenido)
- Recogo las 3 variables en el servidor de destino.
- Monto la nueva página con esas 3 variables.
- Y ya tengo un archivo idéntico en los 2 servidores.

Si a alguien le interesa que lo comente y subo las funciones principales que uso para enviar los archivos.

Un saludo!! ;)

Etiquetas: página
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 01:36.