За последние 24 часа нас посетили 19418 программистов и 1610 роботов. Сейчас ищут 1033 программиста ...

Как безопасно сохранить сложный текст в базе?

Тема в разделе "PHP и базы данных", создана пользователем fce, 10 май 2011.

  1. fce

    fce Активный пользователь

    С нами с:
    10 май 2011
    Сообщения:
    2
    Симпатии:
    0
    Добрый день.
    У меня вот такой вопрос.
    Надо в MYSQL-базе сохранять текст из формы textarea , по сути это регулярные выражения, такого вида

    Код (Text):
    1.  
    2. # Google, Go etc. - remove 'safe=...'
    3. #"(^http://[0-9a-z]+\.google\.[a-z]+[-/%.0-9a-z]*/images\?)(.*)(&?)(safe=[^&]*)"->"\1\2\3"
    4. # ... and add 'safe=vss'
    5. #"(^http://[0-9a-z]+\.google\.[a-z]+[-/%.0-9a-z]*/images\?)"->"\1safe=vss&"
    6.  
    7. # Singingfish - remove 'ff=...' and add 'ff=1'
    8. #"(^http://search\.singingfish\.com/[-/%.0-9a-z]*\?)(.*)(&?)(ff=[^&]*)"->"\1\2\3"
    9.  
    10. #"(^http://search\.singingfish\.com/[-/%.0-9a-z]*\?)"->"\1ff=1&"
    11.  
    12. # Ilse - remove 'family=...' and add 'family=yes'
    13. #"(^http://www\.ilse\.nl/searchresults\.dbl\?)(.*)(&?)(family=[^&]*)"->"\1\2\3"
    14. #"(^http://www\.ilse\.nl/searchresults\.dbl\?)"->"\1family=yes&"
    15.  
    16. # KEL - remove 'Realm%3AErotiek=...'
    17. #"(^http://www\.kel\.nl/search/search.cgi\?)(.*)(&?)(Realm%3AErotiek=[^&]*)"->"\1\2\3"
    18.  
    19. # Lycos.com - family filter only available in advanced mode.
    20. # Remove 'adv=...' and 'adf=...' and add 'adv=1&adf=on'
    21. #"(^http://[^/]*search[^/]*\.lycos\.com/[-/%.0-9a-z]*\?)(.*)(&?)(adv=[^&]*)"->"\1\2\3"
    22. #"(^http://[^/]*search[^/]*\.lycos\.com/[-/%.0-9a-z]*\?)(.*)(&?)(xadult\.)(.*)(xadult\.)"->"\1\2\3\5"
    23. #"(^http://[^/]*search[^/]*\.lycos\.com/[-/%.0-9a-z]*\?)"->"\1adv=1&adf=on&"
    Как наиболее безопасно его обработать перед помещением в базу, и какой тип данных выбрать для поля, хранящего этот текст при условии, что строк где-то около 1000.

    Этот текст потом будет выводиться другим скриптом в текстовые конфиги и на изменение в форму.
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    real_escape
     
  3. fce

    fce Активный пользователь

    С нами с:
    10 май 2011
    Сообщения:
    2
    Симпатии:
    0
    Имеется ввиду mysql_real_escape_string?
    она не экранирует символы % и _

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

    igordata, спасибо.
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    fce
    она не экранирует символы % и _
    зачем их экранировать, если они в кавычках будут?
    а подчеркивание зачем экранировать?