Jump to content
php.lv forumi

noteikts stils pa grupaam velkot no DB


jam

Recommended Posts

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

// 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

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

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

$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 by NiTrino
Link to comment
Share on other sites

š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

š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 by NiTrino
Link to comment
Share on other sites

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

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

×
×
  • Create New...