Echo wordt niet weergegeven
Ik kan in de url wel de variabelen zien, maar de echo tekst zie ik niet.
Welke fout maak ik hier?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<html>
<body>
<?php
if(isset($zend)==0){
?>
</body>
<form name="formulier13" action="formulier13.php" method="get">
Je kunt hier je naam invoeren:<input type=text
name=naam><br><br>
Geef hier de link van je site op:<input type=text
name=urlnaam><br><br>
<input type=submit name=zend>
</form>
<body>
<?php
} else {
echo "<br>Hartelijk welkom, $naam $urlnaam </b>";
}
?>
</body>
</html>
<body>
<?php
if(isset($zend)==0){
?>
</body>
<form name="formulier13" action="formulier13.php" method="get">
Je kunt hier je naam invoeren:<input type=text
name=naam><br><br>
Geef hier de link van je site op:<input type=text
name=urlnaam><br><br>
<input type=submit name=zend>
</form>
<body>
<?php
} else {
echo "<br>Hartelijk welkom, $naam $urlnaam </b>";
}
?>
</body>
</html>
- Aar -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 16/10/2014 15:14:57 door - Ariën -
De voorwaarde zul je moeten aanpassen naar iets wat wel benoemd wordt.
$zend zal NOOIT bestaan, $_GET['zend'] kan SOMS bestaan. Om dit te testen gebruik je isset()
body afsluiten aan het begin van je pagina en dan verder weer openen
laat de action attribuut maar leeg
HTML attribute waarden zet je tussen ""
Bij een input type is de value attribuut verplicht.
Begin met PHP en ga dan over op de output!
Hou variabelen buiten de tekst en gebruik waar het kan single quotes (') voorbeeldje:
Je hebt een </b> zonder <b>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
$verzonden = false;
if(isset($_GET['zend']))
$verzonden = true;
?>
<html>
<body>
<?php if($verzonden) { ?>
<form name="formulier13" action="" method="get">
Je kunt hier je naam invoeren:<input type="text" name="naam"><br><br>
Geef hier de link van je site op:<input type="text" name="urlnaam"><br><br>
<input type="submit" value="zend">
</form>
<?php } else { ?>
Hartelijk welkom, <?php echo $naam . ' ' . $urlnaam; ?>
<?php } ?>
</body>
</html>
$verzonden = false;
if(isset($_GET['zend']))
$verzonden = true;
?>
<html>
<body>
<?php if($verzonden) { ?>
<form name="formulier13" action="" method="get">
Je kunt hier je naam invoeren:<input type="text" name="naam"><br><br>
Geef hier de link van je site op:<input type="text" name="urlnaam"><br><br>
<input type="submit" value="zend">
</form>
<?php } else { ?>
Hartelijk welkom, <?php echo $naam . ' ' . $urlnaam; ?>
<?php } ?>
</body>
</html>
Gewijzigd op 16/10/2014 10:10:35 door Frank Nietbelangrijk
De eerste versie van het script had ik een fout gemaakt door de variabele (iset($zend) niet te laten terugkomen in <input type=submit name=verzenden>
De eerste keer dat ik het script uitvoerde bleef het in de browser hangen en begon mijn PC te rebooten.
Dat is echt absurd, het is een vrij nieuw model en ik heb weinig tot geen problemen. Eerst dacht ik nog aan hartbleed (ik heb IE als standaard browser voor WAMP) maar ik ben eigenlijk goed geschrokken van zo'n reboot.
Bij PHP is me niet duidelijk wat de vorm van de code is. Syntax heet dat vlg. mij. De ene keer werken programma's met "" en dan met ''. Ook het wisselen van html en php in een script is onlogisch. Het lijkt te gaan om maniertjes en niet om vaste regels waarmee je kunt spelen.
Hoe en waar of welk boek. Bij voorkeur NL talig is duidelijk in de syntaxis en behandeld uitgebreid alle mogelijkheden.
Als dat boek over PHP 4 gaat kan het al 10 jaar oud zijn en behoorlijk verouderd. Mijn advies: Gooi het boek weg! Je hebt er niks aan!
Het is van 2004. Dus het is tamelijk waardeloos als ik je zo moet geloven. Aangezien dit niet werkt moet ik je toch serieus nemen. Wat zou je adviseren om wel te lezen?
Mocht je iets over PHP 6 vinden, dan zou ik het ook liever vermijden omdat dat niet concreet aansluit op de toekomst van PHP. Dan heb ik het zozeer over bepaalde functies. PHP 6 is een proefballonnetje wat geknapt is en wat over is gelopen naar PHP 7 wat nu ontwikkeld wordt.
Johan West op 16/10/2014 10:43:51:
De eerste keer dat ik het script uitvoerde bleef het in de browser hangen en begon mijn PC te rebooten.
Een herstart door een php-script vind ik wel heel bijzonder.
Johan West op 16/10/2014 10:43:51:
Bij PHP is me niet duidelijk wat de vorm van de code is. Syntax heet dat vlg. mij. De ene keer werken programma's met "" en dan met ''. Ook het wisselen van html en php in een script is onlogisch. Het lijkt te gaan om maniertjes en niet om vaste regels waarmee je kunt spelen.
PHP is vrij soepel. Toch is het verstandig om een script te beginnen met PHP. Gegevens controleren, ophalen data (mysqli/pdo), etc. Daarna pas, met HTML (en waarnodig PHP) de output.
" is in principe voor HTML. PHP gebruikt '
Maar het is niet zo dat als je " gebruikt in PHP het script niet meer werkt (er van uitgaande dat je consequent bent in gebruik).
Zet altijd error-reporting aan, als je aan het testen / maken bent.
- Aar -:
Topictitel heb ik zojuist aangepast in wat duidelijkers. Gebruik in het vervolg een titel die je probleem of vraagstelling omschrijft. Alvast bedankt!
Frank Nietbelangrijk op 16/10/2014 10:06:41:
Allright: mijn opsomming ( positief bedoeld om je te helpen :-) )
$zend zal NOOIT bestaan, $_GET['zend'] kan SOMS bestaan. Om dit te testen gebruik je isset()
body afsluiten aan het begin van je pagina en dan verder weer openen
laat de action attribuut maar leeg
HTML attribute waarden zet je tussen ""
Bij een button is de value attribuut verplicht.
Begin met PHP en ga dan over op de output!
Hou variabelen buiten de tekst en gebruik waar het kan single quotes (') voorbeeldje:
Je hebt een </b> zonder <b>
$zend zal NOOIT bestaan, $_GET['zend'] kan SOMS bestaan. Om dit te testen gebruik je isset()
body afsluiten aan het begin van je pagina en dan verder weer openen
laat de action attribuut maar leeg
HTML attribute waarden zet je tussen ""
Bij een button is de value attribuut verplicht.
Begin met PHP en ga dan over op de output!
Hou variabelen buiten de tekst en gebruik waar het kan single quotes (') voorbeeldje:
Je hebt een </b> zonder <b>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
$verzonden = false;
if(isset($_GET['zend']))
$verzonden = true;
?>
<html>
<body>
<?php if($verzonden) { ?>
<form name="formulier13" action="" method="get">
Je kunt hier je naam invoeren:<input type="text" name="naam"><br><br>
Geef hier de link van je site op:<input type="text" name="urlnaam"><br><br>
<input type="submit" value="zend">
</form>
<?php } else { ?>
Hartelijk welkom, <?php echo $naam . ' ' . $urlnaam; ?>
<?php } ?>
</body>
</html>
$verzonden = false;
if(isset($_GET['zend']))
$verzonden = true;
?>
<html>
<body>
<?php if($verzonden) { ?>
<form name="formulier13" action="" method="get">
Je kunt hier je naam invoeren:<input type="text" name="naam"><br><br>
Geef hier de link van je site op:<input type="text" name="urlnaam"><br><br>
<input type="submit" value="zend">
</form>
<?php } else { ?>
Hartelijk welkom, <?php echo $naam . ' ' . $urlnaam; ?>
<?php } ?>
</body>
</html>
Welk boek zouden jullie aanbevelen om PHP echt op een veelzijdige manier onder de knie te krijgen?
www.phptuts.nl kom je heel aardig tutorials tegen :-)
Boek geen idee, maar op Alleen een value heeft natuurlijk geen nut.