PDA

Ver la Versión Completa : ¿Como hacer un servicio que puede ser llamado desde PHP?


AzidRain
20-05-2012, 19:20:55
Tengo el siguiente escenario:

Un código que genera un archivo PDF y XML de acuerdo con un parámetro que se le pase, ese programa funciona como parte de un sistema más grande, pero se puede "extraer" sin problemas para que funcione como un solo programa. Se requiere que el usuario entre a una página x y proporcione tal parámetro para que el programa genere el archivo. La página se pretende que sea un PHP sencillo con una caja de captura y un boton.

La idea es que el programa delphi genere el archivo, lo coloque en una carpeta y mediante HTML o FTP vía PHP el usuario descargue el archivo directamente desde la página donde puso el botón.

La parte de PHP para descargar el archivo no me representa problema, sin embargo no tengo idea de como hacer para que mediante PHP se le pase el dato al programa delphi (que bien podría ser un servicio corriendo en un servidor) para que genere el archivo a descargar. No se si pudiera convertir el programa en un servicio web, pero no tengo casi nada de experiencia en eso.

Se agradece cualquier opinión o sugerencia para investigar o leer.

Casimiro Notevi
20-05-2012, 20:16:10
La idea es que el programa delphi genere el archivo, lo coloque en una carpeta y mediante HTML o FTP vía PHP el usuario descargue el archivo directamente desde la página donde puso el botón.

"mediante html o ftp via php"... creo que has confundido y mezclado tantas letras :)

AzidRain
21-05-2012, 16:38:53
Mediante HTML me refiero a descargar directamente el archivo tal como hacemos cuando presionamos "descargar" o "download" en algunos sitios. Al decir FTP vía PHP , me refiero a conectar a un servidor FTP y transferir desde ahí el archivo, todo ello usando código PHP

Casimiro Notevi
21-05-2012, 17:00:26
No puedo ayudar mucho en eso, pero con este mensajito ponemos en hilo el primero para que pueda ser visto por los demás :)

Chris
21-05-2012, 17:04:41
Una pegrunta, no es posible codificar el servicio en PHP en lugar de hacerlo en Delphi? PHP tiene una buena librería para hacer PDFs.

Saludos!

AzidRain
21-05-2012, 19:18:21
Ya lo había pensado Chris, el detalle es que el PDF es una factura que genera un sistema que tengo en Delphi. Otra idea que se me ocurre es que en lugar de descargarlo, el usuario escriba su correo y un servicio corriendo en el servidor le envíe su archivo. Lo que no se es como comunicarme desde PHP con el servicio que haría ya sea devolver el archivo o bien enviarlo por mail.

dec
21-05-2012, 21:15:51
Hola,

Se me ocurren dos opciones, a cual más estúpida, probablemente. Pero ahí van. :D

Una sería utilizando la función "exec" (http://es2.php.net/manual/en/function.exec.php), pasando al programa los argumentos oportunos. Lo que ahora mismo no sé muy bien es cómo obtener el resultado de dicho programa, aunque, si este produjese un archivo, igual bastaría con comprobar si este existe luego de ejecutar el programa en cuestión. En todo caso igual convendría mirar por este lado: cómo ejecutar el programa, cómo obtener su resultado, etc. Y acaso cómo podría hacerse para que el programa no se ejecutase a cada petición del usuario, si esto representa un problema, si podría "llamarse" a un servicio en ejecución...

La otra solución es más compleja, pero, igual no está demás. Se trataríai de usar PHP4Delphi (http://users.telenet.be/ws36637/php4delphi.html), que, por ejemplo, te permitiría escribir tu propia extensión para PHP. Creo que funcionan bastante bien (recuerdo haber probado hace tiempo) pero, claro, igual no es la solución para este caso en concreto por lo complicado del asunto, o incluso porque no solucionase nada en realidad: no sé porqué se me ha ocurrido que igual podría ayudar.