marcho10 Posted March 3, 2007 Report Share Posted March 3, 2007 Es esmu iesaacejs. Maacos no vienas graamatas un meeginu. Graamataa bija rakstiits viens piemeers. Man ir fails form.html ar kodu: <HTML> <HEAD> <TITLE>HTML FORM</TITLE> </HEAD> <BODY> <form action = "HandleForm.php" method=post> Vārds:<input type=text name="vards"size=10br><br><br> Uzvārds:<input type=text neme="uzvards"size=10br><br><br> E-mail: <input type=text name="email" size60br><br><br> Komentāri:<textarea name="Komentari" row=50 cols=20></textarea><br> <input type=submit name="Submit" values="Submit!"> </form> </BODY> </HTML> Ir otrs fails HandleForm ar kodu: <HTML> <HEAD> <TITLE>Form results</TITLE> </HEAD> <BODY> <?php print ("Jūsu vārds ir $vards.<br>\n"); print ("Jūsu uzvārds ir $uzvards.<br>\n"); print ("Jūsu E-pasta adrese ir $email.<br>\n"); print (":<br>\n $Komentari<br>\n"); ?> </BODY> </HTML> Kaada man probleema. Kad es formaa ievadu datus un piespiezhu pogu submit man paraadaas: Notice: Undefined variable: vards in C:\EasyPHP 2.0b1\www\project1\HandleForm.php on line 2 Jūsu vārds ir . Notice: Undefined variable: uzvards in C:\EasyPHP 2.0b1\www\project1\HandleForm.php on line 3 Jūsu uzvārds ir . Notice: Undefined variable: email in C:\EasyPHP 2.0b1\www\project1\HandleForm.php on line 4 Jūsu E-pasta adrese ir . Notice: Undefined variable: Komentari in C:\EasyPHP 2.0b1\www\project1\HandleForm.php on line 5 : Kas par probleemu? Link to comment Share on other sites More sharing options...
andrisp Posted March 3, 2007 Report Share Posted March 3, 2007 (edited) Droši vien mācies no grāmatas "PHP Soli pa solim" (apt. tā) vai ne ? Tajā grāmatā māca kodēt ar register_globals = On (php konfigurācija). Tas nozīmē, ka viss, ko tu padod caur URL tiek automātiski pārveidots par parastiem mainīgajiem (piem., izsaucot index.php?x=1&y=2, mēs uzreiz varam piekļūt $x un $y). Tāpat arī ir ar datu padošanu caur formu ar POST - visi dati tiek "ieimportēti" mainīgajos. Tas nav droši! Un pēc noklusējuma php konfigurācijā šī fīča ir izslēgta. Tāpēc arī tev visticamāk nestrādā. Tā vietā izmanto $_POST un $_GET masīvus. Piemēram: print ("Jūsu vārds ir ".$_POST['vards'].".<br>\n"); Ja datus padod ar GET (piem., caur URL), tad tiem piekļūst ar $_GET['mainaigs']. Edited March 3, 2007 by andrisp Link to comment Share on other sites More sharing options...
v3rb0 Posted March 3, 2007 Report Share Posted March 3, 2007 es jau domaju, kad atkal kāds brīnīsies kāpēc php soli pa solim sarakstītās blēņas neiet. varbūt sarīkot totalizātoru, pēc cik dienām nākošais cilvēks mocīsies ar to grāmateli. visa tā viņu piemēru html tagu vazāšana līdz ir pilnīgi lieka un jauc tik galvu iesācējam. kad cilvēks sapratīs kā kaut ko padot serverim, un kā dabūt atbildi, tad html tagus viņš pats iedomāsies pierakstīt klāt. iesakumam sāc ar kaut ko šitādu izdomā ko katra rindiņa nozīmē, uztaisi vairakus texta laucinjus,izrkaso, pieraksti kadu ifu, kas izlamajas, ja formā kaut kas aizmirsts. <?php if(isset($_GET['a']) && $_GET['a']== 'paradi_ierakstito') { echo 'ierakstiji:'.$_POST['ierakstitais'].' <a href="t.php">velreiz?</a>'; } else { ?> <form action = "t.php?a=paradi_ierakstito" method=post> <input type=text name="ierakstitais"> <input type=submit name="Submit" values="Submit!"> </form> <?php } ?> Link to comment Share on other sites More sharing options...
marcho10 Posted March 4, 2007 Author Report Share Posted March 4, 2007 Es samainiiju visur print ("Jūsu vārds ir "$_Post[vards]."<br>\n"); Bet vienalga neiet, tagad raada: Parse error: parse error, unexpected T_VARIABLE in C:\EasyPHP 2.0b1\www\project1\HandleForm.php on line 7 Ko dariit? Link to comment Share on other sites More sharing options...
Grey_Wolf Posted March 4, 2007 Report Share Posted March 4, 2007 (edited) print ("Jūsu vārds ir "$_Post[vards]."<br>\n"); print (("Jūsu vārds ir %s <br>\n", $_Post['vards']); funkcija print NAV tas pats kas echo !!!! ir citi lietoshanas principi... ja gribi kaa bija tad: echo "Jūsu vārds ir " . $_Post['vards']."<br>"; edit: aa tiko vel pamaniju truks 1 punkta ( . ) edit2: un peedinju arii... $_Post[ ' vards ' ] Edited March 4, 2007 by Grey_Wolf Link to comment Share on other sites More sharing options...
Exzo Posted March 4, 2007 Report Share Posted March 4, 2007 $_POST['vards'] nevis $_Post[vards] Link to comment Share on other sites More sharing options...
marcho10 Posted March 4, 2007 Author Report Share Posted March 4, 2007 Es jau visaadi pameeginaju, bet nekaa. Link to comment Share on other sites More sharing options...
Exzo Posted March 4, 2007 Report Share Posted March 4, 2007 Ka tik neesi iekopiipeistojis print (("Jūs... ar visu lieko iekavu? Link to comment Share on other sites More sharing options...
marcho10 Posted March 4, 2007 Author Report Share Posted March 4, 2007 Nee, iekopeeju ar vienu iekavu. Link to comment Share on other sites More sharing options...
marcho10 Posted March 4, 2007 Author Report Share Posted March 4, 2007 Es tagad padomaaju varbuut man kaut kas nestraada ar konfiguraacijaam? Link to comment Share on other sites More sharing options...
marcho10 Posted March 4, 2007 Author Report Share Posted March 4, 2007 A ko neviens nevar paliidzeet ar pashu vienkaarshaako piemeeru? Link to comment Share on other sites More sharing options...
Val Posted March 4, 2007 Report Share Posted March 4, 2007 "a ko" tu pat nevari pārrakstīt to kodu pareizi, pat ja viņš tev nestrādās? http://paste.php.lv/5256 Link to comment Share on other sites More sharing options...
andrisp Posted March 4, 2007 Report Share Posted March 4, 2007 Tev taču jau palīdz. Tu tikai nepareizi viņus izmanto. Un konfigurācijas vainas šeit nav. Btw, Grey_Wolf, print un echo ir praktiski viens pats (http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40 te vairāk). Tas, piemērs, ko tu padod, nemaz nestrādā. Tu laikam sajauci ar php.net/printf Link to comment Share on other sites More sharing options...
john.brown Posted March 4, 2007 Report Share Posted March 4, 2007 Parse error: parse error, unexpected T_VARIABLE in C:\EasyPHP 2.0b1\www\project1\HandleForm.php on line 7 Nu bet kā mēs varam zināt, kas tev tur tai 7. rindiņā ir? Visticamāk, kāda glupja kļūda, tipa samikols iepriekšējā rindiņā aizmirsts, vai kas tamlīdzīgs :) Link to comment Share on other sites More sharing options...
marcho10 Posted March 4, 2007 Author Report Share Posted March 4, 2007 Jums bija taisniiba prosta glupaa kluuda,bet vienalga paldies. Link to comment Share on other sites More sharing options...
Recommended Posts