• Publicidad

Servicio Web en PHP para llamar función en Perl

¿Ya sabes lo que es una referencia? Has progresado, el nível básico es cosa del pasado y ahora estás listo para el siguiente nivel.

Servicio Web en PHP para llamar función en Perl

Notapor yeipro » 2012-03-20 14:52 @661

Cordial saludo a todos los participantes del foro.

Actualmente me encuentro desarrollando un servicio web en PHP. Estoy usando la librería nusoap para realizar esta tarea. Resulta que el servicio web debe llamar una función construida en Perl, a la cual se le deben enviar unos parámetros y a su vez la función o el cmd retorna un valor.

Mi problema principal ha sido en que no encuentro la forma de llamar a la función en Perl y poderle enviar los parámetros que se necesitan. Actualmente esos parámetros se envían por URL.

Les agradezco si me pueden colaborar con una posible solución u otra opción diferente para poder crear un servicio web en PHP usando la función creada en Perl.
yeipro
Perlero nuevo
Perlero nuevo
 
Mensajes: 3
Registrado: 2012-03-20 12:10 @549

Publicidad

Re: Servicio Web en PHP para llamar función en Perl

Notapor explorer » 2012-03-20 15:10 @674

Bienvenido a los foros de Perl en Español, yeipro.

¡Respondida!
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Servicio Web en PHP para llamar función en Perl

Notapor explorer » 2012-03-20 15:28 @686

Te pongo los dos casos más claros:

  • Llamar a Perl desde PHP: Ayuda con PHP y mod_perl. Básicamente consiste en llamar a Perl con un system() o passthru(), y recoger el resultado que Perl envía, desde la salida estándar, o por el intercambio de la variable de estado del resultado de la ejecución
  • Llamar a Perl creando un objeto Perl::getInstance. Esto es lo más elaborado, pero también lo más profesional y versátil (y algo más complejo de entender, claro).
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Servicio Web en PHP para llamar función en Perl

Notapor yeipro » 2012-03-21 10:36 @483

explorer, te cuento que probé con system(), pero por alguna razón me genera el error de Permission denied. ¿¿Tengo que asignarle permisos al archivo??
yeipro
Perlero nuevo
Perlero nuevo
 
Mensajes: 3
Registrado: 2012-03-20 12:10 @549

Re: Servicio Web en PHP para llamar función en Perl

Notapor explorer » 2012-03-21 16:41 @737

Pues sí. Pero también podría ser que tu php.ini indique que system() no tiene permiso de ejecución (por temas de seguridad. Me refiero al safe_mode).
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Servicio Web en PHP para llamar función en Perl

Notapor yeipro » 2012-03-26 15:38 @693

Hola explorer, nuevamente yo, aun sigo trabajando en el problema.

He estado mirando algo de los CGI. Resulta que en el proyecto, se tiene un CGI el cual es llamado y se le envían parámetros por URL. Éste recibe un parámetro y de acuerdo a ese parámetro realiza la actividad posterior.

Mi problema sigue siendo el de llamar este CGI desde PHP, o se me ocurre tal vez que se pueda crear una función en Perl que me llame el CGI ya creado y que a su vez reciba el parámetro que le será enviado desde PHP para que el CGI de Perl lo pueda usar.

He realizado investigación de cómo llamar y pasar parámetros a un CGI pero no es mucho lo que encuentro, o no sé si es que no lo entiendo.

Más o menos el proceso que se debe hacer es así:
  • En PHP debe estar el servicio web que recibirá un parámetro, en este caso es un código
  • El código debe ser enviado al CGI en Perl para que realice las actividades en la base de datos de acuerdo al código
  • Después de esto el cgi debe retornar un nuevo código.

Sería enviar parámetros al cgi y recibir parámetros del cgi.

explorer, te agradezco la colaboración, llevo bastante en el proceso y no encuentro solución.
yeipro
Perlero nuevo
Perlero nuevo
 
Mensajes: 3
Registrado: 2012-03-20 12:10 @549

Re: Servicio Web en PHP para llamar función en Perl

Notapor explorer » 2012-03-26 16:30 @729

En el mensaje mío anterior, que pone ¡Respondida!, te dejo enlazado todos los hilos que han comentado este asunto.

La forma más fácil de ejecutar un cgi desde PHP es con system(), exec() o passthru(), si el cgi está en el mismo servidor.

Otra forma es, con la librería curl de PHP, hacer una petición HTTP que llame al cgi, como si hubiese ocurrido una llamada web normal, al cgi. Haces un get a la URL del CGI, y guardas el resultado, igual que si lo hubieras hecho desde un navegador web.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Intermedio

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 10 invitados