Y cuál es el mensaje de error que recibes?
La causa más común de que no se cree el archivo es que la ruta no sea correcta; como estás usando ruta relativa, esta queda en función del script que se ejecuta al iniciar la petición y no de la ubucación de funciones.php
Ejemplo:
- index.php -> Es el script ejecutado en un principio
- includes -> Carpeta
------- funciones.php
- mensajes -> Carpeta
------- fichero_mensaje.txt
Si tu estructura es más o menos así, entonces a la ruta usada en fopen() le sobran los primeros 3 caracteres:
../ Heli0s, yo supuse que quitó el resto de código para mostrar solo la parte "donde está el error", pero ya veremos que nos dice.