Lewik
Новичок
Есть старый (очень) сайт, написанный на php. Он в 1251 весь, включая базу. Остальные ужасы я опущу.
Было задание - допилить к нему функционал (модуль)
Я прикрутил модуль на симфе.
Трогать старый сайт разрешено только в самой легкой форме. Это надо пришлось принять как аксиому. UPD: перекодировать тоже нельзя
При этом корежить саму симфу особого желания нет.
Слать из старого сайта некий запрос новому - я отказался, иногда требуется срочно воспользоваться кодом старого сайта, прибив его гвоздями в симу. Ненадолго. Поэтому в определенном месте старого сайта нечто вроде app.php, которое понятно что делает.
Проблема с кодировкой бд решилась слушателем на postConnect, который шлет SET NAMES 'UTF-8'
Проблема исходящей инфы решилась аналогичным слушателем ну вы поняли...
Проблема входящей инфы:
Сначала был сделан DataTransformer, который перекодирует все данные на вход. Но оказалось, что данные транформируются перед валидацией и в случае невалидности - перекодировка "отменяется".
Теперь сделана абстрактная форма, которая вешает на PRE_SUBMIT перекодировку и невалидность уже не сбрасывает перекоденное.
Я вот чую что это дикий вило-сипед и что данные можно перекодивать как то по удобному.
Еще была идея перекодивать глобалсы реквеста, но в начале мы не въехали как его менять. Вероятно это будет следующим шагом.
Может у вас есть нормальная идея как совладать с кодировкой? ... да и не только с кодировкой =)
Было задание - допилить к нему функционал (модуль)
Я прикрутил модуль на симфе.
Трогать старый сайт разрешено только в самой легкой форме. Это надо пришлось принять как аксиому. UPD: перекодировать тоже нельзя
При этом корежить саму симфу особого желания нет.
Слать из старого сайта некий запрос новому - я отказался, иногда требуется срочно воспользоваться кодом старого сайта, прибив его гвоздями в симу. Ненадолго. Поэтому в определенном месте старого сайта нечто вроде app.php, которое понятно что делает.
Проблема с кодировкой бд решилась слушателем на postConnect, который шлет SET NAMES 'UTF-8'
Проблема исходящей инфы решилась аналогичным слушателем ну вы поняли...
Проблема входящей инфы:
Сначала был сделан DataTransformer, который перекодирует все данные на вход. Но оказалось, что данные транформируются перед валидацией и в случае невалидности - перекодировка "отменяется".
Теперь сделана абстрактная форма, которая вешает на PRE_SUBMIT перекодировку и невалидность уже не сбрасывает перекоденное.
Я вот чую что это дикий вило-сипед и что данные можно перекодивать как то по удобному.
Еще была идея перекодивать глобалсы реквеста, но в начале мы не въехали как его менять. Вероятно это будет следующим шагом.
Может у вас есть нормальная идея как совладать с кодировкой? ... да и не только с кодировкой =)
Последнее редактирование: