jam Posted June 25, 2007 Report Share Posted June 25, 2007 Vajag mazliet gudrāku cilvēku padomu: Man ir produktu tabula: id | nosaukums | grupa 1 | bērzs | 1 2 | ieva | 1 3 | kļava | 1 4 | priede | 2 5 | egle | 2 6 | ozols | 3 7 | osis |3 utt Selektēju un ar while lasu visus šos un rādu viņus rindā, ik pēc 4iem insertojot <br>. Man vajag katrai grupai rādīt savu background, to varu panākt, ieliekot kopīgajam grupas <div> katru reizi savādāku stilu. Pagaidām man ir izdevies šādi: <div class="color1">bērzs</div> <div class="color1">ieva</div> <div class="color1">kļava</div> Tas neder, jo vajag apaļus stūrus visam grupas backroundam. To varētu sasniegt ar šo: <div class="color1"> bērzs ieva kļava </div> Tikai nemāku to aprakstīt. Tāpēc arī jautāju p r o f e s i o n ā ļ i e m :) Link to comment Share on other sites More sharing options...
hackerman Posted June 25, 2007 Report Share Posted June 25, 2007 Neesmu profesionālis, bet ja pareizi sapratu, tu jau uzrakstīji, ko tev vajag otrajā variantā.. ? Ja tā, varbūt vnk to <div> tagu izvadi pirms cikla un viss? :) Link to comment Share on other sites More sharing options...
NiTrino Posted June 25, 2007 Report Share Posted June 25, 2007 // izselektee visu un iemet arrayaa - $arr $i=count($arr); if(!empty($arr)) { $block_count = ceil($i/4); for ($s=0;$s<$block_count;$s++) { echo '<div class="block">'; for ($t=$s*4;$t<(($s*4)+4);$t++) { // shite izvadam echo $arr[$t]['produkts']; } echo '</div>'; } } mosh smukak var, shito izravu no vienas savas sources Link to comment Share on other sites More sharing options...
jam Posted June 25, 2007 Author Report Share Posted June 25, 2007 Neesmu profesionālis, bet ja pareizi sapratu, tu jau uzrakstīji, ko tev vajag otrajā variantā.. ?Ja tā, varbūt vnk to <div> tagu izvadi pirms cikla un viss? :) Hackermann, man vaajg class pamanīt pa grupām - 1. grupai viens class, 2ai cits utt. Link to comment Share on other sites More sharing options...
jam Posted June 25, 2007 Author Report Share Posted June 25, 2007 Nitrino, man ir šāds selekts: $sql = "SELECT * FROM tabula ORDER BY ord ASC"; $rs = mysql_query($sql) or die(mysql_error()); while ($arr = mysql_fetch_array($rs)) { echo $arr["nosaukums"]; } Kā lai ar tavu scriptu to sakombinēju? Link to comment Share on other sites More sharing options...
NiTrino Posted June 25, 2007 Report Share Posted June 25, 2007 (edited) $sql = "SELECT * FROM tabula ORDER BY ord ASC"; $rs = mysql_query($sql) or die(mysql_error()); if (mysql_num_rows($rs)) { while ($tmp = mysql_fetch_array($rs)) { $arr[] = array ('nosaukums'=>$tmp['lauks'],'id'=>$tmp['id']); //utt, visus laukus, kas vajadzigi } } $i=count($arr); if(!empty($arr)) { $block_count = ceil($i/4); for ($s=0;$s<$block_count;$s++) { echo '<div class="block">'; for ($t=$s*4;$t<(($s*4)+4);$t++) { // shite izvadam echo $arr[$t]['nosaukums']; } echo '</div>'; } } vajadzetu stradat ;) Edited June 25, 2007 by NiTrino Link to comment Share on other sites More sharing options...
jam Posted June 25, 2007 Author Report Share Posted June 25, 2007 šitais kaut kā īsti nestrādā. Tev ir uzstādīts, ka ik pēc 4iem jāsākas no jauna <div class ="block">, bet man tas neder, jo es nezinu, cik man itemu var būt katrā grupā. Varbūt 1, varbūt 5i. Tāpat, katrai grupa vajag likt klāt savu class - 1 grupai color1, 2ajai color2 utt. Link to comment Share on other sites More sharing options...
NiTrino Posted June 25, 2007 Report Share Posted June 25, 2007 (edited) šitais kaut kā īsti nestrādā. Tev ir uzstādīts, ka ik pēc 4iem jāsākas no jauna <div class ="block">, bet man tas neder, jo es nezinu, cik man itemu var būt katrā grupā. Varbūt 1, varbūt 5i. Tāpat, katrai grupa vajag likt klāt savu class - 1 grupai color1, 2ajai color2 utt. tad laikam izskatās ka būs kaut kā jāizbrauc cauri ar if-iem, ja nav precīza algoritma... diemžēl neko labāku ieteikt nevaru, nezinot kas un kāpēc jādara... moš uztaisi tabulā lauku, kas nosaka grupas piederību? un tas 4 manā skriptā nosaka cik itemi būs grupā.. Edited June 25, 2007 by NiTrino Link to comment Share on other sites More sharing options...
Delfins Posted June 26, 2007 Report Share Posted June 26, 2007 Turi grupas tabulā (id, nosaukums,krasa) Varianti: 1.) Tiklīdz mainās dati, ģenerē CSS failu. Inkludojām peigā. Vsjo. 2.) Joinā izvelkam grupas krāsu, DIV tagam pieliekam style="...color: '.$grupasColor.'". Vsjo. Link to comment Share on other sites More sharing options...
NiTrino Posted June 26, 2007 Report Share Posted June 26, 2007 Varianti:1.) Tiklīdz mainās dati, ģenerē CSS failu. Inkludojām peigā. Vsjo. manuprāt šis nav tas gadījums kad vajag tik sarežģīti - ģenerēt CSS. Varbūt vienkārši klases sadefinēt un piešķir DIViem atkarība no grupas tipa? Link to comment Share on other sites More sharing options...
andrisp Posted June 26, 2007 Report Share Posted June 26, 2007 Mana variācija par tēmu: http://paste.php.lv/5714 Link to comment Share on other sites More sharing options...
jam Posted June 26, 2007 Author Report Share Posted June 26, 2007 Izskatās, ka Andrisp būs uzvarējis šajā mini skaistumkonkursā. Pagaidām izskatās viss kā vajag. Vēl jāpaspēlējas :) Link to comment Share on other sites More sharing options...
Recommended Posts