Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][CSS]wyświetlanie produktów wraz ze zdjęciem
Forum PHP.pl > Forum > Przedszkole
john_doe
Witam,

napisałem taki kod, który wyświetla mi w kontenerze tabelke wraz z fotkami z bazy. Wyświetla mi 4 w rzędzie.
Gdy w grę wchodzą same fotki wygląda to tak jak chcę, jeśli natomiast dołoże jakiekolwiek inne pole z bazy np. $row[1] czyli name danego produktu to się bez sensu wyświetla.

  1. <?php
  2. $result = connect( $SELECT_PRODUCTS_FROM_CATEGORY );
  3.                    
  4.                     if ( countResults( $result ) > 0 )
  5.                     {
  6.                            print '<table align="center" border="0"><tr><td>';
  7.                                
  8.                            $i = 1;
  9.                                
  10.                            while ( $row = mysql_fetch_array( $result ) )
  11.                            {
  12.                                    
  13.                                print $row[1];        
  14.                                print '<img src="../master/addProduct/Pictures/minis/mini_'.$row[2].'" height="150px" />';
  15.                                
  16.                                print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
  17.                                        
  18.                                if( ( $i++ % 4 ) == 0  )
  19.                                {
  20.                                    print '<br /><br /><br />';
  21.                                }
  22.                            }    
  23.                            
  24.                            print '</td></tr></table>';
  25.                     }else print "Brak produktow w wybranej kategorii...";
  26. ?>
erix
Cytat
czyli name danego produktu to się bez sensu wyświetla.

Może używaj obiektywnych określeń, a nie bez sensu? Dla Ciebie nie ma sensu, dla kogoś może mieć.

Czytaj: pokaż, co się dzieje.
Kasyx
A i drobne uwagi odnośnie kodu:
Używaj mysql_fetch_assoc zamiast mysql_fetch_array. Kod jest o niebo czytelniejszy, a strata na wydajności znikoma.
Do tego poleca się używać echo zamiast print ze względu na wydajność.

Co do tematu: podejrzewam, że użycie mysql_fetch_assoc i drobne przeredagowanie skryptu rozwiąże Twój problem
john_doe
poniższy link to screen z tego co wykonuje kod z posta

http://www.malfarb.pl/krystiano/xxx.jpg

a tutaj gdy np dodam print $row[1] w 1szej linijce w pętli while

http://www.malfarb.pl/krystiano/xxxx.jpg

chciałbym wyświetlić to wszystko tak jak w linku 1szym z dodatkowymi danymi czyli nazwa i krótkim opisem. A jak widać "rozłazi" się wszystko.


P.S. Co z tym printem? serio lepiej o niebo echo?
nospor
twoj problem nie ma zadnego zwiazku z php. to podstawy html i css. przenosze
erix
No bo jak się nie mieści w komórce, to przeglądarka musi coś z tym zrobić.

Jak piszesz w edytorze tekstu, to wciska na chama wszystko w jedną linijkę, czy zawija? snitch.gif
john_doe
masz rację Erix. Jednak zobacz na tej drugiej focie. Napisy są obok fotki. Ja chciałbym np nad, potem np opis dodać pod. Jak dam <br> to mi moje modulo rozwala i nie mam tylu zdjęć w rzędzie ile chce tylko po jednym.
erix
Zapomniałeś chyba o ustawieniu overflow: hidden dla komórki.
john_doe
właśnie wcześniej wpakowałem overflow dla td jednak bez zmian
erix
To musisz po prostu ustawiać wymiary na sztywno.
john_doe
zastosowałem coś takiego, jest jedno ale bo dobrze wyglada na zewn ale w środku ......

  1. <?php
  2. $result = connect( $SELECT_PRODUCTS_FROM_CATEGORY );
  3.                    
  4.                     if ( countResults( $result ) > 0 )
  5.                     {
  6.                            print '<table align="center" border="0"><tr>';
  7.                                
  8.                            $i = 1;
  9.                                
  10.                            while ( $row = mysql_fetch_array( $result ) )
  11.                            {
  12.                                print '<td width="150px">';    
  13.                                    
  14.                                print $row[1] . '<br />';        
  15.                                
  16.                                print '<img class="offerimg" src="../master/addProduct/Pictures/minis/mini_'.$row[2].'" height="150px" />';
  17.                                
  18.                                print '<br />' . $row[3];
  19.                                
  20.                                print '</td>';
  21.                                                                        
  22.                                if( ( $i++ % 4 ) == 0  )
  23.                                {
  24.                                    print '</tr><tr>';
  25.                                }
  26.                            }    
  27.                            
  28.                            print '</table>';
  29.                     }else print "Brak produktow w wybranej kategorii...";    
  30.        
  31.         ?>


gdy nie ma wielokrotności 4 wtedy nie domyka tr
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.