| |||
Respuesta: Se puede autoejecutar un Script después de haber sido creado? Cita: No pero el problema es el siguiente:Un servidor me envía un POST a un Script mío, y mi Script envía otro POST a otro sitio, el caso es que le devuelve error, aunque mi POST es enviado correctamente... Entonces estoy intentando evitar esto, para ello creo otro fichero PHP a parte con el código del POST. Lo que me falta es que se ejecute el fichero creado solo... Te resumo los pasos: 1. Servidor me envía un POST a mi Script. 2. Mi Script recibe el POST, procesa los datos del POST y crea un fichero PHP preparado para enviar el POST. 3. Me falta que ese fichero se autoejecute independientemente del anterior. Si utilizo un include, devolverá error al servidor que me envió el primer POST. Me estoy volviendo loco... Sugerencias? Gracias. |
| ||||
Respuesta: Se puede autoejecutar un Script después de haber sido creado? ¿Y cómo esperas ejecutar dicho script sin incluirlo? Es decir, ya sea evaluando el script (no recomendado) o incluyéndolo es la única forma que hay de ejecutarlo. Tal vez estás pensado mal la solución. Generar un script y luego ejecutarlo es lo mismo que ejecutar las mismas instrucciones sin crear ningún archivo, sería bueno que muestres que hace dicho script, de otra forma no se entiende tu objetivo.
__________________ Y U NO RTFM? щ(ºдºщ) No atiendo por MP nada que no sea personal. |
| |||
Respuesta: Se puede autoejecutar un Script después de haber sido creado? Cita: Te cuento:
Iniciado por pateketrueke ¿Y cómo esperas ejecutar dicho script sin incluirlo? Es decir, ya sea evaluando el script (no recomendado) o incluyéndolo es la única forma que hay de ejecutarlo. Tal vez estás pensado mal la solución. Generar un script y luego ejecutarlo es lo mismo que ejecutar las mismas instrucciones sin crear ningún archivo, sería bueno que muestres que hace dicho script, de otra forma no se entiende tu objetivo.
Código:
Se genera el fichero PHP con esas instrucciones. De esa forma, el Script devolverá al POST enviado por el servidor, una respuesta correcta. $fp = fopen($fechax.'.php', "a") or die("Couldn't open file for writing!"); fwrite($fp, "<?php"."\n". "\$url = 'URL DE DESTINO DE MI POST';"."\n". "\$data = array('usr_id' => '0', 'telf' => '".$smsfrom."', 'fecha' => 'nodate', 'telf_dstn' => '".$callto."');"."\n". "\$options = array( 'http' => array( 'header' => 'Content-type: application/x-www-form-urlencoded\r\n' . 'Authorization: Basic ' . base64_encode('USER:PASS'), 'method' => 'POST', 'content' => http_build_query(\$data), ), );"."\n". "\$context = stream_context_create(\$options);"."\n". "\$result = file_get_contents(\$url, false, \$context);"."\n". "?>" ) or die("Couldn't write to file!"); fclose($fp); Si en vez de generar un fichero PHP, incluyera lo que hace el fichero generado, devolvería error al Servidor. Lo que intento es que el fichero PHP que recibe el POST, le devuelva un OK al servidor así no da error. Y que mi POST, se envíe de forma independiente... Si sabes alguna forma de devolverle un OK al servidor antes de que se ejecute el script u otra opción, sería de mucha ayuda... Gracias |
| ||||
Respuesta: Se puede autoejecutar un Script después de haber sido creado? Cita: Eso que dices carece totalmente de sentido, como sea es el mismo código, ya sea lo ejecutes o lo incluyas después de generarlo. Si en vez de generar un fichero PHP, incluyera lo que hace el fichero generado, devolvería error al Servidor. ¿Crees que al ejecutar dicho archivo generado no producirá error alguno? Es el mismo código, el mismo contexto, exactamente el mismo problema. Te sugiero estudiar un poco cómo es que funciona PHP al respecto. No es necesario ningún archivo mágico adicional. Tu problema es otro.
__________________ Y U NO RTFM? щ(ºдºщ) No atiendo por MP nada que no sea personal. |
| |||
Respuesta: Se puede autoejecutar un Script después de haber sido creado? Cita: A ver, sé que al incluir un Script PHP, lo estás ejecutando porque incluyes el código en el Script que lo llama, por eso mismo es por lo que me falla. Lo que pregunto es si es posible ejecutar otro que sea independiente del primero, que no le devuelve respuesta al primero ni nada...
Iniciado por pateketrueke Eso que dices carece totalmente de sentido, como sea es el mismo código, ya sea lo ejecutes o lo incluyas después de generarlo. ¿Crees que al ejecutar dicho archivo generado no producirá error alguno? Es el mismo código, el mismo contexto, exactamente el mismo problema. Te sugiero estudiar un poco cómo es que funciona PHP al respecto. No es necesario ningún archivo mágico adicional. Tu problema es otro. |
| ||||
Respuesta: Se puede autoejecutar un Script después de haber sido creado? Cita: Eso no fue lo que preguntaste al inicio. Lo que pregunto es si es posible ejecutar otro que sea independiente del primero, que no le devuelve respuesta al primero ni nada... ¿A qué le llamas "independiente" del otro script? ¿Quieres aislar cualquier posible salida? Usa buffers. ¿Quieres controlar un error o excepción? Usa un manejador de errores. El asunto es que no podemos adivinar los resultados del error que mencionas como para poder sugerir algo, es imposible leer tu mente y saber a lo que te refieres.
__________________ Y U NO RTFM? щ(ºдºщ) No atiendo por MP nada que no sea personal. |
| |||
Respuesta: Se puede autoejecutar un Script después de haber sido creado? Cita: Si a ver, disculpa si me explico mal:
Iniciado por pateketrueke Eso no fue lo que preguntaste al inicio. ¿A qué le llamas "independiente" del otro script? ¿Quieres aislar cualquier posible salida? Usa buffers. ¿Quieres controlar un error o excepción? Usa un manejador de errores. El asunto es que no podemos adivinar los resultados del error que mencionas como para poder sugerir algo, es imposible leer tu mente y saber a lo que te refieres. ----FUNCIONA---- Recibir un POST y crear un script PHP con "fopen" con datos procesados del post recibido. El nuevo script creado enviará otro POST a otro sitio. Lo que me falta hacer es que se ejecute el script creado para que envie el POST. ----NO FUNCIONA---- Recibir un POST, procesar las variables y enviar un POST a otro sitio. No funciona porque no le devuelve un OK al post principal, a pesar de que el POST que yo hago, sí que se envía. ----LA SOLUCIÓN QUE ESTOY INTENTANDO---- Puesto que lo primero que te he puesto funciona, lo que intento es que al crear el fichero PHP con el código encargado de enviar el POST, éste se ejecute de alguna forma, independiente del script PHP que lo crea, para que no devuelva un error. Los pasos serían: 1. Recibe el POST 2. Crea el fichero PHP con el código para enviar un POST 3. Le devuelve un OK, al POST principal. ---- A partir de aquí, el fichero ya no tiene que hacer nada más. 4. El segundo fichero, el que creamos con el primero, tiene que ejecutarse para enviar el POST. |
| ||||
Respuesta: Se puede autoejecutar un Script después de haber sido creado? Si quieres proseguir así, aunque yo creo que no es ese el problema, pero lo que podrías hacer es, tener un cronjob que se ejecute cada minuto, que detecte si existe el script, y lo ejecute, así sería de forma independiente y desde tu script inicial solamente creas el script, el cronjob va a detectar este archivo a ejecutarlo. |
Etiquetas: Ninguno |