Помощь ICQ field

Тема в разделе "DLE", создана пользователем lolfika, 28 апр 2013.

Информация :
Актуальная версия DataLife Engine 12.0
( Final Release v.12.0 | Скачать DataLife Engine | Скачать 12.0 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.3 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Статус темы:
Закрыта.
Модераторы: killoff
  1. lolfika

    lolfika Постоялец

    Заблокирован
    Регистр.:
    18 окт 2011
    Сообщения:
    43
    Симпатии:
    0
    привет всем
    как сделаь так чтоб на ДЛЕ 9.4 в поле ICQ сохронялис буквы и цифри
    а то только сохроняет цифри
     
  2. Горбушка

    Горбушка Ищу её...

    Регистр.:
    2 май 2008
    Сообщения:
    3.199
    Симпатии:
    2.221
    Настоятельно рекомендую отказаться от этой глупой затеи.

    Поле ICQ может содержать только цифры потому, что номер ICQ - это только цифры. Следовательно, букв там быть не может по определению.
    В целях безопасности и защиты от лишнего СПАМ'а, DLE запрещает вносить символы в поля, которых в них заведомо быть не должно.

    Если Вы всё же хотите рискнуть безопасностью, можете в файле /engine/modules/profile.php найти строку:
    PHP:
    $icq intvalstr_replace("-"""$_POST['icq'] ) );
    И заменить на:
    PHP:
    $icq $_POST['icq'];
    Однако обращаю Ваше внимание, что это откроет SQL-уязвимость сайта, т.к. изначально предполагается, что там будет цифра и отсутствуют дополнительные проверки. Снимая функцию intval Вы автоматически разрешите вставлять в строку спец-символы, что является крайне опасным для Вашего сайта.

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

    Так же предупреждаю, что добавление текстовых значений в данное поле может повлечь за собой ошибки в базе данных, а так же некорректную работу целого ряда модулей и компонентов как встроенных в DLE, так и сторонних разработчиков.
     
  3. lolfika

    lolfika Постоялец

    Заблокирован
    Регистр.:
    18 окт 2011
    Сообщения:
    43
    Симпатии:
    0
    что делоть тогда?
    я хочу изменить поле ICQ как поле skype
    может как-то можно добавить новое поле?
     
  4. killoff

    killoff CD тихо, и не DVD меня ;)

    Moderator
    Регистр.:
    13 май 2008
    Сообщения:
    2.229
    Симпатии:
    825
    /admin.php?mod=userfields&xfieldsaction=configure - добавляешь новое поле и уже потом добавляешь его вывод в профиле на сайте...
     
  5. invader

    invader Серый кардинал в отставке :)

    Moderator
    • Супермодератор
    Регистр.:
    3 апр 2006
    Сообщения:
    2.585
    Симпатии:
    5.725
    Код:
    $icq = htmlspecialchars(trim($_POST['icq']));
     
Статус темы:
Закрыта.