Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pobranie i wyświetlenie zdjęć z bazy oraz ich przycięcie
Forum PHP.pl > Forum > PHP
matti9410
W jaki sposób mogę wyświetlić zdjęcia w formie takiej tabelki

Pobieram linki do zdjęć z bazy i nie wiem jak je wrzucić do tabeli. Mam taki kod:
  1. $kategoria = $_POST['kategoria'];
  2. db_connect();
  3. $zapytanie = "SELECT * FROM $kategoria";
  4. $wynik = mysql_query($zapytanie) or die('Brak zdjęć');
  5. while ( $row = mysql_fetch_row($wynik) ) {
  6. $id = $row[0];
  7. $link = $row[2];
  8. echo '<img id="photo" src="../'. ($link) .'">';
  9. }
  10. db_close();

Co trzeba zrobić żeby przyciąć zdjęcia pionowe jak i poziome do formy kwadratu ?
sebek222
Przycinanie zdjęć powinno odbywać się na etapie ładowania tych zdjęć do systemu - stworzenie miniatur.
Można to wykonać za pomocą biblioteki:

http://www.php.net/manual/en/book.imagick.php

Wizualnie jeśli zdjęcia koniecznie muszą pozostać w takiej postaci, to można spróbować wstawić je jako tło dla elementu blokowego, przykładowo:
  1. <div style="float:left;width:100px;height:100px;margin:5px;background:url(adres_obrazka
  2. .jpg) no-repeat 50% 50%; background-size:cover; background-attachement:fixed; "></div>
  3. <div style="float:left;width:100px;height:100px;margin:5px;background:url(adres_obrazka
  4. .jpg) no-repeat 50% 50%; background-size:cover; background-attachement:fixed; "></div>
  5. <div style="float:left;width:100px;height:100px;margin:5px;background:url(adres_obrazka
  6. .jpg) no-repeat 50% 50%; background-size:cover; background-attachement:fixed; "></div>
  7. <div style="float:left;width:100px;height:100px;margin:5px;background:url(adres_obrazka
  8. .jpg) no-repeat 50% 50%; background-size:cover; background-attachement:fixed; "></div>
  9. <div style="clear:both"></div>


Czyli kod wyglądałby mniej więcej tak:

  1. $kategoria = $_POST['kategoria'];
  2. db_connect();
  3. $zapytanie = "SELECT * FROM $kategoria";
  4. $wynik = mysql_query($zapytanie) or die('Brak zdjęć');
  5. while ( $row = mysql_fetch_row($wynik) ) {
  6. $id = $row[0];
  7. $link = $row[2];
  8. echo '<div style="float:left;width:100px;height:100px;margin:5px;background:url(../'. ($link) .') no-repeat 50% 50%; background-size:cover; background-attachement:fixed; "></div>';
  9. }
  10. db_close();
  11. echo '<div style="clear:both"></div>';



Oczywiście style najlepiej wyodrębnić do odpowiednich klas.
matti9410
Dzięki wielkie za to rozwiązanie z CSS i HTML ! smile.gif
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.