Potrzebuję czegoś podobnego do REGEXP i REPLACE(). Liste tematów na forum. Chciałbym dodawać pod nimi kawałek treści ostatniego postu i wszystko chować/pokazywać, przez js (to w sumie nie ważne ;P ). Zrobiłem w już to, zapytaniem
  1. SELECT
  2. topic.id, topic.poster, topic.subject, topic.posted, topic.last_post, topic.last_post_id,
  3. topic.last_poster, topic.num_views, topic.num_replies, topic.closed,
  4. topic.sticky, topic.moved_to, CONCAT(LEFT(post.message, 200), \'...') as message
  5. FROM '.$db<span style='color:orange'>->prefix.'topics AS topic, '.$db->prefix.'posts AS post
  6. WHERE topic.forum_id='.$id.' AND topic.last_post_id=post.id
  7. ORDER BY topic.sticky DESC, topic.'.(($cur_forum['sort_by'] == '1') ? 'posted' : 'last_post').' DESC LIMIT '.$start_from.', '.$pun_user['disp_topics']
Jest tylko jeden problem. Gdy wyciągam treść postu, to wyciągam dodatkowo bbcode. Wiem, mógłbym wywalać je w php, ale w tedy nie wyświetli mi się 200 znakók, tylko mniej. Niechcę też obciążać bazy wyciągając dużo informacji. Wolałbym podczas wyciągania odnaleść wyrażenie regularne i wyciągnąć 200 znaków z pola bez bbcode. Nie wiem tylko czy istnieje taka możliwość, i czy było by to bardziej optymalne rozwiązanie dla mysql niż wyciągnięcie całego pola, przerobienie prze php i wyświetlenie 200 znaków.