RedBeanPHP fetchВсе возвращается только одна строка

Я делаю вызов в базу данных, чтобы получить некоторые данные. Я пробовал запрос в SQL, и он отлично работает. Я закодировал запрос с помощью PDO, и он отлично работает. Но использование RedBeanPHP с тем же запросом возвращает только один результат.

$app->get('/shoutbox/new/:msgid', function ($msgid) use ($app) {
$messages = R::findAll('shoutbox_message', ' WHERE message_id > ? LIMIT 10', array($msgid));
$app->response()->header('Content-Type', 'application/json');
var_dump($messages);
echo json_encode(R::exportAll($messages));
});

я использовал var_dump($messages) чтобы убедиться, что возвращается только одно сообщение.

Я нашел подобную проблему здесь, но ОП решил ее, не объяснив, как: SQL-запрос с использованием RedBeans PHP

Любой совет?

0

Решение

Ты используешь R::findAll который используется, когда вы не хотите добавлять какие-либо условия. Однако в вашем запросе есть условие WHERE. Вы хотите использовать R::find метод вместо.

Я не уверен, какое значение передается в параметре $ msgid или что должны содержать полученные $ сообщения, но запрос будет выглядеть следующим образом.

$messages = R::find('shoutbox_message', ' message_id = ? LIMIT 10', array($msgid) );

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]