Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Ograniczenie liczby znaków
Forum PHP.pl > Forum > Bazy danych
k4wo
Witaj,

piszę system newsów i zatrzymałem się na ograniczeniu liczby znaków w treści. Mój kod wygląda tak:

  1. function display_news($category = '', $start) {
  2. $start = ($start * $this->per_page) - $this->per_page;
  3.  
  4. if(empty($category)) {
  5. $select = $this->db->prepare('SELECT * FROM `news` ORDER BY `insert_date` DESC LIMIT :start, :per_page');
  6. }
  7. else {
  8. $select = $this->db->prepare('SELECT * FROM `news` WHERE category=:category ORDER BY `insert_date` DESC LIMIT :start, :per_page');
  9. $select->bindParam(':category', $category, PDO::PARAM_STR);
  10. }
  11. $select->bindParam(':start', $start, PDO::PARAM_INT);
  12. $select->bindParam(':per_page', $this->per_page, PDO::PARAM_INT);
  13. $select->execute();
  14.  
  15. return $select->fetchAll();
  16. }


Wiem, że za to odpowiada LIMIT, ale w powyższych zapytaniach LIMIT odpowiada za stronnicowanie, natomiast ja chciałbym ograniczyć jeszcze liczbę znaków w samym niusie (załóżmy z tabeli "tresc").


PS. Zdaję sobie sprawę, że mógłbym użyć substr, ale nie o to chodzi ;-)
witul
SUBSTR istnieje tez w mysqlu
ale lepsza bedzie funkcja LEFT
k4wo
Przyznam otwarcie, że wcześniej wyguglowałem funkcję LEFT, ale za bardzo nie wiem jak z niej skorzystać bo jak dodaję coś takiego:

  1. LEFT(content, 20)



To nie wyświetla mi nic...
witul
  1. SELECT LEFT(content,20) as content FROM newsroom

content - nazwa pola z treścią
Wpisz to w phpmyadminie/konsoli mysql, musi działać
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.