ФорумСообществоФлейм → Меня преследует border=0 )))

Меня преследует border=0 )))

  • Jane

    Сообщения: 363 Репутация: N Группа: Адекваты

    Spritz Сен. 3, 2016, 1 д.п.

    И снова здрасьте :))

    Столкнулась с такой проблемкой:
    При добавлении\редактировании записей в БД через админку в локальной версии сайта - всё добавляется как есть (т.е. код добавляется именно так, как прописан в поле редактора).
    А вот при добавлении той же записи на реальном сайте - везде к img добавляется тег border="0". У меня это и так прописано в css и это дублирование мне ни к чему.
    Перепробовала уже целую пачку редакторов (думала проблема в них), в настройках ставила запрет на изменение кода, однако именно код картинок всегда редактируется (и только на реальном сайте) в момент отправления или добавления в БД.

    Появилось подозрение, что это что-то там на сервере хостинга не так настроено. Есть доступ к некоторым настройкам php:

    Пыталась найти описания этих опций и расширений, но ничего понятного не нашла :)) По крайней мере на русском. А с английским я пока дружу на уровне: "Hello, my name is.." =))

    Есть ли в этих настройках что-то, что так упорно вмешивается в мой код? Или я не там копаю?
    Все файлы и настройки самого движка в обоих версиях сайта одинаковые.

  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz Сен. 3, 2016, 1:07 д.п., спустя 7 минут 15 секунд

    @Jane, на продакшене в базе после сохранения у тегов img есть border="0" или же border="0" у img появляется только при выводе во вьюхе?

    в первом случае нужно копать в сторону методов сохранения в коде, во втором - смотреть что код добавляет при выводе, возможно какой-то конфиг на продакшне отличный от локалки

  • Jane

    Сообщения: 363 Репутация: N Группа: Адекваты

    Spritz Сен. 3, 2016, 2:04 д.п., спустя 56 минут 19 секунд

    @Sinkler, я даже код редакторов пыталась просмотреть и поправить, грешила на них сперва. Но т.к. код движка сайта до запятой одинаковый и в локальной версии и в реальной, то это должно было в локальной тоже случаться. Но проблема только на хостинге.
    В момент отправки в базу вместе с тем кодом, что я отправляю, добавляется этот border="0" ко всем img в коде отправляемой записи.
    И что примечательно, смена редактора в админке не помогает (т.е. в локальной версии всё как нужно, а на хостинге этот border...)

  • Nek

    Сообщения: 109 Репутация: N Группа: Адекваты

    Spritz Сен. 3, 2016, 9:48 д.п., спустя 7 часов 44 минуты 51 секунду

    о т.к. код движка сайта до запятой одинаковый и в локальной версии и в реальной, то это должно было в локальной тоже случаться.

    @Jane, не факт. На продакшене и на тесте к приложению могут применяться разные конфиги.

    момент отправки в базу вместе с тем кодом, что я отправляю, добавляется этот border="0" ко всем img в коде отправляемой записи

    Правильно я понимаю, что вы перед сохранением контента делаете var_dump.. - там все ок, а сразу после сохранения в записи в бд уже модифицированный контент (причем проверяете последнее через средства работы с бд, а не через странички самого приложения)?

    И уточните пожалуйста, какая СУБД используется на продакшене и тесте.

    Пыталась найти описания этих опций и расширений, но ничего понятного не нашла

    Многое есть тут PHP: Список директив php.ini - Manual [php.net]
    Но вряд ли дело в этом.

  • Jane

    Сообщения: 363 Репутация: N Группа: Адекваты

    Spritz Сен. 3, 2016, 10:44 д.п., спустя 55 минут 15 секунд

    Правильно я понимаю, что вы перед сохранением контента делаете var_dump.. - там все ок, а сразу после сохранения в записи в бд уже модифицированный контент (причем проверяете последнее через средства работы с бд, а не через странички самого приложения)?

    @Nek, да и var_dump и print_r записи, что отправляется в БД делала для теста - там ничего лишнего. Но если сразу после этого посмотреть содержимое БД - там появляется этот border ...

    Тип сервера: MySQL
    Версия сервера: 5.6.31-log - MySQL Community Server (GPL)
    Версия протокола: 10

  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz Сен. 3, 2016, 1:06 п.п., спустя 2 часа 22 минуты 36 секунд

    ну как вариант есть какой-то процесс на сервере, в кроне например, который чистит добавляемые записи, он и делает это

    а что за cms?

  • Nek

    Сообщения: 109 Репутация: N Группа: Адекваты

    Spritz Сен. 3, 2016, 3:34 п.п., спустя 2 часа 28 минут 3 секунды

    @Jane, а если sql запросом (через ваше средство работы с бд, не через веб-приложение) добавить запись в табличку - тоже будет модифицироваться поле?
    Если да, то либо триггер в бд, либо см. предыдущий ответ @Sinkler.
    Если нет, то как вариант данные правятся до отправки в бд на уровне веб-приложения (будет видно по sql логу). Тогда надо смотреть код и конфиги приложения, т.к. где-то есть различие между локальной и продакшн версией.

  • Jane

    Сообщения: 363 Репутация: N Группа: Адекваты

    Spritz Сен. 3, 2016, 6:05 п.п., спустя 2 часа 30 минут 25 секунд

    а что за cms?

    @Sinkler, cms самописная, потому я уверена, что дело не в ней )) я таких условий там не прописывала.
    Да и опять же: в локальной версии ничего не заменяется, только на хостинге, a файлы cms и там и тут одинаковые, и расположены одинаково, т.е., если бы дело было в них - ошибка была бы локальной тоже и её было бы легче найти.

    @Jane, а если sql запросом (через ваше средство работы с бд, не через веб-приложение) добавить запись в табличку - тоже будет модифицироваться поле?

    @Nek, сейчас для теста в самой БД просто взяла отредактировала конкретную запись - всё сохранилось без проблем. Т.е. дело получается не в БД?
    ну это был правда не запрос, а непосредственное редактирование конкретной ячейки таблицы.

    Тогда надо смотреть код и конфиги приложения, т.к. где-то есть различие между локальной и продакшн версией.

    @Nek, повторюсь: отличий в версиях нет. Любое изменение, сделанное локально, после проверки во всех браузерах - сразу мной заливается на хостинг. К тому же на днях как раз была полная перезаливка всех файлов - т.е. тут уже 100% соответствие.

  • Nek

    Сообщения: 109 Репутация: N Группа: Адекваты

    Spritz Сен. 3, 2016, 9:21 п.п., спустя 3 часа 16 минут 19 секунд

    @Nek, сейчас для теста в самой БД просто взяла отредактировала конкретную запись - всё сохранилось без проблем. Т.е. дело получается не в БД?

    В бд может быть триггер на инсерт, но не на апдейт. Попробуйте sql запросом именно заинсертить запись - и посмотрите, будет ли модифицироваться контент (ну и вообще повторить тот запрос, который у вас в приложении вардампится). Если не будет, значит скорее всего контент модифицируется на уровне приложения, до запроса в базу (или как писал Sinkler каким-нибудь левым процессом на сервере). Для верности можно включить логирование запросов и посмотреть, какие запросы приходят - "нормальные", или с уже модифицированным контентом.
    И еще. Как происходит общение с бд? Просто через mysql(i)_query, или есть ORM типа Doctrine?

    @Nek, повторюсь: отличий в версиях нет.

    Поясню: почти во всех фреймворках/cms можно сделать так, чтобы на тестовой версии менялся или примешивался другой конфиг. Как определяется тестовая верисия - дело десятое (по домену, по наличию опред. файла-индикатора и т.п.). Смысл в том, что версии с разными конфигами могут вести себя по-разному, а кодовая база у них будет одинаковая, отличий в версиях нет, а в поведении - есть.

  • Jane

    Сообщения: 363 Репутация: N Группа: Адекваты

    Spritz Сен. 3, 2016, 10:07 п.п., спустя 45 минут 39 секунд

    В бд может быть триггер на инсерт, но не на апдейт.

    @Nek, я инсерт даже не тестировала, я пытаюсь пересохранить старые записи, в которые этот border влез, но единственный способ это сделать на хостинге - это руками каждую запись в БД править.. а это как-то не очень

    Как происходит общение с бд? Просто через mysql(i)_query,

    @Nek, только так, я не очень дружу с php, по сути я новичок в этом. Про ORM даже не в курсе, что это и с чем его едят

    почти во всех фреймворках/cms можно сделать так, чтобы на тестовой версии менялся или примешивался другой конфиг

    @Nek, фишка в том, что весь код полностью мной написан, это не чья-то cms... Я по мере пополнения знаний модифицирую и улучшаю его.
    На хостинге и на локальном компе стоят одинаковые версии php и mysql
    а вот их настройки.. дома стоит то, что по умолчанию досталось с денвером - я не настраивала сама, на хостинге - то, что выдал хостер, плюс есть небольшой доступ к настройкам (скрины в 1м сообщении).

    Из всего этого вопрос: каким макаром к мои файлам, в которых нет дополнительного кода, примешивается другой конфиг? откуда он мог взяться? я просто не знаю, где искать это

  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz Сен. 4, 2016, 12:10 д.п., спустя 2 часа 3 минуты 30 секунд

    Вот жопой чую, что сервер тут непричем и дело в визуальном редакторе. ))))

  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz Сен. 4, 2016, 12:14 д.п., спустя 3 минуты 43 секунды

    ну да, скорее всего просто отдебажено не в том месте или не то, вот и ложное ощущение, что редактор не виноват

    Спустя 69 сек.

    в самописном пхп-коде хтмл просто так не изменяется smile

  • Jane

    Сообщения: 363 Репутация: N Группа: Адекваты

    Spritz Сен. 4, 2016, 12:45 д.п., спустя 31 минуту 32 секунды

    Вот жопой чую, что сервер тут непричем и дело в визуальном редакторе. ))))

    @AlexB, я на него в 1ю очередь и подумала как наиболее очевидное, пробовала влезть внутрь во все файлы, искала там все места, где хоть как-то фигурирует border, убирала эти строки, чтобы проверить, что будет
    так же пробовала вместо старого другие редакторы подключать, как итог наблюдала следующее:
    1. в локальной версии все эти редакторы передают код должны образом без добавок, проблема только на хостинге
    2. пробовала вместо отправки данных в базу выводить результат на текущую страницу при помощи print_r и как выше советовали var_dump, чтобы проверить, а что именно редактор пытается отправить в базу
    проверку проводила на хостинге и на локальной версии - в данном случае редактор отправляет текст без добавок
    добавка появляется только при внесении изменений в запись в БД

    Может я что-то упускаю, конечно, из виду. Но не знаю, где копать. Была бы проблема и там и там - дальше ковыряла бы редактор.

  • Jane

    Сообщения: 363 Репутация: N Группа: Адекваты

    Spritz Сен. 4, 2016, 12:57 д.п., спустя 11 минут 22 секунды

    оо! корень проблемы найден )))) Правда пока не понятна причина этого:
    Все записи в базе кроме той, которую я как раз редактировала - из админки редактируются на ура
    и только одна не передаёт в базу данные при отправке... пойду искать, почему это случилось

    По крайней мере точно дело не в редакторах, хотя при одинаковом коде админки для всех записей, непонятно, почему блокируется только одна из середины таблицы в базе..
    сейчас даже ещё раз для верности перезалила файлы, не помогло.

    Всем спасибо за участие :))

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Сен. 4, 2016, 1:39 д.п., спустя 41 минуту 42 секунды

    mysql_real_escape_string изучаем

    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!