andrisp Posted March 27, 2007 Report Share Posted March 27, 2007 1) Parastas formas un pavisam nedaudz javascripta. Sākumā rādas viens selekets, pie nomaiņas ar javascript submitējam formu. Php pusē apstrādājam datus un uzģenerējam formu pa jaunam, tikai tagad tajā būs divi selekti. Utt. Var arī vispār bez javascript iztikt. Pie katra selekta pa submit. 2) Ja datu nav pārāk daudz, tad saģenerēt Javascript masīvu ar visiem datiem. Tad iekš browsera ar javascript atkarībā no iepriekšējā selekta vērtības ģenerēt nākamā selekta vērtības. 3) Pieprasīt datus no Ajax un apdeitot selektus. PS. Nav smuki pilnībā nomainīt saviem postiem tekstu. Tagad mans iepriekšējais posts tāds neloģisks izskatās. Link to comment Share on other sites More sharing options...
Agnisr Posted March 27, 2007 Report Share Posted March 27, 2007 Vari, luudzu, pastaastiit siikaak par pirmo variantu ar javascript, javascriptu pilniibaa nepaarzinu ieprieksh nav bijusi vajadziibas peec vinja, peec kaadiem keywordiem vareetu kaut ko liidziigu samekleet ieksh googles? Link to comment Share on other sites More sharing options...
andrisp Posted March 27, 2007 Report Share Posted March 27, 2007 http://www.google.lv/search?hl=lv&q=onchange+submit Link to comment Share on other sites More sharing options...
Agnisr Posted March 27, 2007 Report Share Posted March 27, 2007 andrisp, paldies. Bet... biku saakaas probleemas, ja pie implode nodzeesham ' AND ', tad vinjs atrod pat taadus datus, kas neatbilst nosaciijumiem, bet ja atkal ierakstam atpakalj, tad rezultaatu nemaz neatrod. Iisti neizprotu, kas tas implode pa zveeru ir, nemaaku probleemu atrisinaat: Kods: http://paste.php.lv/5368 Link to comment Share on other sites More sharing options...
andrisp Posted March 27, 2007 Report Share Posted March 27, 2007 1) nevis kautkas = '%bla%', bet gan vienkārši kautkas = 'bla' 2) tur tas ' AND ' ir obligāti vajadzīgs. Pamēģini uztaisīt echo $sql un paskatīties pēc kā tev tas kverijs šobrīd izskatās. 3) implode masīva elementus sakabina vienā stringā. Pa starpu vēl katram elementam ieliek to, ko būsi norādījis kā pirmo parametru. Tas viss ir manuālī. 4) 94. rindiņa ir pilnībā lieka Link to comment Share on other sites More sharing options...
Agnisr Posted March 27, 2007 Report Share Posted March 27, 2007 (edited) paldies, viss aizgaaja nodzeesu to 94 rindinju un paskatiijos liiko $sql, un sapratu, ka man nemaz nav empty, bet gan ja neko nenoraada vinjs suuta 0-es, paarlaboju un tagad viss ir kaartiibaa, liels paldies! EDIT: ja nenoraada nevienu parametru, tad ir kluuda kods: http://paste.php.lv/5369 kluudas pazinjojums: Notice: Undefined variable: where in C:\Program Files\xampp\htdocs\emauto\index.php on line 110 Warning: implode() [function.implode]: Bad arguments. in C:\Program Files\xampp\htdocs\emauto\index.php on line 110 Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\Program Files\xampp\htdocs\emauto\index.php on line 113 kluudas pazinjojums ir taapeec, ka $SQL = SELECT * FROM `records` WHERE, kaa to vareetu visvieglaak apiet? Kaut kaa neliekas ka veel viena nosaciijuma rakstiishana kur tip visi ir nulles, tad lai taisa atsevisku $sql buutu vislietderiigaak. jaabuut vienkaarshaakam panjeemienam! Edited March 27, 2007 by Agnisr Link to comment Share on other sites More sharing options...
andrisp Posted March 27, 2007 Report Share Posted March 27, 2007 Pārbaudi vai $where masīvs satur kaut vienu elementu. Ja jā, tad tikai taisi kveriju, izsauc no datubāzes un drukā. if (count($where) > 0) { // ir ok, izpildam kveriju } Link to comment Share on other sites More sharing options...
Agnisr Posted March 27, 2007 Report Share Posted March 27, 2007 if (count($where) > 0) { $sql = "SELECT * FROM `records` WHERE ".implode(' AND ', $where).""; $res = mysql_query($sql, $db); while ($row = mysql_fetch_assoc($res)) { echo '<div class="result"><b>Kategorija :</b> '.$row['cat'].'<br /><b>Auto :</b> '.$row['auto'].'<br /><b>Modelis :</b> '.$row['model'].'<br /><b>No :</b> '.$row['year_s'].'<br /><b>Līdz :</b> '.$row['year_b'].'<br /><b>Apraksts :</b> '.$row['comment'].'</div>'; echo "\n"; } } else { echo 'Norādiet kaut vienu parametru'; } 110. rindinja : if (count($where) > 0) { Bez else pazinjojuma paraadas arii shaada kluuda: Notice: Undefined variable: where in C:\Program Files\xampp\htdocs\emauto\index.php on line 110 Link to comment Share on other sites More sharing options...
andrisp Posted March 27, 2007 Report Share Posted March 27, 2007 Tās 94. rindiņas vietā, ko teicu, ka vajag izdzēst, ievieto $where = array(); PS. Neiesaku pārbaudīt vai postošana notikusi pēc if (isset($_POST['submit'])) , kur submit elements ir submit poga. Jo formu var nopostot arī bez pogas nospiešanas (ar enter, vai arī vēlāk, kad ieviesīsi javascript onchange submit). Un, ja forma tiek submitota bez pogas nospiešanas, tad iekš $_POST tā neparādas. Labāk iesaku šādi: if (count($_POST) > 0) Link to comment Share on other sites More sharing options...
Recommended Posts