Mysql_query - Обработка Переносов На Новую Строчку

Тема в разделе "PHP программирование", создана пользователем EmptyR, 6 сен 2012.

  1. EmptyR

    EmptyR Веб мастер

    Регистрация:
    6 окт 2010
    Сообщения:
    221
    Симпатии:
    0
    Не врубаюсь... Есть в движке CMS osCommerce 2.3.2 такой глюк - не выводятся описания товаров корректно. Точнее, что происходит. Данные в MySQL базе хранятся нормальные. В таком вот виде:
    Код (Text):
    Первая строка
    Вторая строка
    Третья строка
    Но osCommerce не хочет выводить его так же читабельно, "заглатывая" переносы на новую строку. Я начал разбираться почему. Выяснил, что всему виной функция tep_db_query, которая лежит в файле /includes/functions/database.php. Вот что там написано:

    Код (Text):
    function tep_db_query($query, $link = 'db_link') {
    global $$link;

    if (defined('STORE_DB_TRANSACTIONS') && (STORE_DB_TRANSACTIONS == 'true')) {
    error_log('QUERY ' . $query . "\n", 3, STORE_PAGE_PARSE_TIME_LOG);
    }

    $result = mysql_query($query, $$link) or tep_db_error($query, mysql_errno(), mysql_error());

    if (defined('STORE_DB_TRANSACTIONS') && (STORE_DB_TRANSACTIONS == 'true')) {
    $result_error = mysql_error();
    error_log('RESULT ' . $result . ' ' . $result_error . "\n", 3, STORE_PAGE_PARSE_TIME_LOG);
    }

    return $result;
    }
    Понимаю, что всему дело в строке с mysql_query. И логично. Ибо надо бы всё хранить с <br> вместо переносов на новую строку, это же HTML, блин. :(

    Т.е., по правильному бы так:
    Код (Text):
    Первая строка<br>
    Вторая строка<br>
    Третья строка
    Можно ли как то обойти этот косяк в моём случае? Как добавлять автоматически эти несчастные <br>, или может как-то по другому делать запрос?
     
  2. EmptyR

    EmptyR Веб мастер

    Регистрация:
    6 окт 2010
    Сообщения:
    221
    Симпатии:
    0
    Я врубился! :() Слава Богу! :() Так, короче, там где у меня выдавался уже результат выполнения запроса данных из базы (а это файл /product_info.php) - я просто предварительно окружил вывод функцией nl2br.
    Было:
    Код (Text):
    <?php echo stripslashes($product_info['products_description']); ?>
    Стало:
    Код (Text):
    <?php echo stripslashes(nl2br($product_info['products_description'])); ?>
    Это если кто тоже столкнётся с этой проблемой. ;)
     
Загрузка...
Похожие Темы - Mysql_query Обработка Переносов
  1. kolka
    Ответов:
    6
    Просмотров:
    253
  2. anna
    Ответов:
    9
    Просмотров:
    884
  3. FaRReLL
    Ответов:
    0
    Просмотров:
    868
  4. crow1986
    Ответов:
    8
    Просмотров:
    1.874
  5. Dazzel
    Ответов:
    1
    Просмотров:
    948

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