Avatar billede midea Nybegynder
18. november 2007 - 16:45 Der er 13 kommentarer og
1 løsning

Er der syntax fejl i min kode?

Hej Eksperter

Jeg er igang med at gennemgå min første begynderlærebog i php:

Her er en kode, skrevet lige af fra bogen - den virker bare ikke på min server. Det skal nævnes, at jeg er halvt igennem bogen, så det er ikke fordi serveren er sat forkert op (tror jeg). Er der en syntax fejl? På forhånd tak.

<html>
<head>
<title>Testdrive</title>

<body>
<?
if ($navn) {
    echo "Hej $navn, hvordan går det?";
}
else
{
?>
<form method="post" action="navn.php">
Indtast dit navn
<input type="text" name="navn">
<input type="submit" value="Send">
</form>
<?
}
?>
</body>
</html>
Avatar billede leif Seniormester
18. november 2007 - 16:56 #1
Det må være en gammel bog, da der er fejl i forhold til en standard server idag.

Fx. skal $navn i dette tilfælde være $_POST("navn")
Avatar billede midea Nybegynder
18. november 2007 - 17:03 #2
OK - jeg kan se, bogen er fra 2002 - skal jeg kyle den ud?
Avatar billede leif Seniormester
18. november 2007 - 17:09 #3
Du vil sikkert kunne lære nogen basis ting, hvis du er opmærksom på følgende:

Variabler fra adressen og fra Forms med method=get skal trækkes med $_GET("variabelnavn")

Variabler fra forms med method=post skal trækkes med $_POST("variabelnavn")
Avatar billede midea Nybegynder
18. november 2007 - 17:11 #4
Hvodan ville koden så se ud, hvis det skal være "rigtigt"?
Avatar billede leif Seniormester
18. november 2007 - 17:25 #5
if ($navn) {

er

if ($_POST["navn"]) {
Avatar billede midea Nybegynder
18. november 2007 - 17:39 #6
Giver outputtet:

Hej , hvordan går det?

Skulle gerne give navnet - før kommaet...
Avatar billede leif Seniormester
18. november 2007 - 17:41 #7
Hvad tror du det skal rettes til ?
Avatar billede leif Seniormester
18. november 2007 - 17:41 #8
echo "Hej $navn, hvordan går det?";


til:

  echo 'Hej $_POST["navn"], hvordan går det?';
Avatar billede midea Nybegynder
18. november 2007 - 18:19 #9
Giver mig:

Hej $_POST["navn"], hvordan går det?
Avatar billede leif Seniormester
18. november 2007 - 18:31 #10
Jeg plejer at lave:

echo 'Hej '.$_POST["navn"].', hvordan går det?';
Avatar billede midea Nybegynder
18. november 2007 - 18:53 #11
Ja, se det var jo noget helt andet - tusind tak for din tid...
- jeg har smidt den bog ud og bestilt en anden der omhandler PHP5:

Beginning PHP and MySQL 5: From Novice to Professional, Second Edition

Fra Amazon - den kommer på onsdag, og så er det (næsten) forfra...

Endnu en gang tak - smider du et svar?
Avatar billede leif Seniormester
18. november 2007 - 19:01 #12
Det var så lidt
Avatar billede leif Seniormester
18. november 2007 - 19:16 #13
Takker
Avatar billede majbom Novice
19. november 2007 - 09:06 #14
du kan også bruge gåseøjne og slippe for punktummerne:

echo "Hej $_POST['navn'], hvordan går det?";
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester