Перейти к публикации

Как вытащить текст из базы данных


Рекомендованные сообщения

Не работал никогда с запросами к базам, вот настало время учиться.

Знаю что решение в 2-3 строки, но убил уже 3 часа времени и не решил задачу.

Задача, вытащить из таблицы dle_static, с именем строки about, содержимое ячейки template (текст статической страницы, точнее все что хранится в ячейке включая и теги).

Вот и все, такой простой запрос, над которым я сломал голову.

Додумал только вот это:

$zaprosdb = $db->query("SELECT template FROM " . PREFIX . "_static where name='about'");

Среди десятка команд обработки результата немогу найти подходящую (описания слишком поверхностные).

Остается только ждать пока кто-нить заглянет в тему.

Ссылка на сообщение
Поделиться на других сайтах

Если ты используешь класс для работы с БД от DLE, то следующие действия:

Чтобы вытащить 1 строку:

$row = $db->super_query('SELECT template FROM '.PREFIX.'_static WHERE name="about"');
на выходе получается ассоциативный массив, где в качестве ключей имена запрашиваемых полей, а в качестве значений массива - значения этих полей. Так, например для запроса выше значение поля template можно найти в $row['template']; Теперь многостроковый запрос, это когда мы получаем в ответ целый список данных, например 10 последних новостей. Есть 2 пути решения этого вопроса. 1.
$db->query('SELECT id, title FROM news WHERE approve = 1 ORDER BY id DESC LIMIT 10');

while($row = $db->get_row())

{

	echo $row['title']; // печатает заголовок новости

}
Здесь у нас получается цикл, который будет столько раз "прокручиваться", сколько длина получаемого списка) 2.
$rows = $db->super_query('SELECT id, title FROM news WHERE approve = 1 ORDER BY id DESC LINIT 10', true);

На выходе у нас - многомерный ассоциативный массив, который похож на наш самый первый)) С ним можно делать иногда удобные вещи.

Удачи!

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...