_PUIKA_ Posted June 8, 2011 Report Share Posted June 8, 2011 (edited) Labvakar! Ceru neesmu kļuvis apnicīgs, bet nu ir maza problēma. Kods reāli izvada rezultātu, bēēt.. kad pieprasu 'assoc' izvadi, viņš izvada man tikai 1 ierakstu, lai arī datu bāzē ir 2 ieraksti. Principā, lai vai ko es tur pie $name un iekš $query pieprasītu, viņš atgriezīs pieprasīto rezultātu no TIKAI 1 datubāzes tabulas rindas. Kur varētu būt problēma? Kodu var apskatīt šeit! P.s. Un es izsaucu funkciju šādi: query("array", "SELECT email FROM users", "email"); Paldies jau iepriekš! Edited June 8, 2011 by _PUIKA_ Link to comment Share on other sites More sharing options...
briedis Posted June 8, 2011 Report Share Posted June 8, 2011 Negribi pastāstīt, kāds tolks ir no šīs pārbaudes? elseif( $this->type == 'MYSQl_ASSOC' ){ $this->type = 'MYSQl_ASSOC'; } Palasi, lūdzu, ko nozīmē šis return atslēgvārds - http://php.net/manual/en/function.return.php Link to comment Share on other sites More sharing options...
_PUIKA_ Posted June 8, 2011 Author Report Share Posted June 8, 2011 (edited) Negribi pastāstīt, kāds tolks ir no šīs pārbaudes? elseif( $this->type == 'MYSQl_ASSOC' ){ $this->type = 'MYSQl_ASSOC'; } Palasi, lūdzu, ko nozīmē šis return atslēgvārds - http://php.net/manua...tion.return.php es no iepriekšējā koda, kur tu man parādīji piemēru.. definēju ( JA $type ir NULL izvadīt NULL else .. un tad ar ELSEIF es uzskaitu 3 tipus, kurus mysql atpazīst - MYSQL_ASSOC unn NUM) uhh sorry.. 1viet pilnīgi bezjēga pagarinu kodu.. vajadzēja pēdējā elseif pievienot vēl MYSQL_BOTH.. bet ok tas.. tagad neko nemaina lietas būtībā.. ok saīsinu un ar RETURN palīdzību izsaucu funkcijas argumenta vērtību.. bet patlaban tas neko nemaina.. primārā problēma ir 1 rindas izvadīšana 2 vietā.. ar mysql_query pieprasījumu un manas funkcijas ievadītajām argumentu vērtībām. [edited] cai arī maina!?? palabo mani ja kļūdos.. es tikmeŗ pārlasīšu php dokumentāciju par return :D p.s. no offense, bet esi iecietīgāks. :) Man ar te nav jautri visu nakti lasīt manāļus un sēdēt 20 forumos. :)Bet zināšanas prasa upurus. Edited June 8, 2011 by _PUIKA_ Link to comment Share on other sites More sharing options...
_PUIKA_ Posted June 8, 2011 Author Report Share Posted June 8, 2011 Tikko pakonsultējos ar kādu cilvēku.. tā vien ir.. esmu uzrakstījis bezjēdzīgi garu kodu.. pagaidām palieku pie domas tiešām pārrakstīt un definēt klasē INSERT, QUERY, SELECT, funkcijas.. Paldies tikuntā. Link to comment Share on other sites More sharing options...
m8t Posted June 8, 2011 Report Share Posted June 8, 2011 Kā darbojas funkcijas: 1. Tiek izsaukta funkcija query("array", "SELECT email FROM users", "email"); 2. Pie pirmā return dotā vērtība tiek atgriezta. 3. The end. Kā tu domā, ka darbojas funkcijas (skatoties pēc šī koda): 1. Tiek izsaukta funkcija 2. Tiek ciklēts cauri visai funkcijai (no augšas līdz apakšai, @return neņemot vērā) 3. Kad viss izciklēts -> tikai tad atgriežam informāciju ar return. Kļūda: Tevis izveidotajā CIKLĀ tiek atgrieztas visas nepieciešamās rindas - viena pēc otras. Bet tu atgriez pirmo, kas ir izvilkta no datubāzes. Link to comment Share on other sites More sharing options...
daGrevis Posted June 8, 2011 Report Share Posted June 8, 2011 Nav jēgas tam, ko "būvē". Link to comment Share on other sites More sharing options...
briedis Posted June 8, 2011 Report Share Posted June 8, 2011 Nu ja tu izstudētu manuāli, vismaz konkrēti to ko devu par return, tad saprastu kāpēc tev tas kods neJiet. Īsāk sakot - return pārtrauc funkcijas izpildi un atgriež rezultātu. īss piemērs: function boo(){ return 123; //Kods zemāk NEKAD neizpildīsies return 345; } $a = boo(); echo $a; //Izvadīs 123, nevis 345 Link to comment Share on other sites More sharing options...
_PUIKA_ Posted June 8, 2011 Author Report Share Posted June 8, 2011 Liels paldies! Tiešām stulba kļūda. Šonakt palasīju par return. Salaboju kodu. Viss strādā! Link to comment Share on other sites More sharing options...
Recommended Posts