Нужно местами поменять $pattern и $text
Также советую использовать .+? вместо .+, т.к. в противном случае регулярка будет искать последнее вхождение в строке.
При обработке второй формы, вы получите этот id и будет ясно какую запись нужно обновить.
Стоит учитывать что пользователь может подменить id и тогда обновятся другие записи. Чтобы избежать такого, можно использовать сессии или как то шифровать значение.
Исходя из вопроса и содержимого, данный код очень похож на вредоносный.
Действительно, бывают файлы зашифрованные через кодировщик IonCube и они похожи на фрагмент из вопроса.
Однако, это скорее всего левак, т.к. ранее таких файлов не было и меня очень смущает наличие в коде eval($__ln);