PHP Form Handler
ik ben vrij nieuw met PHP, en wil een spelletje maken met
HTML+JS+PHP. Aan het begin moet je een aantal dingen invullen (bijv. de naam) die zal verschijnen als je verder gaat met je saved game.
Hoe maak ik dat formulier en hoe moet ik de PHP script in de rest toepassen om tezorgen dat je bijv. Hallo, [naam] krijgt?
http://www.formhandler.net is een ideaal hulpje om snel formulieren in elkaar te zetten (met de nodige foutcontroles, koppelingen naar databases etc).
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<?php
if($_SERVER['REQUEST_METHOD']=="POST"){
$tekst = strip_tags($_POST['tekst']);
}else{
?>
<form action="" method="post">
<input type="text" name"tekst">
<input type="submit" value="Klik :P">
</form>
<?php
}
?>
if($_SERVER['REQUEST_METHOD']=="POST"){
$tekst = strip_tags($_POST['tekst']);
}else{
?>
<form action="" method="post">
<input type="text" name"tekst">
<input type="submit" value="Klik :P">
</form>
<?php
}
?>
Snappie nu wat beter?
Gewijzigd op 01/01/1970 01:00:00 door Paul K
nog ff een vraagje;
Kan ik bijvoorbeeld van de 'name' in mijn geval ook "naam gebruiker" maken en vervolgens in een ander script zeggen:
"hallo, 'naam gebruiker'"? Hoe moet ik dat dan exact maken? En waar wordt deze info naar gesubmit? Dat is toch niet nodig?
Code (php)
1
2
3
4
2
3
4
<form action="" method="post">
<input type="text" name="name">
<input type="submit" name="submit" value="Klik :P">
</form>
<input type="text" name="name">
<input type="submit" name="submit" value="Klik :P">
</form>
En dan doe je dit:
OK, bedankt, maar als die scripten los van elkaar in een ander bestand staan, moet ik dat dan includen ofzo, of hoe weet dat script nou wat 'name' is als dat in dat bestand niet als 'input' gegeven staat? Als ik moet includen, hoe werkt dat dan precies? Alvast heel erg bedankt voor alle snelle en handige reacties!
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
session_start();
$_SESSION['naam'] = $_POST['name'];
?>
<form action="index.php" method="post">
<input type="text" name="name">
<input type="submit" name="submit" value="Klik :P">
</form>
session_start();
$_SESSION['naam'] = $_POST['name'];
?>
<form action="index.php" method="post">
<input type="text" name="name">
<input type="submit" name="submit" value="Klik :P">
</form>
Dan kan je in iedere pagina $_SESSION['naam'] opvragen, en daar staat dan de naam in. Je hoeft dan alleen boven ieder document "session_start();" te zetten.
ty
---------------------------------------------------------------------------------------
index.html:
<HTML>
<HEAD> <TITLE> DEMO VAN *** </TITLE> </HEAD>
<BODY> <img border="0" src="front1.JPG" width="399" height="600"><a href="choose1.htm"><img border="0" src="front2.JPG" width="400" height="600"> </a> </BODY>
</HTML>
---------------------------------------------------------------------------------------
choose1.html:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
session_start();
$_SESSION['naam'] = $_POST['naam'];
session_start();
$_SESSION['bedrijf'] = $_POST['bedrijf'];
session_start();
$_SESSION['e-mail'] = $_POST['e-mail'];
?>
session_start();
$_SESSION['naam'] = $_POST['naam'];
session_start();
$_SESSION['bedrijf'] = $_POST['bedrijf'];
session_start();
$_SESSION['e-mail'] = $_POST['e-mail'];
?>
<form action="choose2.htm" method="post">
Jouw naam: <input type="text" name="naam">
<P>
Bedrijfsnaam: <input type="text" name="bedrijf">
<P>
E-mail: <input type="text" name="e-mail">
<P>
<input type="submit" name="submit" value="Bevestig">
</form>
---------------------------------------------------------------------------------------
choose2.html:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?php
session_start();
<HTML>Hallo,</HTML> $_SESSION['naam'], <BR>
Nu moet je je laatste keuzes maken: <P>
?>
session_start();
<HTML>Hallo,</HTML> $_SESSION['naam'], <BR>
Nu moet je je laatste keuzes maken: <P>
?>
---------------------------------------------------------------------------------------
Als ik nu begin bij index en via choose1 bij choose2 kom, krijg ik dit:
---------------------------------------------------------------------------------------
Hallo, $_SESSION['naam'],
Nu moet je je laatste keuzes maken:
?>
---------------------------------------------------------------------------------------
Waar gaat het fout?
Gewijzigd op 29/01/2012 14:22:01 door Joren de Wit
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
session_start();
echo"<HTML>Hallo,</HTML>". $_SESSION['naam'] ."<BR>
Nu moet je je laatste keuzes maken: <P>";
?>
session_start();
echo"<HTML>Hallo,</HTML>". $_SESSION['naam'] ."<BR>
Nu moet je je laatste keuzes maken: <P>";
?>
Je hoeft maar 1 keer session_start(); te gebruiken. Zet deze helemaal bovenaan het bestand. En inderdaad choose2.html in choose2.php en de andere html bestanden ook in php veranderen.
-------------------------------------------------------------
index.htm:
<HTML>
<HEAD> <TITLE> DEMO VAN *** </TITLE> </HEAD>
<BODY> <img border="0" src="front1.JPG" width="399" height="600"><a href="choose1.php"><img border="0" src="front2.JPG" width="400" height="600"> </a> </BODY>
</HTML>
-------------------------------------------------------------
choose1.php:
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
session_start();
$_SESSION['naam'] = $_POST['naam'];
$_SESSION['bedrijf'] = $_POST['bedrijf'];
$_SESSION['e-mail'] = $_POST['e-mail'];
?>
session_start();
$_SESSION['naam'] = $_POST['naam'];
$_SESSION['bedrijf'] = $_POST['bedrijf'];
$_SESSION['e-mail'] = $_POST['e-mail'];
?>
<form action="choose2.php" method="post">
Jouw naam: <input type="text" name="naam">
<P>
Bedrijfsnaam: <input type="text" name="bedrijf">
<P>
E-mail: <input type="text" name="e-mail">
<P>
<input type="submit" name="submit" value="Bevestig">
</form>
---------------------------------------------------------------
choose2.php:
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
session_start();
echo"<HTML>Hallo,</HTML>". $_SESSION['naam'] ."<BR>
Nu moet je je laatste keuzes maken: <P>";
?>
session_start();
echo"<HTML>Hallo,</HTML>". $_SESSION['naam'] ."<BR>
Nu moet je je laatste keuzes maken: <P>";
?>
---------------------------------------------------------------
En dan is het gevolg van choose2.php:
Hallo,
Nu moet je je laatste keuzes maken:
---------------------------------------------------------------
waarom komt die naam nou niet?
Gewijzigd op 29/01/2012 14:22:14 door Joren de Wit
Ha, eindelijk gelukt! ik heb het is gedaan zonder sessie en ipv "$_SESSION['naam']" "$_POST["Naam"]" gedaan. Bedankt allemaal stuk vor stuk wat toegevoegd als mijn spel af is komen jullie bij de credits!
Gewijzigd op 29/01/2012 14:18:21 door Joren de Wit
Sorry, dat wist ik niet! Het gaat trouwens al beter maar ik wil ipv post session doen! tot morgen!