Jump to content
php.lv forumi

kategoriju un subkategoriju izvade


rumpels

Recommended Posts

intereses jautajiens, skatijos vakar un domaju vai ir izmantots viens selects vai funkcija, varbut clase lai izvadītu tādus datus kā sheitan: http://sviesc.valsts.lv/?menu=links izdarit ar pieciem selectiem jau nau problemas bet tas izskatitos nu ne visai. tatad jautajiens ja ir piecas kategorijas vai var izvadit shada izskata lai apakshkategorijas butu sarindotas pec alfabetiskas secibas! Un ka darit butu efektigak!classi vai selectu domaju ka neizburtos lai uzrakstitu (neesmu spes:))) f-ju varetu megjinat.

Link to comment
Share on other sites

Var jau to uzrakstīt ar vienu selektu, apmēram tā:

SELECT virs.name, zem.name FROM kategorija virs, kategorija zem WHERE virs.id = zem.virs_id GROUP BY virs.name ORDER by virs.name, zem.name

bet tad protams, PHP skriptā ciklā vadot ārā nosaukumus jāapskata, kuriem virs.name ir vienāds, un ja atšķirās, tad veidot jaunu kategoriju. ķēpīgi.

 

a otrs variants ir uzrakstīt funkciju, kas dotai kategorijai izvada apakškategorijas, un tad galvenajā programmā dabū virskategoriju nosaukumus un id (apmēram šādi: SELECT name, id FROM kategorija WHERE virs_id IS NULL ORDER BY name) . Tad ciklā tās vada ārā un katrai izsauc uzrakstīto funkciju, padodot tai virskategorijas id. Tā savukārt izselektē apakškategorijas (piemēram, SELECT name FROM kategorija WHERE virs_id = $id ORDER BY name). Un manuprāt šis variants ir prātīgāks.

Link to comment
Share on other sites

varbuut tas buus tas pac ko bubu teica, bet ir itaac varianc:

 

tabulas struktuura

id , links, kategorija

1 , php.lv , PhP & MySql

2 , pods.lv , IT

function izvada($kat){
$visi = mysql_query("SELECT * FROM tabula WHERE kategorija='$kat'");
<table>
<tr>
echo   "<td>$kat</td>";
while ($viens = mysql_fetch_array($visi)){
echo "<td>".$viens['links']."</td>";
}//end while 
</tr>
</table>
}//end function

izvada("IT");
izvada("PhP & MySql");

 

nu kaut kaa itaa vajadzeetu straadaat

Edited by Klez
Link to comment
Share on other sites

varbuut tas buus tas pac ko bubu teica, bet ir itaac varianc:

 

tabulas struktuura

id , links, kategorija

1 , php.lv , PhP & MySql

2 , pods.lv , IT

function izvada($kat){
$visi = mysql_query("SELECT * FROM tabula WHERE kategorija='$kat'");
<table>
<tr>
echo   "<td>$kat</td>";
while ($viens = mysql_fetch_array($visi)){
echo "<td>".$viens['links']."</td>";
}//end while 
</tr>
</table>
}//end function

izvada("IT");
izvada("PhP & MySql");

 

nu kaut kaa itaa vajadzeetu straadaat

skatos un brinos cik vienkrashi un logjiski man vel japraktizejas lai pats sashtukotu, doma ir bet izpildijums aiziet pa talu un man butu japieraksta 10x vairak simbolu lai iegutu velamo un drizak nospljautos un ieliktu piecus selectus:)

Link to comment
Share on other sites

varbuut tas buus tas pac ko bubu teica, bet ir itaac varianc:

Apmēram, tas pats par to funkciju, kas izvada. Vienīgi es biju domājis arī automatizēt virskategoriju izvadi, lai nav ar roku tās jāvada, t.b. glabāt arī datubāzē.

Link to comment
Share on other sites

tu domaaji TI, PHP & MySQL etc.

 

nu tie jau tiek padoti funkcijai un tad tikai mainiigam CSS piemet un ir oki :)

Nu jā, protams, ka var tā darīt, ja iepriekš jau zināmas kategorijas. A ja tās ir dinamiskas, tad tās arī jāglabā datubāzē un jāvel no ārā no tās.

Link to comment
Share on other sites

×
×
  • Create New...