Для правильного вопроса надо знать половину ответа
Если данные в строке не менялись, то MySQL не обновляет строку и не пересчитывает индексы, так что стандартный UPDATE трёх ваших колонок - это лучшее решение.
Для правильного вопроса надо знать половину ответа
Так вы же сами процитировали:
Функции не обязаны быть определены до их использования, исключая тот случай, когда функции определяются условно, как это показано в двух последующих примерах.
Это именно ваш случай, функции определяются в блоке if, а значит должны быть определены до вызова.
Для правильного вопроса надо знать половину ответа
nl2br() не удаляет символы конца строк \r и \n, а только добавляет после них.
А при использовании preg_replace переносы строк исчезают потому, что вы сами их удаляете.
И в HTML тэг br не надо закрывать, он пишется просто <br>
Для правильного вопроса надо знать половину ответа
Значение $_SERVER['REMOTE_USER'] устанавливается Web-сервером по результатам аутентификации пользователя. Соответственно, передать это поле снаружи невозможно.