Я думаю, что ваша проблема лежит в fopen и fwrite, которые вы используете.
fopen ("$dateposted.txt","w")
создаст вам файл с именем $ dateposted.txt. Я думаю, что вы скорее хотите fopen($dateposted."txt","w")
.
Поскольку файл не создан, я бы проверил права доступа к папке назначения и изменил бы их, если пользователь, который запускает скрипт, например, apache на linux, не может писать туда. Или установите полный путь назначения, чтобы убедиться, что файл сохранен в правильном назначении.
Еще одна вещь, касающаяся fwrite. Из того, что я знаю, fwrite принимает 2 параметра. Файл и строка. Третий возможный параметр - максимальная длина добавляемых байтов. В вашем случае я бы назвал fwrite один раз для заголовка и один раз для сообщения. Кроме того, конкатенация строк в fwrite выглядит неправильно для меня, так как я предполагаю, что объединенная строка должна находиться в файле, который вам нужно написать, например fwrite($fp, $title.' ');