Autor Zpráva
Stepanka
Profil *
Ahoj,

prosím, nedělali jstě už někdo porovnávání produktů podobné tomuto? http://www.bilezbozi.cz/porovnani/?vids=342636,273778,411145,273793

Já mám tabulku produktů, tabulku položek (např. chuť, barva, velikost, ..) a tabulku hodnot (např. sladká, červená, malá, ...).

A potřebovala bych udělat porovnání. Zatím mám toto:

$query = mysql_query("  SELECT 
sp.$nazev AS nazev_polozky,
sp.id_polozka AS id_polozky
FROM produkty p
JOIN produkty_matky m ON p.id_matka=m.id_matka
LEFT JOIN sablony_obsah so ON so.id_produkt = p.id 
LEFT JOIN sablony_polozky sp ON sp.id_polozka = so.id_polozka
LEFT JOIN sablony_seznam ss ON ss.id_sablona = sp.id_sablona
LEFT JOIN sablony_hodnoty sh ON sh.id_hodnota = so.id_hodnota
WHERE m.web='".__WEB__."' 
AND p.id IN (".implode(", ", $_SESSION['porovnani']).")
GROUP BY sp.id_polozka 
ORDER BY sp.id_polozka, p.id
") or die(err(1));

									  
$query_produkty = mysql_query("  SELECT 
p.$nazev AS nazev,
p.id AS id,
f.file AS image
FROM produkty p
JOIN produkty_matky m ON p.id_matka=m.id_matka
LEFT JOIN produkty_foto f ON f.id_produkt=p.id AND f.razeni=0
WHERE m.web='".__WEB__."' 
AND p.id IN (".implode(", ", $_SESSION['porovnani']).")
GROUP BY p.id
ORDER BY p.id
") or die(err(1));


echo '<table border="1" width="100%">';

echo '<tr><th></th>';
while ($row_produkty = mysql_fetch_array($query_produkty)) {
	echo '<th valign="top" class="center">'.$row_produkty['nazev'];
	$zobraz_img='<img src="'.__SITE_URL__.__URL__.'img_produkty/male/'.$row_produkty['image' ].'" alt="'.$row_produkty['nazev'].'" />';
	echo '<br /><br />'.$zobraz_img.'</th>';
}
echo '</tr>';

while ($row = mysql_fetch_array($query)) {
	echo '<tr>';

	echo '<td>'.$row['nazev_polozky'].'</td>';
	$query2 = mysql_query("  SELECT 
						sh.$nazev AS nazev_hodnoty,
						p.id AS id,
						sp.id_polozka AS id_polozky
                                                FROM produkty p
						JOIN produkty_matky m ON p.id_matka=m.id_matka
						LEFT JOIN sablony_obsah so ON so.id_produkt = p.id 
						LEFT JOIN sablony_polozky sp ON sp.id_polozka = so.id_polozka AND sp.id_polozka = '".$row['id_polozky']."' 
						LEFT JOIN sablony_seznam ss ON ss.id_sablona = sp.id_sablona
						LEFT JOIN sablony_hodnoty sh ON sh.id_hodnota = so.id_hodnota AND sh.id_polozka = '".$row['id_polozky']."'
                                                WHERE m.web='".__WEB__."' 
						 AND p.id IN (".implode(", ", $_SESSION['porovnani']).")
						 ORDER BY sp.id_polozka, p.id
                                                 ") or die(err(1));
	
	while ($row2 = mysql_fetch_array($query2)) {
		if ($row['id_polozky'] != '') {
			echo '<td>'.$row2['nazev_hodnoty'].'</td>';
		} 
	}
	
	echo '</tr>'; 
}
	
echo '</table>';


Jenže nikdy mi to nevypisuje hodnoty jednotlivých položek k porovnávání tak, jak bych chtěla. Navíc bych to chtěla řešit třeba jen jedním dotazem, ale to asi nepůjde.. Nemáte třeba někdo porovnávání produktů v PHP, které by vypadala podobně jako odkaz uvedený výše, že bych se koukla na strukturu?

Děkuju moc.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0