kenshin Posted April 21, 2006 Report Share Posted April 21, 2006 Tatad saku macities PHP, bet jau sakuma saskaros ar iesaceja nesaprasanu, proti ar komandu isset() Lai nu ka trenninnolukos meginaju uztaisit vienkarsu skriptu, kas stabina izvada ievaditos ciparus no viens lidz n: <FORM method=POST> Daudzums <INPUT type=integer name=c> <INPUT type=submit value="Apstiprinat" size=200px> </FORM> <?php function foo($b) { $a=1; while ($a <= $b): if ((($a % 10) == 1) and (($a % 100) <> 11)) { echo $a . " cipars" ; } else { echo $a . " cipari" ; } $a++; ?> <br> <?php endwhile; } if (isset($_POST['c'])) { $m=$_POST['c']; } else { $m=2; } foo($m); ?> Pati komanda strada, bet neskatoties uz isset izmantosanu pirmoreiz atverot vienalga blauj, ka nav nodots mainigais. Es laikam neesmu izpratis isset izmantosanu, kads man var isti izskaidrot manu kludu ? Link to comment Share on other sites More sharing options...
Delfins Posted April 21, 2006 Report Share Posted April 21, 2006 Manuālī taču aprakstīts, ko tā komanda dara... Link to comment Share on other sites More sharing options...
kenshin Posted April 21, 2006 Author Report Share Posted April 21, 2006 Ja, bet cik es saprotu isset parbauda vai ir nodots mainigais, tomer kad meginu lietot nestrada, tatad es nepareizi lietoju... ? Link to comment Share on other sites More sharing options...
Stopp Posted April 21, 2006 Report Share Posted April 21, 2006 if (isset($_POST['c'])) { $m=$_POST['c']; } else { $m=2; } vismaz šeit viss ir pareizi. ka tik tu nemēģini darīt kaut ko ar mainīgo $m pirms funkcijas izsaukšanas. Link to comment Share on other sites More sharing options...
bubu Posted April 21, 2006 Report Share Posted April 21, 2006 Daudzums <INPUT type=integer name=c>Kas tas par dīvainu type=integer? Ja tā rakstīts kādā grāmatā, tad izmet to grāmatu laukā. Jo nav nekāda type=integer.Pati komanda strada, bet neskatoties uz isset izmantosanu pirmoreiz atverot vienalga blauj, ka nav nodots mainigais.Kurā rindā to saka? Kas tu domā mums te gaišreģu klubiņš? Link to comment Share on other sites More sharing options...
Gu6ax Posted April 21, 2006 Report Share Posted April 21, 2006 (edited) Funkcija isset() darbojas sekojoshi - vinja paarbauda vai attieciigais mainiigais ir uzstaadiiic tas ir vai vinjam ir kaada veertiba!!! bet formaam es ieteitu lietot empty() :) un veel tev taa forma ir uzrakstiita bet tu vareetu mums arii ieposteet uz kuru failu sii forma tiek nosuutiita! jo varbuut faila nosaukums nav noraadiits pareizi! :) Edited April 21, 2006 by Gu6ax Link to comment Share on other sites More sharing options...
kenshin Posted April 21, 2006 Author Report Share Posted April 21, 2006 Kas tas par dīvainu type=integer? Ja tā rakstīts kādā grāmatā, tad izmet to grāmatu laukā. Jo nav nekāda type=integer.Kurā rindā to saka? Kas tu domā mums te gaišreģu klubiņš? Aaaa, atvainojiet par to integer, es php saku macities tikai tagad, bet pascal man ir domasana jau paris gadus, citiem vardiem vienkarsi banala kluda. Bet par kludas pazinojumu, tas ir rinda 23, jeb $m=$_POST['c']; Link to comment Share on other sites More sharing options...
Stopp Posted April 21, 2006 Report Share Posted April 21, 2006 Funkcija isset() darbojas sekojoshi - vinja paarbauda vai attieciigais mainiigais ir uzstaadiiic tas ir vai vareetu teikt vai vinjam ir kaada veertiba!!! nu kā nu to ņem. ja tukšums arī skaitās vētība, tad jā. pamēģini bez tiem if un else: $m=(isset($_POST['c']) ? $_POST['c'] : '2'); kaut arī tik tiešām šaubos, vai tas ko dos ;) Link to comment Share on other sites More sharing options...
Gu6ax Posted April 21, 2006 Report Share Posted April 21, 2006 nu kā nu to ņem. ja tukšums arī skaitās vētība, tad jā. nu tukshums nav veertiibva tapeec jaataisa ir trim() :) Link to comment Share on other sites More sharing options...
kenshin Posted April 21, 2006 Author Report Share Posted April 21, 2006 bet formaam es ieteitu lietot empty() :) un veel tev taa forma ir uzrakstiita bet tu vareetu mums arii ieposteet uz kuru failu sii forma tiek nosuutiita! jo varbuut faila nosaukums nav noraadiits pareizi! :) Eeee, par empty() gan es neko nezinu. Un uz failu es formu nesutu, citiem vardiem mainigo nosutu tai pasai lapai kura ir forma. Ja es ievadu laucina skaitli tas skripts strada labi, problemas rodas tikai atverot pirmo reizi. Link to comment Share on other sites More sharing options...
Gu6ax Posted April 21, 2006 Report Share Posted April 21, 2006 Eeee, par empty() gan es neko nezinu. Un uz failu es formu nesutu, citiem vardiem mainigo nosutu tai pasai lapai kura ir forma. Ja es ievadu laucina skaitli tas skripts strada labi, problemas rodas tikai atverot pirmo reizi. zin ko!! panjem atrodi Ziivarta graamatu un lasi tur taas funkcijas ir ljoti labi noraadiitas! un kaadu eroru vinsh tev izmet?! Link to comment Share on other sites More sharing options...
kenshin Posted April 21, 2006 Author Report Share Posted April 21, 2006 nu kā nu to ņem. ja tukšums arī skaitās vētība, tad jā. pamēģini bez tiem if un else: $m=(isset($_POST['c']) ? $_POST['c'] : '2'); kaut arī tik tiešām šaubos, vai tas ko dos ;) Hmm, patiesiba patiesam nostradaja un viss iet labi. Paldies, lai gan es piekritu, ka tas ir divaini. Link to comment Share on other sites More sharing options...
john.brown Posted April 21, 2006 Report Share Posted April 21, 2006 (edited) Vispār interesanti. Arī pats pirmais variants ne par ko nebļauj :) Un izņemot integeru tur viss bija kārtībā. Tīri ziņkāres apmierināšanai, ko konkrēti viņš teica (orģināl valodā)? 2 Gu6ax Dotajā gadījumā arī "tukšums" ir vērtība, un ar trim() tam nav nekāda sakara. isset() pārbauda, vai variablis vispār ir definēts. Ja man būs: $var = NULL; isset($var).... arī atgriezīs true. Edited April 21, 2006 by john.brown Link to comment Share on other sites More sharing options...
Delfins Posted April 22, 2006 Report Share Posted April 22, 2006 Tukšums un NULL ir vērtības!!! isset() pārbauda runtime mainīgo hash-tabulu un tāda mainīgā esamību un viss... Tāpat kā klasiskajā C/C++/Pascal, pirms pointera lietošanas tas ir jāizveido.. char *c = new char; Link to comment Share on other sites More sharing options...
Mister Smith Posted April 25, 2006 Report Share Posted April 25, 2006 Isset pārbauda, vai mainīgais exsistē, rupji runājot, značit, pirmoreiz lapu atverot, tas vēl neeksistē (POST mainīgais) rezultāts loģisks, ne? :) Link to comment Share on other sites More sharing options...
Recommended Posts