Я пытаюсь сделать разбиение на страницы, но есть ошибка:
[Синтаксическая ошибка] строка 0, col 57: Ошибка: ожидаемый конец строки, получился "limit"
Я не совсем уверен, что это правильный синтаксис (и логика), чтобы сделать мой запрос:
public function getFriendsFromTo ($user, $limit, $offset)
{
return $this->getEntityManager()
->createQuery('SELECT f FROM EMMyFriendsBundle:Friend f WHERE f.user='.$user.' limit '.$limit. 'offset' .$offset)
->getResult();
}
Друзья и пользователи связаны с manyToOne и oneToMany, поэтому в таблице друзей есть поле - user_id.
Это в моем контроллере:
$user = $this->get('security.context')->getToken()->getUser();
$id = $user->getId();
$friends = $user->getFriends();
$result = count($friends)
$FR_PER_PAGE = 7;
$pages = $result/$FR_PER_PAGE;
$em = $this->getDoctrine()->getEntityManager();
$friends = $em->getRepository('EMMyFriendsBundle:Friend')
->getFriendsFromTo($id, $FR_PER_PAGE, $page*$FR_PER_PAGE);
Я знаю, что это глупо и даже неправильно (особенно третий параметр должен быть $page*$FR_PER_PAGE
), но я просто хотел попробовать, если запрос работает, и это не так.