Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Wyświetlanie w pętli obrazów pobieranych z tabeli MySQL, Wyświetla tylko jeden obraz choć pętla WHILE działa
wpm834
post
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 20.10.2012

Ostrzeżenie: (0%)
-----


Tabela BANNERS zawiera m.in. pola BANNERS( bannerID [int] , banner[BLOB],...)
Jak sprawić aby przeglądarka wyświetliła w pętli while wszystkie obrazki z otrzymanej tablicy wyników $row_c ,a nie tylko pierwszy.
Nadmieniam że pętla działa wyświetlając w razie potrzeby wartości np. bannerID.

Kod
mysql_pconnect ("localhost", ...
mysql_select_db ( ...

$res_c = mysql_query("SELECT * FROM BANNERS WHERE clientID =2") or die();
                            
  while ($row_c = mysql_fetch_array($res_c))  
  {    
    $bannerID = $row_c['bannerID'];       //echo"bannerID=$bannerID <br>";
     $grafika = $row_c['banner'];    

    header("Content-type: image/gif");    
    print $grafika;
  }
[/b]

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
lobopol
post
Post #2





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

Ostrzeżenie: (0%)
-----


Nie zrobisz tego w ten sposób.
  1. header("Content-type: image/gif");
  2. print $grafika;

Zobacz co to robi, nagłówek informuje przeglądarkę, że wyświetlana treść jest obrazkiem, nie obrazkami (i nie ma czegoś takiego jak content-type: wiele obrazków)

Opcje masz tylko 3:
Pierwsza wszystkie obrazki łączysz w jeden (popatrz po GD).
Druga tworzysz 2 pliki np.:
obrazek.php i galeria.php
w obrazek.php robisz coś na zasadzie:
  1. mysql_pconnect ("localhost", ...
  2. $img = isset($_GET['id'])? (int) $_GET['id'] : 0;
  3. $res_c = mysql_query("SELECT * FROM BANNERS WHERE obrazek_id="$img" clientID =2 limit 1") or die();
  4.  
  5. while ($row_c = mysql_fetch_array($res_c))
  6. {
  7. $bannerID = $row_c['bannerID']; //echo"bannerID=$bannerID <br>";
  8. $grafika = $row_c['banner'];
  9.  
  10. header("Content-type: image/gif");
  11. print $grafika;
  12. }

a w galeria.php
  1. mysql_pconnect ("localhost", ...
  2.  
  3. $res_c = mysql_query("SELECT * FROM BANNERS WHERE clientID =2") or die();
  4.  
  5. while ($row_c = mysql_fetch_array($res_c))
  6. {
  7. $bannerID = $row_c['bannerID'];
  8. echo '<img src="obrazek.php?id='.$bannerID.'"/>';
  9. }

To jest kijowy kod, ale obrazue o co chodzi
trzecia opcja trzymasz na serwerze gdzieś obrazki, a w bazie tylko ich url

Ten post edytował lobopol 23.09.2013, 19:02:58


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 20:33