Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> klasa - atrybuty dla produktó w sklepie on-line
acztery
post
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
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
TomASS
post
Post #2





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


To ja się włączę do trójstronnej dyskusji (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
@acztery :
Nie obrażaj sie tylko posłuchaj:
Cytat
sf a moze ty pokażesz jak Ty byś to zrobił bo wiele osób ma z tym kłopot przy budowie sklepów www


Cytat
A to co ty chcesz napisac to jest juz gotowe.. OSCommerce sie nazywa.. wiec po co to dublowac


Cytat
pisze cos lepszego nie bawem sie przekonasz ...

Szczerze mówiąć jak całe 'to' będzie wyglądało tak jak klasa którą zaprezentowałeś, to nie wróżę Ci nic dobrego.... a rację ma sf któy pisze:
Cytat
Totez zanim zabierzesz sie za sklep z prawdziwego zdarzenia, poznanie tych technik zajmie Ci pewnie z pol roku jak nie rok..


Cytat
pisałmem do pod mysql wiec przepisanie wszystkiego na postgres zajmnie kupe czasu

Jakbyś pisał to zgodnie z zasadami OOP to by nie było z tym większego problemu.

Cytat
dodam tylko ze to wynik działania

I dalej staram się uzyskać odpowiedź na jakiej podstawie uznajesz, że:
Cytat
działa bardzo dobrze, szybko i wydajnie


Jak coś zrobisz, to pokaż a postaramy się konstruktywnie ocenić (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)


Acha:
Cytat
byś był nie weim kim jakiś ekspert od php a obaj wiemy ze daleko Ci do niego

ja np. nie wiem i uważam troszkę inaczej.

Ten post edytował TomASS 22.04.2006, 11:46:29
Go to the top of the page
+Quote Post

Posty w temacie
- acztery   klasa - atrybuty dla produktó w sklepie on-line   21.04.2006, 23:19:53
- - TomASS   Cytatdziała bardzo dobrze, szybko i wydajnie A jak...   21.04.2006, 23:52:17
- - acztery   testowałem na swoim sklepie i działa. a klasa dlat...   22.04.2006, 00:05:00
- - TomASS   Cytattestowałem na swoim sklepie i działa. Co wcal...   22.04.2006, 00:16:41
- - acztery   ja tez mam dodawanie kategori w nieskonczonosc ......   22.04.2006, 00:21:56
- - sf   To co napisales to jest czysta amatorka, poprostu ...   22.04.2006, 07:25:01
- - TomASS   CytatTo co napisales to jest czysta amatorka Przec...   22.04.2006, 07:50:05
- - acztery   sf a moze ty pokażesz jak Ty byś to zrobił bo wiel...   22.04.2006, 08:44:40
- - sf   @TomASS: to chyba wybral zly dzial, ocenie powinni...   22.04.2006, 09:39:48
- - acztery   pisze cos lepszego nie bawem sie przekonasz ... ...   22.04.2006, 09:45:45
- - TomASS   To ja się włączę do trójstronnej dyskusji @aczter...   22.04.2006, 11:44:35
- - sf   Cytat(acztery @ 2006-04-22 08:44:40)pozatym w...   22.04.2006, 13:38:55
- - Vogel   Cytat(sf @ 2006-04-22 10:39:48)A to co ty chc...   22.04.2006, 13:52:29
- - acztery   sf a jak pobierasz atrybuty dla danych produktow n...   22.04.2006, 14:43:21
- - sf   bron.pl stoi na ez, nie ma tam czegos takiego jak ...   22.04.2006, 14:56:37
- - nasto   CytatA ze swojego portfolio mogę wymienić m.in. pr...   22.04.2006, 15:06:57
- - acztery   nasto 11 .. np/ aparaty cyfrowe / z karatami pam...   22.04.2006, 15:19:54
- - nasto   Zaczne moze tak ze , nie widze sensu ani za bardzo...   22.04.2006, 17:04:19
- - acztery   no spoko nie ma rekrutacji to nie ... ale teraz wy...   22.04.2006, 19:02:28


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

 



RSS Aktualny czas: 9.10.2025 - 10:41