Joomla 1.5 Обновление данных в таблице #__content (joomla 1.59) Не могу изменить данные в ячейке fulltext

Тема в разделе "Программирование", создана пользователем ProrokIV, 28.10.2010.

  1. Offline

    ProrokIV Недавно здесь

    Регистрация:
    28.10.2010
    Сообщения:
    3
    Симпатии:
    0
    Пол:
    Мужской
    При добавление статьи через admin панель joomla 1.59 вступительная часть материала (до разделителя readmore) сохраняется втаблицу #__content в ячейку introtext, остальная часть сохраняется в ячейку fulltext.
    Задача:
    Средствами php очистить содержимое ячейки fulltext. То есть, требуется обновить данные при помощи запроса UPDATE.
    На первый взгляд вопрос тянет на уровень детского сада, но по факту обновить (очистить\добавить) данные удается в любой ячейке таблицы кроме fulltext.

    Следующий код выдает ошибку ($result = false)

    Код (PHP):
    1. $sql = ("UPDATE #__content SET
    2. title = 'title', alias = 'alias', introtext = 'introtext', fulltext = 'fulltext', state = 'state' ...  WHERE id = '1'");
    3. $result = $db->setQuery( $sql);


    Если исключить fulltext = 'fulltext', обновление проходит успешно.
    Помогите! google от меня устал!
     
  2.  
  3. sergiks
    Offline

    sergiks специалист

    Регистрация:
    10.10.2010
    Сообщения:
    362
    Симпатии:
    36
    Пол:
    Мужской
    Надо почистить вошек:
    Код (CODE):
    1. $sql = ("UPDATE #__content SET
    2. title = 'title', alias = 'alias', introtext = '".$db->getEscaped($introtext)."', fulltext = '".$db->getEscaped($fulltext)."', state = 'state' ...  WHERE id = '1'");

    Там всякие апострофы могли быть в fulltext'е, как и в introtext'е.
     
  4. Offline

    ProrokIV Недавно здесь

    Регистрация:
    28.10.2010
    Сообщения:
    3
    Симпатии:
    0
    Пол:
    Мужской
    В примере кода я пытаюсь записать именно текст - fulltext, это не переменная, так же не удается записать цифровые данные хотя бы тот же - 0
     
  5. sergiks
    Offline

    sergiks специалист

    Регистрация:
    10.10.2010
    Сообщения:
    362
    Симпатии:
    36
    Пол:
    Мужской
    Ха, прикольно! Попробовал - та же фигня.
    Дело в том, что слово fulltext — это еще и зарезервированное слово в MySQL.
    Чтобы показать, что это имя колонки, надо ее заключить в обратные одинарные кавычки:
    Код (CODE):
    1. UPDATE jos_content
    2. SET `fulltext`='abcd'
    3. WHERE id=1
     
    ProrokIV нравится это.
  6. Offline

    ProrokIV Недавно здесь

    Регистрация:
    28.10.2010
    Сообщения:
    3
    Симпатии:
    0
    Пол:
    Мужской
    sergiks огромное тебе человеческое спасибо!!! Я уже было впал в отчаянье.. Теперь все работает )
     

Поделиться этой страницей

Загрузка...