FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Ejecutar PHP desde delphi y esperar resultados...
Saludos amigos del club...
Tengo un programa en windows con postgreSQL; de este programa extraigo un listado de clientes para Internet (PHP y MySQL , más de 10.000 registros). Tengo una vista en PgSQL, de la cual extraigo todo el código que se ejecutará en el servidor... pero esto es muy tedioso. (el servidor no es nuestro y la única herramienta disponible es PhpMyAdmin) ahora, NO TODOS los registros se actualizan diariamente. En el programa he logrado hacer que al actualizar un cliente (si lo desean) se actualice también en Internet; Abriendo una ventana de navegador pasando las variables en la URL... básico y escueto. pero... quisiera hacerlo en bloque y no se como enviar a PHP y esperar a que termine para así continuar con el bloque. ¿Alguien que me ayude en esta duda, pls?
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
#2
|
||||
|
||||
Hola,
No me queda muy claro el asunto, te pido disculpas. A mí se me ocurre que, desde Delphi, es posible realizar peticiones HTTP POST, cuyas variables podría recibir el "script" PHP que fuera, para hacer con ellas lo que fuera menester. No se me ocurre otra cosa, ahora mismo, ya digo que no me quedó muy claro el asunto, y me disculpo de nuevo. |
#3
|
||||
|
||||
Aclarando...
es fácil...
cuando edito un cliente en el programa el me pregunta si deseo enviar los cambios a internet. entonces desde delphi ejecuto el navegador enviandole la URL del script PHP y el hace el resto. Eso es con 1 solo cliente. lo que quisiera es obviar ese paso y al final del día enviar los cambios en bloque (batch) Clientes actualizados hoy: cliente 1 cliente 2 cliente 3 ... cliente n |Actualizar en Internet| eso es lo que quisera hacer... el problema es al abrir la ventana del navegador... si se demora en abrir, si la conexion está lenta y cosas así el programa NO LO SABE y NO PODRA SABER cuando terminó de ejecutarse el script PHP para continuar con el siguiente registro. Para el programa, la ejecución del bucle sería ininterrumpida, mientras que abrir ventanas de navegador, ejecutar el script y cosas así es mucho más demorado... y no será sincronizado. por eso mi duda está en enviar la info al script y ESPERAR a que termine la ejecución para continuar... me hice explicar? --- He descargado el PHP4Delphi, intentando probar pero hasta ahora estoy leyendo la documentación.
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
#4
|
||||
|
||||
Hola,
Que alguien me corrija, pero, creo que podrías usar el código de la respuesta HTTP. Un "script" de PHP podría incluir algo así: Código PHP:
No sé si este último código es el más apropiado, o incluso si podrías disponer tu propio código, pero, en todo caso, la idea es recoger dicho código de respuesta desde tu programa, de modo que sepas qué ha ocurrido en el servidor. Luego el que hagas sucesivas peticiones "HTTP GET" (o "POST") o envíes los datos de los registros en una sola petición, supongo que depende de cómo te lo montes, quiero decir, desde el servidor sabrás qué recibes y qué hacer con lo que recibes. |
#5
|
||||
|
||||
Gracias DEC,
Interesante... voy a hacer unas pruebas; Luego te cuento...
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
#6
|
|||
|
|||
Por lo que entendí, aquí mis sugerencias.
1 – Utilizar el componente TWebBrowser en su aplicación, este componente un evento llamado onDocumentComplete que es llamado después que la pagina fue generada. 2 – Cambiar su estructura de insertar clientes para webservices, asi puedes controlar mejor. Saludos, Andreano |
#7
|
||||
|
||||
Aqui les cuento....
Antes que todo GRACIAS por la ayuda que me dieron... rebacano
La solución la encontré echando mano del truco que me recomendaste (realizar peticiones HTTP POST). De esta manera pude enviar las solicitudes al script PHP y el programa espera a que termine de cargar devolviendome el resultado ya sea en la cabecera o en el contenido de la web (más facil me es en el contenido de la web). estó quedó así:
Nuevamente GRACIAS.
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
#8
|
||||
|
||||
Ademas...
en el código del truco cambias el nombre del agente y le damos mayor seguridad a la interacción entre el PHP y delphi...
Código PHP:
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Ejecutar DTS desde delphi 7.0 | janexa | Varios | 8 | 28-01-2008 22:58:34 |
Esperar a señal software para ejecutar código | modulay | Varios | 2 | 13-09-2007 00:56:13 |
Ejecutar Exe de mi Aplicacion y Esperar a que Termine | spider_Ramon | API de Windows | 4 | 07-09-2005 01:07:01 |
ejecutar archivo y esperar que termine | agustincs | API de Windows | 4 | 18-08-2004 22:53:21 |
Ejecutar el Word y esperar a que lo cierren | Salomon | Varios | 1 | 22-04-2004 16:41:22 |
|