Поддержка Проблемы и решения Выборка записей в бд

  • Добрый день.

    Хотелось бы выводить на странице определённые данные, которые не относятся к WordPress, но имеют свои записи в таблице БД WordPress. Реализуя это, столкнулся с некоторыми сложностями.

    Вот как бы выглядел код на php, без WordPress:

    -//--//--подключаемся к MySql и т.д. и ниже сам кусок нужного кода--//--//
    $result=mysql_query('SELECT * FROM <code>sound</code>');
    while($row=mysql_fetch_array($result))
    { echo 'Text '.$row['sound_nc'].'; Text '.$row['sound_name'].';
    }

    Мы подключились к базе денных, сделали выборку по таблице «sound», прихватили все данные оттуда, а дальше просто выводим нужные. Это работает. Но мы же используем WordPress, где есть wpdb. А тут возникли сложности. Я переписал код и вот что получилось:

    $result = $wpdb->query('SELECT * FROM $wpdb->sound');
    while($row=mysql_fetch_array($result))
    { echo 'Text '.$row['sound_nc'].'; Text '.$row['sound_name'].';
    }

    Дальше второй строчки код не выполняется. Ошибка:»Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in «путь_до_файла» on line 110″
    В 110 строке «while($row=mysql_fetch_array($result))»

    Как правильно изменить код для работы через wpdb?

Просмотр 6 ответов — с 1 по 6 (всего 6)
  • В первом примере код, немножко неправильно вывелся текст.

    $result=mysql_query(‘SELECT * FROM sound‘);

    Так правильно.

    И опять не правильно, в общем там стоят кавычки у sound, но этими кавычками здесь на сайте обозначается «code», поэтому кавычки парсер выкидывает и вставляет теги code.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Попробуйте так:

    global $wpdb;
    $result = $wpdb->get_results('SELECT * FROM sound', ARRAY_A);
    foreach ( (array) $result as $row ) {
    	echo 'Text ' . $row['sound_nc'] . '; Text ' . $row['sound_name'];
    }

    Спасибо, но к сожалению, ничего не выводится.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Я сначала написал $wpdb->sound, потом исправил на sound, т.к. она не относится к стандартным таблицам WordPress. Вы проверяли уже с sound?

    С sound, не проверял.

    Проверил. Всё заработало. Огромное спасибо!

Просмотр 6 ответов — с 1 по 6 (всего 6)
  • Тема «Выборка записей в бд» закрыта для новых ответов.