SkyD Posted August 12, 2006 Report Share Posted August 12, 2006 Hei. Nāku pēc palīdzības. No faila velkot ārā ierakstus un sakārtot tos rindā un stabiņā māku, bet kautkā tas neder man galerijām, jo galerijas tiek vilktas ārā no datu bāzes. Krch ir man tā, ka ir galerijas titulbilde, nosaukums. Tātad vajag sakārtot vienā lapā 16 galerijas. 4 galerijas rindā un 4 galerijas stabiņā. Kā to panākt? ar for ciklu kautkā meiģināju, bet īsti nesanāca. Link to comment Share on other sites More sharing options...
koko Posted August 12, 2006 Report Share Posted August 12, 2006 skatoties, ar ko tu jamos izvadi... Ja ar tabulu, tad ik pa 4 ierakstiem jaaiemet veel </tr><tr> Link to comment Share on other sites More sharing options...
SkyD Posted August 12, 2006 Author Report Share Posted August 12, 2006 jap ar tabulu. Nu ka tr jaizvada es zin, bet kaa vinjus izvadiit tikai peec 4 ierakstiem? $i+4 ? Lai labāk saprastu jūs, tad man ir tā: <table> //te mysql_query(); while($r=mysql_fetch_array($kveerijs)) { <td> ..te paraada galerijas.. </td> } </table> tad cik noprotu aiz <table> man vajadzētu to <tr>, bet kā lai viņu izvada ik pēc 4 ierakstiem? Link to comment Share on other sites More sharing options...
Delfins Posted August 12, 2006 Report Share Posted August 12, 2006 (edited) klasiskais variants - DIV ar float: left + fiksēts augstums... Rezultāts: bloki paši smuki izkārtosies... http://85.115.122.95/tests/galereylayout.php <HTML> <HEAD> <TITLE>fghjfg</TITLE> <style> .divGalItem { float: left; width: 110px; border: 1px solid red; margin: 4px; } </style> </HEAD> <BODY> <div style="width: 500px; margin: 10px; border: 1px solid blue;"> <?php for ($i=0;$i<16; $i++) { print '<div class="divGalItem">[img]</div>'; } ?> <div style="clear: both;"> </div> </BODY> </HTML> Edited August 12, 2006 by Delfins Link to comment Share on other sites More sharing options...
Blitz Posted August 12, 2006 Report Share Posted August 12, 2006 <table> //te mysql_query(); $count=0; while($r=mysql_fetch_array($kveerijs)) { <td> ..te paraada galerijas.. </td> $count++; if ($count==4) {echo "</tr><tr>"; $count=0} } </table> Link to comment Share on other sites More sharing options...
Analgiins Posted August 12, 2006 Report Share Posted August 12, 2006 Delfins droši vien gribēja teikt + fiksēts platums Link to comment Share on other sites More sharing options...
Delfins Posted August 12, 2006 Report Share Posted August 12, 2006 nav obligāti fiksēts platums... ja bildēm būs dažādi platumi (normas robežās, piemēram - 4:3 (100:150) vai 3:4 (150:100) formāts), DIVi paši izkārtosies.. jebšu arī fiksēt platumu + centrēt "iekšas" vai kā savādāk... bet kā tāds fiksēts platums ir opcionāls... Link to comment Share on other sites More sharing options...
Emīls Posted August 12, 2006 Report Share Posted August 12, 2006 Ja tomeer gribi ar tabulaam tad pirms taa sava cikla iemet $i = 1 ; un cikla saakumaa if($i == 3) { echo '</tr><tr>' ; } un pirms cikla beigaam $i++ ; Simple :) Link to comment Share on other sites More sharing options...
Grey_Wolf Posted August 13, 2006 Report Share Posted August 13, 2006 Emīls--> saadi ir vienkaarsaak if (($i+1) %4 ==0) { echo '</tr><tr>'; } Link to comment Share on other sites More sharing options...
Emīls Posted August 14, 2006 Report Share Posted August 14, 2006 var arii taa bet man ( vismaz pasham ) paarskataamaak liekas mans variants Link to comment Share on other sites More sharing options...
bubu Posted August 14, 2006 Report Share Posted August 14, 2006 Tavs variants nemaz nestrādās. Strādās Blitz variants. Tu aizmirsi $count=0 tajā if'ā. Link to comment Share on other sites More sharing options...
Gundars Posted August 14, 2006 Report Share Posted August 14, 2006 var arii taa bet man ( vismaz pasham ) paarskataamaak liekas mans variants Un veel korekcija, ja atlasito ierakstu skaits nav 16, attiecigi pedeja tabulas rinda nav attieciigo colonu skaits kas prasas peec veel vienas colonas ar colspanu:)) Un veel ja pieliek klaat, ka var nebut ari nevienas galerijas ko paraadiit un veel ka pasutitajs pekshji grib nevis cetras bildes rinda, bet gan piecas vai tris... $count=0; $cpr=4; //columns per row while ($row=mssql_fetch() ) { if (($count % $cpr) ==0) {echo '<tr>';} //saakam tabulas jaunu rindu echo '<td> ..... '</td>'; //izvadm colunu ar visu parejo $count++; if (($count % $cpr) ==0) {echo '</tr>';} //sledzam tabulas rindu } $misedtd = ($cpr - ($count % cpr)); //izrekjinam cik td ir palikushi liidz rindas beigam if ($missedtd !== $cpr) //attieciigi iemetam trukstoshso td ar colspanu un nosledzam tabulas rindu { echo "<td colspan=$missedtd></td></tr>"; } Link to comment Share on other sites More sharing options...
litt Posted August 14, 2006 Report Share Posted August 14, 2006 Problēma nav realizācijā - problēma ir loģikā. Ja uz papīra varēsi uzzīmēt shēmu, pēc kuras viss strādās, tad uzkodēt arī nebūs problēmas. Ja uz papīra nespēsi uzzīmēt un saprast ko vajag, tad uzkodēt toč nevarēsi. Link to comment Share on other sites More sharing options...
Delfins Posted August 14, 2006 Report Share Posted August 14, 2006 un tagad padomājiet, ja izmantotu DIV-us... cik problēmas atkristu - gan loģikā, gan šī posta "aršana", gan nelietderīgi izmantots laiks .. Link to comment Share on other sites More sharing options...
Blitz Posted August 14, 2006 Report Share Posted August 14, 2006 Ar diviem paristi veidoju ja man lapas dizains ir dinamisks, tad viss smuki izkartojas, bet ja vajag statiski 4 kolonas un ne vairaak, tad nezinu vai var to izdarit ar div. Link to comment Share on other sites More sharing options...
Recommended Posts