if (isset($_POST['send'])) clear all html

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Sander W

sander W

21/11/2007 22:05:00
Quote Anchor link
Hoi beste mensen,

Ik heb een formulier waarin een naam ingevuld moet worden.
Ik wil dat als er op de Send knop wordt gedrukt, alleen de $naam wordt weergegeven, dus het formulier moet verdwijnen.
Het moet op dezelfde pagina (post.php) gebeuren. (waarom is te omslachtig om uit te leggen, ik heb het voorbeeld al zo simpel mogelijk gemaakt).
Mijn onderstaande code laat dus $naam zien MET het formulier.
Hoe fix ik het zo dat het formulier verdwijnt en alleen $naam als echo komt?


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
blaat
<form action="post.php" method="post">
Naam:<input type="text" name="naam">
<input type="Submit" value="Send" name="send" id="send">
</form>

<?
$naam
= $_POST['naam'];
if($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['send']))
{

if (isset($_POST['send']))
{

echo $naam;
}
}

?>
Gewijzigd op 01/01/1970 01:00:00 door Sander W
 
PHP hulp

PHP hulp

28/03/2024 15:33:15
 
Michel W

Michel W

21/11/2007 22:24:00
Quote Anchor link
code niet getest maar moet zoiets als dit worden (Zitten ook wat checks in of het leeg is. Ik wist niet zo 123 hoe je moest checken of het alleen letters waren met het moet er ongeveer zo uitkomen te zien volgens mij

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
32
33
34
35
36
37
38
39
40
41
42
<?php


if($_POST['submit']){

$naam = addslashes($_POST['naam']);
$achternaam = addslashes($_POST['achternaam']);
if(empty($naam)){
    $error_message.= "naam is leeg <br/>\n";
}


if(is_alpha($naam)){
    $error_message.= "naam mag geen getallen bevatten <br/>\n";
}

if(empty($achternaam)){
    $error_message.= "achternaam is leeg <br/>\n";
}


if(is_alpha($achternaam)){
    $error_message.= "achternaam mag geen getallen bevatten <br/>\n";
}


if($error_message){

echo $error_message;
}
else {
echo "Mijn voornaam is: ". $naam . " en mijn achternaam is ".$achternaam .".";

}


}


if(!$error_message){
echo"<form action=\"$_SERVER['PHP_SELF']\" method=\"post\">";
echo"Naam:<input type=\"text\" name=\"naam\">";
echo"Achternaam:<input type=\"text\" name=\"achternaam\">";
echo"<input type=\"Submit\" value=\"Send\" name=\"send\" id=\"send\">";
echo"</form>";
}


?>
 
Arjan Schuurman

Arjan Schuurman

21/11/2007 23:02:00
Quote Anchor link
Je kunt beter stripslashes doen dreampower.
 
Michel W

Michel W

21/11/2007 23:19:00
Quote Anchor link
Arjan, dat doe je toch als je iets uit de database haalt?
 
Arjan Schuurman

Arjan Schuurman

21/11/2007 23:26:00
Quote Anchor link
O ja je hebt gelijk, maar het is wel handig om even bij de input een value toe te voegen met daarbij wel de stripslashes($_POST['..']) voor gebruikersvriendelijkheid.
 
Frank -

Frank -

22/11/2007 09:46:00
Quote Anchor link
addslashes() gebruik je nooit, dat is achterhaald door bv. mysql_real_escape_string().

addslashes() verknalt jouw data, voor je het weet ben je een hele serie slashes rijker en zie je door de slashes de input niet meer.
 
Knorfski

Knorfski

22/11/2007 11:09:00
Quote Anchor link
Vrij dubbel lijkt het mij:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?
$naam
= $_POST['naam'];
if($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['send']))
{

if (isset($_POST['send']))
{

echo $naam;
}
}

?>


Kun je versimpelen naar:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$naam
= $_POST['naam'];
if (isset($_POST['send']))
{

echo $naam;
}

?>



Want als de $_POST['send'] niet is gezet is de $_SERVER['REQUEST_METHOD'] zowisow ook false.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.