Перейти к содержанию

Проблема с запросом SQL


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

Всем привет, пишу пополнение счета на форуме с использованием Robokassa и столкнулся с проблемой, запрос правильный а работать не хочет как не пинай. В базе все возвращает а вот вардамп ROW NULL

Сам запрос.

\IPS\Db::i()->Select("r.order_id, r.userid, r.money, r.status, r.date, r.crc, r.status1, m.member_id", array( "rkassa", "r" ), array("r.order_id = 1485120238"), NULL, 1)->join(array( 'core_members', 'm' ), array( 'r.userid = m.member_id' ));

 

Спойлер

Безымянный.png

 

Спойлер

Безымянный1.png

 

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

1 минуту назад, Silence сказал:

А что ета 'r.' ....?

Обозначение к какой таблице относится то или иное поле, в данном случае мы берем из rkassa и присваиваем поля к букве r поле берем от туда order_id а из core_members берем member_id затем ON сравнение есть ли соответствие userid == member_id и выводим результат по WHERE order_id = значение. Если есть то выводим ответ. В данном случае в самой базе запрос работает а вот форум выполнять это не хочет.

Почитай по JOIN sql запросы))

Проще так показать

10 минут назад, Silence сказал:

А что ета 'r.' ....?

 

Спойлер

Безымянный.png

 

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

\IPS\Db::i()->select( '*', "r.order_id, r.userid, r.money, r.status, r.date, r.crc, r.status1, m.member_id", array( "rkassa", "r" ), array("r.order_id = 1485120238"), NULL, 1)->join(array( 'core_members', 'm' ), array( 'r.userid = m.member_id' ));

 

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

2 минуты назад, Silence сказал:

\IPS\Db::i()->select( '*', "r.order_id, r.userid, r.money, r.status, r.date, r.crc, r.status1, m.member_id", array( "rkassa", "r" ), array("r.order_id = 1485120238"), NULL, 1)->join(array( 'core_members', 'm' ), array( 'r.userid = m.member_id' ));

 

Нее :D

SELECT r.* FROM `m.member_id` LEFT JOIN `core_members` AS `m` ON r.userid = m.member_id WHERE rkassa GROUP BY `1` ORDER BY r.order_id = 1485120238
3 минуты назад, Silence сказал:

\IPS\Db::i()->select( '*', "r.order_id, r.userid, r.money, r.status, r.date, r.crc, r.status1, m.member_id", array( "rkassa", "r" ), array("r.order_id = 1485120238"), NULL, 1)->join(array( 'core_members', 'm' ), array( 'r.userid = m.member_id' ));

 

SELECT r.*, m.* FROM `rkassa` AS `r` LEFT JOIN `core_members` AS `m` ON r.userid = m.member_id WHERE r.order_id = 1485120238 LIMIT 1 
Спойлер

Безымянный.png

1 sql запрос идёт сразу в 2 таблицы.  rkassa и core_members, и выводит информацию сразу из 2 таблиц, поэтому я приписываю к r. определенное поле тоесть указав r.* и m.* он покажет мне все результаты с двух таблиц а я вытаскиваю только мне нужные.

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

Сам решил :D

$query = \IPS\Db::i()->query("SELECT r.order_id, r.userid, r.money, r.status, r.date, r.crc, r.status1, m.member_id FROM `rkassa` AS `r` LEFT JOIN `core_members` AS `m` ON r.userid = m.member_id WHERE r.order_id = 1485120238 LIMIT 1");
$query = $query->fetch_assoc();
var_dump($query);

 

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

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

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

Гость
Ответить в этой теме...

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

  Разрешено использовать не более 75 эмодзи.

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

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

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

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...