php formulier afhandeling fout
Ik ben bezig met een klein scriptje
maar hij doet het op 1 of andere manier niet.
Als ik bij de selection menu een 'face' heb uitgekozen
word er een form geshowt. Daar moet men zijn naam invullen
en dan komt zijn naam in de zin terecht naast het gezicht wat die heeft
uitgekozen.
Maar als je de naam hebt ingetypt en je klikt op de submit button
gebeurd er niks.
Ziet iemand het probleem? Alvast bedankt.
En ik zelf zie het probleem niet. Zien jullie het probleem?
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
29
30
31
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
29
30
31
<form action="" method="post">
<select name="faces">
<option value="trollface">Trollface</option>
<option value="fuuu">Fuuu face</option>
<option value="epicfuuu">Epic fuuu face</option>
<option value="megusta">Me gusta face</option>
</select>
<input type="submit" name="select" value="Kies deze" />
</form>
<?php
if($_POST['select'])
{
if($_POST['faces'] == "fuuu") // Fuuu face
{
echo '<h2>TYPE YOUR NAME HERE:</h2><br />
<form action="" method="post">
<input type="text" name="naam" />
<input type="submit" name="submit1" value="MAKE FACE" /><br />
</form>';
if($_POST['submit1'])
{
echo '<p style="font-size: 13.5pt;">FUUUUUUUUU YOU '.strtoupper($_POST['naam']).'</p><br />';
echo '<img src="http://t0.gstatic.com/images?q=tbn:ANd9GcRSIvCQvi7_2jAMcd7AphlRLZu4TQpXKxHP-MtgfWoW9yDlN6jk" width="280" height="285" />';
}
}
}
?>
<select name="faces">
<option value="trollface">Trollface</option>
<option value="fuuu">Fuuu face</option>
<option value="epicfuuu">Epic fuuu face</option>
<option value="megusta">Me gusta face</option>
</select>
<input type="submit" name="select" value="Kies deze" />
</form>
<?php
if($_POST['select'])
{
if($_POST['faces'] == "fuuu") // Fuuu face
{
echo '<h2>TYPE YOUR NAME HERE:</h2><br />
<form action="" method="post">
<input type="text" name="naam" />
<input type="submit" name="submit1" value="MAKE FACE" /><br />
</form>';
if($_POST['submit1'])
{
echo '<p style="font-size: 13.5pt;">FUUUUUUUUU YOU '.strtoupper($_POST['naam']).'</p><br />';
echo '<img src="http://t0.gstatic.com/images?q=tbn:ANd9GcRSIvCQvi7_2jAMcd7AphlRLZu4TQpXKxHP-MtgfWoW9yDlN6jk" width="280" height="285" />';
}
}
}
?>
titel aangepast.[/modedit]
Gewijzigd op 30/10/2012 20:12:50 door Bas IJzelendoorn
Maar ik heb nu dat er in gezet maar het helpt niks.
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
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
<form action="" method="post">
<select name="faces">
<option value="trollface">Trollface</option>
<option value="fuuu">Fuuu face</option>
<option value="epicfuuu">Epic fuuu face</option>
<option value="megusta">Me gusta face</option>
</select>
<input type="submit" name="select" value="Kies deze" />
</form>
<?php
if($_SERVER['REQUEST_METHOD']== "POST") {
if($_POST['faces'] == "fuuu") {
echo '<h2>TYPE YOUR NAME HERE:</h2><br />
<form action="" method="post">
<input type="text" name="naam" />
<input type="submit" name="submit_face" value="MAKE FACE" /><br />
</form>';
if( ($_SERVER['REQUEST_METHOD'] =="POST") && isset($_POST['submit_face']) ){
echo '<p style="font-size: 13.5pt;">FUUUUUUUUU YOU '.strtoupper($_POST['naam']).'</p><br />';
echo '<img src="http://t0.gstatic.com/images?q=tbn:ANd9GcRSIvCQvi7_2jAMcd7AphlRLZu4TQpXKxHP-MtgfWoW9yDlN6jk" width="280" height="285" />';
}
}
}
?>
<select name="faces">
<option value="trollface">Trollface</option>
<option value="fuuu">Fuuu face</option>
<option value="epicfuuu">Epic fuuu face</option>
<option value="megusta">Me gusta face</option>
</select>
<input type="submit" name="select" value="Kies deze" />
</form>
<?php
if($_SERVER['REQUEST_METHOD']== "POST") {
if($_POST['faces'] == "fuuu") {
echo '<h2>TYPE YOUR NAME HERE:</h2><br />
<form action="" method="post">
<input type="text" name="naam" />
<input type="submit" name="submit_face" value="MAKE FACE" /><br />
</form>';
if( ($_SERVER['REQUEST_METHOD'] =="POST") && isset($_POST['submit_face']) ){
echo '<p style="font-size: 13.5pt;">FUUUUUUUUU YOU '.strtoupper($_POST['naam']).'</p><br />';
echo '<img src="http://t0.gstatic.com/images?q=tbn:ANd9GcRSIvCQvi7_2jAMcd7AphlRLZu4TQpXKxHP-MtgfWoW9yDlN6jk" width="280" height="285" />';
}
}
}
?>
Dit zou wel moeten werken, als het goed is.
Probeer namen zoals submit1 te vermijden. Later weet je niet meer bij welk formulier deze hoort.
Trouwens... waarom laat je eerst het gezicht kiezen, en daarna de naam? Of is elk vervolgformulier per gezicht weer anders?
Gewijzigd op 30/10/2012 20:30:10 door - Ariën -
je selecteert een face en klikt op submit, de pagina wordt geladen met de ingevulde POST waarden.
het nieuwe formulier wordt geladen(ervanuitgaande dat face de waarde fuuuu).
je vult in het nieuwe formulier een naam in en klikt opnieuw op submit, de post waarden worden weer verzonden.
maar heeft $_POST['select'] nu nog een waarde? nee dus alles wat je in de body van die div zet wordt niet uitgevoerd.
Code (php)
Je weet al dat er gePOST is.
Stukje overbodige regel weggehaald:
Code (php)
Toevoeging op 30/10/2012 20:48:49:
@TS:
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<form action="" method="post">
<select name="faces">
<option value="trollface">Trollface</option>
<option value="fuuu">Fuuu face</option>
<option value="epicfuuu">Epic fuuu face</option>
<option value="megusta">Me gusta face</option>
</select>
<input type="submit" name="select" value="Kies deze" />
<?php
if($_SERVER['REQUEST_METHOD']== "POST")
{
if($_POST['faces'] == "fuuu") // Fuuu face
{
echo '<h2>TYPE YOUR NAME HERE:</h2><br />
<input type="text" name="naam" />
<input type="submit" name="submit1" value="MAKE FACE" /><br />';
}
if(isset($_POST['submit1']))
{
echo '<p style="font-size: 13.5pt;">FUUUUUUUUU YOU '.strtoupper($_POST['naam']).'</p><br />';
echo '<img src="http://t0.gstatic.com/images?q=tbn:ANd9GcRSIvCQvi7_2jAMcd7AphlRLZu4TQpXKxHP-MtgfWoW9yDlN6jk" width="280" height="285" />';
}
}
?>
</form>
<select name="faces">
<option value="trollface">Trollface</option>
<option value="fuuu">Fuuu face</option>
<option value="epicfuuu">Epic fuuu face</option>
<option value="megusta">Me gusta face</option>
</select>
<input type="submit" name="select" value="Kies deze" />
<?php
if($_SERVER['REQUEST_METHOD']== "POST")
{
if($_POST['faces'] == "fuuu") // Fuuu face
{
echo '<h2>TYPE YOUR NAME HERE:</h2><br />
<input type="text" name="naam" />
<input type="submit" name="submit1" value="MAKE FACE" /><br />';
}
if(isset($_POST['submit1']))
{
echo '<p style="font-size: 13.5pt;">FUUUUUUUUU YOU '.strtoupper($_POST['naam']).'</p><br />';
echo '<img src="http://t0.gstatic.com/images?q=tbn:ANd9GcRSIvCQvi7_2jAMcd7AphlRLZu4TQpXKxHP-MtgfWoW9yDlN6jk" width="280" height="285" />';
}
}
?>
</form>
Gewijzigd op 30/10/2012 20:37:23 door - SanThe -
Wordt nog een leuk script als je de code voor de andere faces gaat dupliceren. En waarom laat je niet direct de naam in het eerste formulier bepalen Remco. Dat scheelt weer een onnodige vreemde post-controle