Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] pobranie danych z mysql alfabetycznie i wygrawerowanie pliku
Forum PHP.pl > Forum > PHP
Lejto
Chcę napisać plik który pobiera dane z bazy i graweruje je do pliku jpg.
Jest sobie baza np. 500 rekordów.

Nazwa wartosc wartosc1

Chce pobrać dane wg alfabetu i wrzucić dane np. na literę A do 1 pliku a na literkę N to innego pliku, z grawerowaniem w gd sobie poradzę, ale jak tak ten dane pobrać w takich gromadach?

Jak pobrać dane w grupach alfabetycznych?

Pozdrawiam
okitoki
możesz użyć like w mysql

select * from baza_danych where dane like 'A%'

chyba to coś takiego było smile.gif
Lejto
no tak ale bym musiał dla napisać zapytanie dla każdej literki
kefirek
LEFT

  1. SELEC *, LEFT(kolumna, 1) AS litera FROM tabela
Lejto
left tu chyba niepotrzebne skoro jest AS co?
będę musiał napisać tyle zapytań ile jest liter? winksmiley.jpg
czy mogę to jakoś literki to tablicy w pętle i zapytanie też?
okitoki
możesz każda litera odpowiada jakiemuś numerowi konwerują to funkcje chr i ord
Zyx
  1. <?php
  2. $stmt = $pdo->query('SELECT id, tekst FROM tabela ORDER BY tekst');
  3. $data = array();
  4.  
  5. while($row = $stmt->fetch())
  6. {
  7.  if(!isset($data[$row['tekst'][0]]))
  8.  {
  9.    $data[$row['tekst'][0]] = array();
  10.  }
  11.  $data[$row['tekst'][0]][] = $row;
  12. }
  13. $stmt->closeCursor();
  14. ?>


I już masz załatwione dwie rzeczy - po pierwsze, posortowane alfabetycznie, po drugie rozdzielone do osobnych tablic w zależności od pierwszej litery.
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.