Foros del Web » Programando para Internet » PHP »

Conectar pc con pc vía php

Estas en el tema de Conectar pc con pc vía php en el foro de PHP en Foros del Web. Hola, tengo dos ordenadores, tengo acceso a los dos, se las ips. Como me conecto desde uno al otro vía php. Mediante ftp, supongo que ...
  #1 (permalink)  
Antiguo 23/09/2003, 08:19
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 21 años
Puntos: 0
Conectar pc con pc vía php

Hola, tengo dos ordenadores, tengo acceso a los dos, se las ips. Como me conecto desde uno al otro vía php. Mediante ftp, supongo que se puede, pero ¿no se necesita un password para entrar, de donde lo saco??. Lo he intentado mediante un fsockopen(); pero no me iba, o no se hacerlo. Lo intente con este codigo:

Código PHP:
<?php
function conectarSock($direc$puerto$timout){
$fp fsockopen("$direc"$puerto$timout);
if(!
$fp) {
    echo 
"Error no se ha podido conectar<br>\n";
} else {
    
fpassthru($fp);
    
fclose($fp);
}
}
echo 
conectarSock(62.175.35.2680300);
?>
Un saludo

PD: me pueden decir que ventajas tiene entrar por ftp o por via sock
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #2 (permalink)  
Antiguo 23/09/2003, 08:27
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Para conectarte a otro equipo via FTP, ese otro equipo debe tener instalado y funcionando un servidor FTP (ademas de tener habilitado el puerto).

Con ese codigo que has puesto estas intentando conectarte a un servidor HTTP instalado y funcionando en el otro equipo. Ademas, estas comentiendo un error al poner la IP, debes ponerla como cadena entre comillas:
Código PHP:
echo conectarSock("62.175.35.26"80300); 
Asi que para conectarte a otro equipo, ese otro equipo debe tener un programa (servidor) que este "escuchando" (esperando conexiones) en un determinado puerto (80 en el caso de HTTP, 21 creo que en el de FTP).

Por supuesto, luego para comunicarse con ese servidor es necesario conocer el protocolo de ese servidor (el protocolo HTTP o FTP). Es decir, los comandos.

Saludos.

PD: Es lo mismo, pero si usas las funciones PHP de FTP, no necesitas conocer el protocolo de FTP. Y si usas sockets, tienes que conocer el protocolo, ya sea FTP o HTTP o telnet o SMTP o etc.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 23/09/2003, 08:47
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 21 años
Puntos: 0
Gracias josemi, haber lo que hago.

Un saludo
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #4 (permalink)  
Antiguo 23/09/2003, 09:09
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 21 años
Puntos: 0
Hola, por curiosidad intente conectarme vía ftp a un servidor de lycos y no va. Revison el siguiente cdigo y error:

Código PHP:
<?php
$xy 
ftp_connect("ftp.usuarios.lycos.es");
$x ftp_login($xy"mi_user""mi_pass");
if (!
$x)
{
echo 
"Falló la conexión. MMMMM";
}else{
echo 
"Conecxión realizada con exitó<br>";
ftp_rawlist($xy,"/");
}
$xy ftp_close($xy);
?>
Me da, este error:

Cita:
Fatal error: Call to undefined function: ftp_connect() in /data/members/free/tripod/es/l/y/n/lynxpino/htdocs/ftp.php on line 2
Necesitan algun tipo de librerias p'ara conectarse vía ftp, lo digo por que tenia un codigo pdf que me daba el mismo error y era por culpa de las librerias. También puede ser tripod que haya denegado el acceso a esas funciones.

Un saludo
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #5 (permalink)  
Antiguo 23/09/2003, 09:14
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Si te fijas en www.php.net/ftp , no hace falta ninguna libreria. Lo que si necesita es que a la hora de compilar se habiliten las funciones. E imagino que en Lycos estan deshabilitadas.

En el phpinfo() te muestra si el FTP esta activado o no.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #6 (permalink)  
Antiguo 23/09/2003, 09:22
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 21 años
Puntos: 0
Gracias de nuevo josemi.

Un saludo
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #7 (permalink)  
Antiguo 23/09/2003, 09:41
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 21 años
Puntos: 0
Hola, losiento por mi insistencia, pero es que quiero aprender .

josemi, me dices que para entrar en el ordenador necesitaria un servidor ¿como apache?. Y entonces al entrar que me mostraria, todo el codigo fuente de la index?? Lo digo por que en el codigo que puse (sockets) lo primero que hago es fpassthru($fp); que me muestra el todo el contenido del archivo.

Un saludo

PD: tenias razón tripod tiene las ftp desactivadas.
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #8 (permalink)  
Antiguo 23/09/2003, 14:23
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Si, apache es un servidor HTTP, que responde a peticiones HTTP.

Y revisa http://www.php.net/manual/en/function.fsockopen.php , sobre todo los comentarios de los usuarios. Comentan la clase snoopy que "oculta" el protocolo HTTP y puedes acceder usando metodos de esa clase, algo asi como con las funciones FTP de PHP.

Sobre tu codigo, no mostraria nada, porque lo unico que has hecho a sido descolgar y marcar el numero, ahora han descolgado el destino y esta esperando a que le mandes "ordenes". Esas "oredenes" son las peticiones HTTP. Las normales son GET y POST. Si te fijas en el manual te pone un ejemplo de como realizar una peticion GET. Y en los comentarios explican el POST (incluso creo que envio de ficheros). Estas peticiones son las que hace un navegador al servidor web, asi que puedes simular el funcionamiento de un navegador.

La clase snoopy hace mas sencillas estas tareas. Oculta en los metodos las peticiones HTTP. Y te hace la vida muy facil. Algo asi como lo que hace el phpmailer con el protocolo SMTP.

Conocer el protocolo de memoria esta bien para fardar delante de los colegas o para chulearte "hablando" con un servidor via telnet. Pero a nivel de productividad es mejor utilizar estas clases. Y si te pica la curiosidad, pues miras el codigo. Por hay veras todo tipo de peticiones.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #9 (permalink)  
Antiguo 24/09/2003, 07:44
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 21 años
Puntos: 0
MMMmmmmm... interesante

Gracias josemi

Sabes que es lo que pasá, como todo esta en inglés y me jiringa bastante tener que depender de un leguaje que no es el mio y que aparte casí no entiendo.

Castellano

Un saludo
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #10 (permalink)  
Antiguo 24/09/2003, 07:56
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Ya, el dichoso idioma. Pero creo que es importante al menos entender el ingles escrito. Lamentablemente en el mundillo de la informatica suele estar en ingles los mas "in". Y hay un monton de desarrolladores que publican su soft en ingles para alcanzar un mayor publico. Imaginate que los alemanes solo publicasen en aleman y no en ingles. Creo que el aleman es mas dificil que el ingles (ademas de tener que aprender otro idioma). Y ya no te digo de los japoneses, noruegos y demas.

Asi que el ingles ha tomado el lugar del "esperanto": es la lengua universal.

Eso si, la mayor parte de los proyectos opensource procuran tener como subproyectos la traduccion del manual e interfaz. Pero claro, como suele ser trabajo para voluntarios, pues va bastante retrasado respecto al original.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 07:42.