satch83
7.03.2008, 12:48:17
Witam!
Mam następujący problem: Generuję miniatury w pętli w zależności od tego czy pola w bazie danych są puste czy nie. Pola w bazie oznaczane jako np. img1,img2,img3 ... odpowiadają nazwom plików graficznych. Wyświetlam dane o 1 produkcie i zdjęcia związane z tym produktem są wyświetlane w komórkach tabeli. Chodzi o to aby po kliknięciu na miniaturę załadował się obraz do górnego (1 wiersza) tabeli jako orginalny.
Funkcja js "zmien" dokleja do ścieżki katalogów z obrazkami nazwę pliku do załadowania.
Niestety nie udało mi się tego osiągnąć poniższym zapisem:
<?php echo '<img src=images/'.$info['img1'].' width="400" height="300" align="center" id="obrazek" >'; ?> //zdjęcie pierwsze orginalne a zarazem komórka do której mają być wczytywane inne zdjęcia
i w końcu zapis wyświetlający miniatury:
pętla {
echo '<td><img src="images/'.$info2['img'.$i].'" width="120" height="90" align="center" onclick="zmien('img'.$i);">'</td>'
}
ps. $i to licznik pętli , $info-tablica z miniaturami po wyciągnięciu z zapytania sql
proszę o pomoc
}
Grzyw
7.03.2008, 12:56:33
Wklej kod, jaki stosujesz. Bo jeżeli wkleiłeś dokładnie, to ta linijka:
<?php
echo '<td><img src="images/'.$info2['img'.$i].'" width="120" height="90" align="center" onclick="zmien('img
'.$i);">'</td
> ?>
wywali Ci błąd składni.
satch83
8.03.2008, 23:17:44
dokładnie taki kod wkleiłem i wywala błąd składniowy
oto fragment
<td colspan="3" class="komorka2" id="obrazek">
<?php echo '<img src=images/nowe/big/'.$info['img1'].' border=0 width="400" height="300" align="center" id="obrazek">'; ?>
</td> // tu ma być ładowany obrazek po kliknięciu na miniaturkę
a to pętla:
<?php
$sql3=("SELECT img1, img2 ,img3, img4, img5, img6, img7, img8, img9, img10 FROM produkt_nowy WHERE produkt_id=$id");
$wynik=mysql_query($sql3);
echo '<tr>';
while ($info2=mysql_fetch_array($wynik))
{
for ($j=1; $j<10; $j++)
{
echo '<td align="center" valign="middle" class="komorka2">
<img src="images/'.$info2['img'.$j].'" width="120" height="90" align="center"></td>';
if ($j==3 || $j==6 || $j==9)
{
echo '</tr><tr>';
}
}
}
echo '</tr></table>';
?>
funkcja w js to:
<script language="javascript">
function zmien(id,co)
{
document.getElementById(id).src='images/nowe/big/'+co;
}
</script>
teraz co wpisać do onclick żeby to zadziałało?
druga sprawa dotyczy samego wyświetlania miniatur : wyświetla mi wszystkie komórki nawet jeśli mam tylko 5 zdjęć to pozostałe są wyświetlane jako obrazek z błędem (ikona złego łącza do obrazka) - chcę aby wogóle nie wyświetlał komórek jeśli nie ma więcej obrazków dla danego produktu