webForumDet fria alternativet

Ljuger boken??

9 svar · 476 visningar · startad av MickeA.com

MickeA.comMedlem sedan feb. 20034 441 inlägg
#1

Hej

Har börjat vädigt smått med php. HAr en bok som heter jsut "php" av Larry Ullman. Det kör iho sig redan i första övningen.

Den går ut på att skapa ett forumlär, som man sedan postar till ett phpscript som endast skriver ut det man skrivit i formuläret:

form.htm

<html>
<head>
<title>Formulär</title>
</head>
<body>
<form action='handleform.php' method='post'>
Förnamn <input type='text' name="FirstName" size='20'><br>
Efternamn <input type='text' name="LastName" size='40'><br>
Emailadress <input type='text' name="Email" size='60'><br>
Kommentar <textarea name="Comments" rows='5' cols='40'></textarea><br><br>
<input type='submit' value='Skicka'>
</form>
</body>
</html>

Handleform.php:

<html>
<head>
<title>Formulär</title>
</head>
<body>
<?php
	print "Ditt Förnamn är $FirstName .<br>\n";
	print "Ditt Efternamn är $LastName .<br>\n";
	print "Din Emailadress är $Email .<br>\n";
	print "Kommentarerna är $Comments .<br>\n";
?>
</body>
</html>

Ger:

Notice: Undefined variable: FirstName in e:\flash\projekt\Php\handleform.php on line 7
Ditt Förnamn är .

Notice: Undefined variable: LastName in e:\flash\projekt\Php\handleform.php on line 8
Ditt Efternamn är .

Notice: Undefined variable: Email in e:\flash\projekt\Php\handleform.php on line 9
Din Emailadress är .

Notice: Undefined variable: Comments in e:\flash\projekt\Php\handleform.php on line 10
Kommentarerna är .

Jag har skrivit EXAKT det som står i boken, tycker det här verkar himla konstigt. HAr boken fel utan o innan? Boken är för php4 och jag har php4.ngnting installerat.

K@llenMedlem sedan mars 20032 667 inlägg
#2

Nej, det beror säkerligen på vilken inställning du har i php.ini. Testa och ta för vana att skriva så här:

<?php
    print "Ditt Förnamn är " . $_POST['FirstName'] . "<br>\n";
    print "Ditt Efternamn är " . $_POST['LastName'] . "<br>\n";
    print "Din Emailadress är " . $_POST['Email'] . "<br>\n";
    print "Kommentarerna är " . $_POST['Comments'] . "<br>\n";
?>
MickeA.comMedlem sedan feb. 20034 441 inlägg
#3

Hmm, det första felmesset försvann, men ett nytt skapades:

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in e:\flash\projekt\Php\handleform.php on line 7

Suck....

K@llenMedlem sedan mars 20032 667 inlägg
#4

Jag missade ett fel du skrivit, hann du se min redigering?

MickeA.comMedlem sedan feb. 20034 441 inlägg
#5

HeHe, nej, det hann jag inte, nu funkar det iaf. tack.

Hur kan det komma sig att det står som det göra i boken då? Den tar inte överhuvudtaget upp $_POST[''] osv. ?

K@llenMedlem sedan mars 20032 667 inlägg
#6

Beror på vilken inställning du har på register globals. Är den on kan du ta emot alla variabler som det står i boken. Är den off, måste du hämta den på "rätt" sätt:

$_POST['']
$_GET['']
$_SESSION['']
...
...
MickeA.comMedlem sedan feb. 20034 441 inlägg
#7

Ok, tack för hjälpen

Alpha IIIMedlem sedan dec. 200381 inlägg
#8

Ganska enkelt fast jag lärde mig php för 2 dagar sen

så fort jag såg koden byte jag ut metho="post" till get

sen handleform.php $_POST till $_GET

Vola Funkar

Alpha IIIMedlem sedan dec. 200381 inlägg
#9

method="post" menade jag =)

Alpha IIIMedlem sedan dec. 200381 inlägg
#10

till $_GET

132 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)