![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 945 Pomógł: 7 Dołączył: 15.03.2005 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Pewnie każdy kto robił sklep www borykał się z tym jak nadać różne atrybury różnym produktom i je wyśwetlać na stronie z opisem produktu w celach informacyjnych napisałem coś takiego. może troszkę to " zacofany " ale działa bardzo dobrze, szybko i wydajnie . 1 cecha może być przypisana jednej kategori albo wszystkim dziecia danej kategori. to działa tylko na 11 dzieciach ale tyle kategori dla róznych cech chyba nie ma żaden sklep www. co o niej myślicie? Kod class type { function atribute($product_id) { // wartosc typu $SQL="SELECT patch FROM prg WHERE id='$product_id'"; $RES=sql($SQL); list($patch)=mysql_fetch_row($RES); //echo "<b>$patch</b><br><BR>"; $patchHow= explode(".", $patch); //print '<PRE>'; //print_r($patchHow); $ileparetn = count($patchHow)-1; if ($ileparetn !='0') { // sprawdzamy czy kategoria produktu ma cechy $w = $patchHow[$ileparetn]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $licz=mysql_num_rows($RES); // sprawdzamy jakie cechy maja rodzice if ($licz!='0') { $w = $patchHow[$ileparetn]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ $w = $patchHow[$ileparetn-1]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $licz=mysql_num_rows($RES); //echo "ostatni parametry zły"; if ($licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "przed ostatni zły"; $w = $patchHow[$ileparetn-2]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $this->licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "3 od konca zły"; $w = $patchHow[$ileparetn-3]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $this->licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "4 od konca zły"; $w = $patchHow[$ileparetn-4]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $this->licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "5 od konca zły"; $w = $patchHow[$ileparetn-5]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $this->licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "6 od konca zły"; $w = $patchHow[$ileparetn-6]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $this->licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "7 od konca zły"; $w = $patchHow[$ileparetn-7]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $this->licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "8 od konca zły"; $w = $patchHow[$ileparetn-8]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $this->licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "9 od konca zły"; $w = $patchHow[$ileparetn-9]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $this->licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "10 od konca zły"; $w = $patchHow[$ileparetn-9]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $this->licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "10 od konca zły"; $w = $patchHow[$ileparetn-10]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $this->licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "10 od konca zły"; $w = $patchHow[$ileparetn-11]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $this->licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "10 od konca zły"; $w = $patchHow[$ileparetn-12]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $this->licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "10 od konca zły"; $w = $patchHow[$ileparetn-13]; $SQL="SELECT cechy FROM grupy WHERE id LIKE '%$w%'"; $RES=sql($SQL); $licz=mysql_num_rows($RES); if ($this->licz!='0') { $RES=sql($SQL); list($cechy)=mysql_fetch_row($RES); //echo $cechy; }else{ //echo "10 od konca zły"; false; } } } } } } } } } } } } } } } if ($w !=''){ $cechy = $cechy; }else{ $cechy = FALSE; } }else{ $cechy = FALSE; } return $cechy; } function descatrybute($product_id) { // wartosc cech dla danego produktu $SQL="SELECT cechy FROM cechy WHERE id_prg='$product_id'"; $RES=sql($SQL); list($cechyDesc)=mysql_fetch_row($RES); return $cechyDesc; } function SeeAtrybuteType($product_id) { $a = explode(";", $this->atribute($product_id)); $b = explode(";", $this->descatrybute($product_id)); $c = array_combine($a, $b); return $c; } } BBcode nie działa ... Ten post edytował acztery 21.04.2006, 23:21:23 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 945 Pomógł: 7 Dołączył: 15.03.2005 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
testowałem na swoim sklepie i działa. a klasa dlatego ze nigdy jeszcze ich nie pisalem. 11 dzieci starczy. we for'rze nie działa.
ps policz na allegro kategorie tak aby kazda miala inne cechy zobaczysz ile ich bedzie jak bedzie wiecej niz 8 to postawie Ci piwo PS wolał bym zeby nie było trzeba nic dopisywać no ale jak znajde czas to to poprawię bbcode nie działa jak wklejam taka ilosc kodu to sie sypie .. funkcja SeeAtrybuteType miała mały błąd jak produkt nie miał zdefinowanych cech to array_combine" title="Zobacz w manualu php" target="_manual wywałał błąd. tak powinno być
Ten post edytował acztery 22.04.2006, 00:13:21 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 13:55 |