¿Cómo hacer que la salida de un script php se ejecute mediante un correo canalizado?

¿Cómo hacer que la salida de un script php se ejecute mediante un correo canalizado?

He configurado una dirección de correo electrónico para canalizar (reenviar) todos los correos electrónicos a /path/to/script.php

Pensé que recibiría el resultado del script como respuesta por correo electrónico, pero no funciona.

¿Cómo puedo obtener el resultado del script y enviar un correo electrónico de respuesta con el resultado como contenido del correo electrónico?

(*) Sé que puedo usar mail() dentro del script, pero no tengo permisos para editarlo y no puedo copiarlo porque se actualiza de vez en cuando.

Respuesta1

Podrías simplemente agregar otra tubería yteeel correo sin formato en un archivo temporal, luego canalice al script de solo lectura mencionado y, por último, canalice a otro script php para hacer el resto.

El último script php leerá el resultado del script de solo lectura y la dirección del remitente del archivo temporal, luego enviará el correo usando la función php mail().

| tee /path/to/tmp/file | /path/to/script.php | /path/to/another.php

Por cierto, nunca he usado ese enfoque ni sé si es posible, pero parece que sí.la respuesta de canpodría funcionar conmacros de línea de comandos, es una mejor solución, así que si funciona, responda aquí y díganos cómo.

Respuesta2

Lo siento, pero a menos que el script esté diseñado para funcionar correctamente, no sabrá cómo responder automáticamente solo porque estás canalizando datos.

Si no puede cambiar el script, tal vez necesite escribir otro script de interfaz de usuario que capture el resultado y haga lo que necesita.

Respuesta3

Podrías modificar tu configuración de correo. Debería estar en la línea de

<run your php file with arguments> | sendmail <arguments>

Es difícil ser específico sin conocer su configuración.

información relacionada