hackerman Posted January 31, 2008 Report Share Posted January 31, 2008 Es izvadu vairākas <select> izvēlnes. Itkā viņas neko daudz neatšķiras - katrā ir tikai divas izvēles - jā vai nē. Nu tas ir domāts, lai admins varētu izvēlēties tur kautko. Izvadu vairākus datus, līdzarto nāk vairākas tās izvēlnes līdzi. <select name='status'> <option value='yes'>Yes</option> <option value='no'>No</option> </select> Problēma sākās ar to, kad mēģinu pēc submit pogas nospiešanas apstiprināt izmaiņas. Teiksim man tur ir 4 izvēlnes, bet tas pārbaudes fails jau viņas neatšķir. Name atribūts jau ir aizņemts. Iedomājos par id atribūtu, bet pēc testēšanas sapratu, ka tā atribūta datus viņš nemaz nesūta nekur. Link to comment Share on other sites More sharing options...
andrisp Posted January 31, 2008 Report Share Posted January 31, 2008 Izmanto atšķirīgus name. Link to comment Share on other sites More sharing options...
hackerman Posted January 31, 2008 Author Report Share Posted January 31, 2008 A tur ir "automātiska sistēma" :P Teiksim, tur no datubāzes izvelk datus un piedāvā dzēst/nedzēst. Nu iekš while visa tā padarīšana. Link to comment Share on other sites More sharing options...
andrisp Posted January 31, 2008 Report Share Posted January 31, 2008 Nu un ? Visu var uztaisīt. Name vari norādīt, piem., status[1][], kur cipars ir ieraksta ID. PHP pusē pēc tam tev būs $_POST['status'] masīvs, kur būs visi dati. Link to comment Share on other sites More sharing options...
hackerman Posted January 31, 2008 Author Report Share Posted January 31, 2008 Nu un kā tad tālāk izķidāt to array'u, lai varētu smuki izpildīt kveriju? Link to comment Share on other sites More sharing options...
andrisp Posted January 31, 2008 Report Share Posted January 31, 2008 Ciklējot tam cauri ? foreach ? Link to comment Share on other sites More sharing options...
hackerman Posted January 31, 2008 Author Report Share Posted January 31, 2008 Paldies, sanāca. Link to comment Share on other sites More sharing options...
hackerman Posted February 1, 2008 Author Report Share Posted February 1, 2008 Tagad atkal kautkas līdzīgs. Tāpat kā pirmīt, datus izvada no datubāzes, viss iekš while. Un mēģinu panākt, lai iekš to dropdownmenu parādās skaitļi tādā intervālā, cik vispār tie ieraksti ir. Tas būtu, ja man tiek izvadīti 7 ieraksti, tad man parādās 7 dropdownmenu un iekš katra value būtu 1-7. Pats te pačakarējos ar tiem cikliem, saāca visādi, bet ne tā kā vajag. Nu itkā jau kā alternatīvu varētu uztaisīt input lauku, kur lietotājs pats ieraksta, bet nu es negribu piekāpties. Link to comment Share on other sites More sharing options...
andrisp Posted February 1, 2008 Report Share Posted February 1, 2008 1) Izskaiti cik ierakstu. 2) echo <select> for($i = 0; i < ierakstu_skaits; $i ++) { echo <option> } echo </select> Link to comment Share on other sites More sharing options...
hackerman Posted February 1, 2008 Author Report Share Posted February 1, 2008 Hmm... Biedzot arī sapratu savu kļūdu. Mans kods izskatījās ~ tā: <? $ii=0; while($row=mysql_fetch_array($res)) { $ii++; echo "<select>"; for($i = 1; $i <$ii; $i ++) { echo "<option>$i</option>"; } echo '</select>'; } Vaina ir ierakstu skaita noteikšanā... :) Link to comment Share on other sites More sharing options...
hackerman Posted February 1, 2008 Author Report Share Posted February 1, 2008 Tagad sāku domāt, vai tomēr nepāriet uz to parasto input lauku... Vajag dabūt tā, lai tajā dropdownmenu parādās esošā vērtība. Nu tad ir jopojām tas dropdownmenu ar tādu intervālu, cik ir ieraksti. (5 ieraksti = 5 izvēlnes + iekš izvēlnēm arī intervāls no 1-5). Tas taka būtu. Bet tagad vajag dabūt tā, ja datubāzē ir jau uzstādīta vērtība, teiksim, man 2. ierakstam vērtība ir jau uzstādīta kā 5, tad man vajag, lai viņš parāda tā, lai tas menu sākas ar to 5 (Nu reāli tur uzrādās tas 5, bet joprojām paliek iespēja nospiest to menu un izvēlēties, piemēram, vērtību 3). Nu pirmīt, kad vajadzēja tikai yes/no, tad neko labāku nevarēdams izdomāt, es uztaisīju tādu primitīvu sistēmu - nodefinēju abus variantus - vienu, kas sākas ar no, bet otru, kas sākas ar yes, un tad, vienkārši, pēc pārbaudes izvadu attiecīgo. Bet tagad tāda ķēmošanās neies krastā :) Link to comment Share on other sites More sharing options...
andrisp Posted February 1, 2008 Report Share Posted February 1, 2008 echo <select> for($i = 0; i < ierakstu_skaits; $i ++) { echo '<option '.(ieraksta_vertiba == i ? 'selected="selected"' : '').'>'; } echo </select> Link to comment Share on other sites More sharing options...
hackerman Posted February 1, 2008 Author Report Share Posted February 1, 2008 Paldies, sataisīju. Link to comment Share on other sites More sharing options...
Recommended Posts