anonīms Posted September 11, 2008 Report Share Posted September 11, 2008 Tātad ir izveidota liste, kur ir dažādi dati un kurus vajadzētu sagrupēt pēc vairākiem datiem. <select name="kartot_pec"> <option value="">vārtiem</option> <option value="">piespēlēm</option> <option value="">punktiem</option> <option value="">uzvārdiem</option> </select> Galvenais, lai tikko kā izvēlas kādu no selecta datiem, tā lapa refresojas un nomainās querijā ORDER BY. Nu prioritāte pagaidām ir, lai pēc select izvēles nav jāspiež ok vai kaut kādu submit pogu, bet viss notiek automātiski.. Ir kādi ieteikumi? Link to comment Share on other sites More sharing options...
bubu Posted September 11, 2008 Report Share Posted September 11, 2008 To var izdarīt ar Javaskriptu. Uzliec tam select elementam onchange eventu, kurā pārlādē lapu ar uzstādot window.location ar pareizu GET parametru (tb kartot_pec=...). Vai alternatīvi, ja gribi padot šo vērtību caur POST parametriem, tad submito formu. Link to comment Share on other sites More sharing options...
andrisp Posted September 11, 2008 Report Share Posted September 11, 2008 Ja vajag GET, tad arī tad var vienkārši submitēt formu. Link to comment Share on other sites More sharing options...
anonīms Posted September 11, 2008 Author Report Share Posted September 11, 2008 (edited) Es ceru tā submitēšana nenotiek ar submit button... Pašlaik pētu to onchange eventu.. Īsti nesaprotu, jo ar javascript reti strādāju. Man pat nav skaidrs ko javascript kodā rakstīt, w3school atradu piemēru, bet tur ir ar input un īsti nezinu vai tajā kodā ir tas, kas nepieciešams man. Tomēr kaut ko atradu. <form> <select ONCHANGE="location = this.options[this.selectedIndex].value;"> <option value="?sadala=statistika&kartot_pec=varti">vārtiem</option> <option value="?sadala=statistika&kartot_pec=piespeles">">piespēlēm</option> <option value="?sadala=statistika&kartot_pec=punkti">">punktiem</option> <option value="?sadala=statistika&kartot_pec=uzvardi">">uzvārdiem</option> </select> </form> un tad ar $_GET izveidošu, pēc kā order by, piemēram ORDER BY '$_GET[kartot_pec]' Edited September 11, 2008 by anonīms Link to comment Share on other sites More sharing options...
andrisp Posted September 11, 2008 Report Share Posted September 11, 2008 Ne ne. onchange="document.getElementById('formas_id').submit()" Šita būs visvienkāršāk. Automātiski nosubmitēs tev formu it kā tu būtu nospiedis Submit pogu. Link to comment Share on other sites More sharing options...
anonīms Posted September 11, 2008 Author Report Share Posted September 11, 2008 Njā, bet tagad pēc select maiņas viņš mani aizmet uz index.php lapu. Mēģināju arī ar action, nepalīdz. Link to comment Share on other sites More sharing options...
andrisp Posted September 11, 2008 Report Share Posted September 11, 2008 Bet ja uztaisīji to pašu formu ar Submit pogu, tad nostrādā ? Link to comment Share on other sites More sharing options...
anonīms Posted September 11, 2008 Author Report Share Posted September 11, 2008 (edited) Ar submit pat nemēģināju. Bet nu es sataisiju ar get. viss iet ideāli. Vienīgi par selectu, pēc refresh viņš aizmet vienmēr uz pirmo, a kā varētu izveidot, lai selectā viņš stāv uz tā, kur ir gets? (Tas pats, kas kad izvēlas vecumu caur selektu) Edited September 11, 2008 by anonīms Link to comment Share on other sites More sharing options...
Paulinjsh Posted September 11, 2008 Report Share Posted September 11, 2008 <option value="?sadala=statistika&kartot_pec=varti"<?php echo (!empty($_GET['kartot_pec']) && $_GET['kartot_pec'] == 'varti' ? ' selected="selected"' : ''); ?>>vārtiem</option> Link to comment Share on other sites More sharing options...
anonīms Posted September 11, 2008 Author Report Share Posted September 11, 2008 Ideāli! Un vēl pēdējais, kas manuprāt jau bija rakstīts šajā forumā, bet keywordu nezināšu... man ir while. Gribu, lai ir, ka ieraksti numurējas uz leju 1/2/3/4/5/6/7/8/9.... u.t.t... Kā panākt? Link to comment Share on other sites More sharing options...
Val Posted September 11, 2008 Report Share Posted September 11, 2008 $sort_by = array( //mysql_tabulas_kolonna => teksts 'varti'=>'vārtiem', 'piespeles'=>'piespēlēm', 'punkti'=>'punktiem', ); $sort = (isset($_POST['sort_by']) && array_key_exists($_POST['sort_by'], $sort_by)) ? $_POST['sort_by'] : 'varti'; ?> <form method="post" action=""> <select name="sort_by" onchange="form.submit();"> <?php foreach($sort_by as $k=>$v) { echo "<option".(($k==$sort)?" selected='selected'":"")." value='$k'>$v</option>"; }; ?> </select> </form> <?php $sql = "SELECT * FROM blablaba ORDER BY $sort ASC"; $q = mysql_query($sql); $i = 1; if(mysql_num_rows($q)>0) { while($r=mysql_fetch_array($q)) { echo $i++; //vēl viss pārējāis }; }; Link to comment Share on other sites More sharing options...
Recommended Posts