$_GET - $_POST

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Lead C# Ontwikkelaar

Lead C# Ontwikkelaar vaste standplaats Nijmegen Organisatie Groeiend IT bedrijf, gericht op duurzaamheid en maatschappelijk verantwoord ondernemen. Contactpersoon Roel Kavelaar ; rkavelaar@search-consult.nl ; 06 449 49 337 Verantwoordelijkheden Meedenken over verder ontwikkelen van het bedrijf Leiding geven aan ontwikkelaars Doorspreken van lopende projecten met je teamleden Plannen en budgetteren van nieuwe projectaanvragen Met de klant en andere betrokken partijen functioneel en technisch ontwerp van de aangeboden oplossing opstellen Klanten adviseren over mogelijke oplossingen voor het koppelen van systemen Klanten adviseren over mogelijke oplossingen voor het koppelen van systemen Met de klant en andere betrokken partijen een ontwerp van de aangeboden

Bekijk vacature »

Java developer met testervaring

Java developer met testervaring Functieomschrijving "De drempel tussen de burger en de Belastingdienst zo laag mogelijk houden: dat is de belangrijke taak van ons team. Dit doen we door het burgerportaal Mijn Belastingdienst continu te verbeteren." René, Java-specialist bij de Belastingdienst. De keten Interactie is een samenwerkingsverband van alle dienstonderdelen binnen de Belastingdienst. Samen zorgen we dat het contact met burgers en bedrijven goed kan plaatsvinden. Onze belangrijkste opgave? Zoveel mogelijk digitaliseren. Dat doen we binnen het onderdeel Informatievoorzieningen (IV), de ICT-organisatie van de Belastingdienst. Denk bij de producten die IV-Interactie ontwikkelt en onderhoudt aan portalen, formulieren en authenticatie- en

Bekijk vacature »

Richard

Richard

24/04/2007 20:32:00
Quote Anchor link
Ik heb een klein probleemje ik gebruik een mail scriptje wat correct werkte maar nu heb ik voor mijn site een elsif statement gemaakt om de pagina's op te vragen maar nu werkt het contact formulier niet meer en gaat hij zodra ik op verzenden klik terug naar de homepage,
er is mij verteld dat dat komt omdat ik in mijn code alleen maar $_GET gebruik terwijl er in dat mail formulier $_POST wordt gebruikt, maar ik ben nog een echte beginner in php en heb dus geen flauw idee hoe ik dit op kan lossen :P bij deze dus hulp gevraagt plz.

de code van het formulier
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
<?
// geef e-mail adres op van ontvanger
$mail_ontv = "--------@----------.nl";

// is niet 100% !!!
function checkmail($mail)
{

    $email_host = explode("@", $mail);
    $email_host = $email_host['1'];
    $email_resolved = gethostbyname($email_host);

    if ($email_resolved != $email_host && eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$mail))
        $valid = 1;

    return $valid;
}


// als er niet op submit is gedrukt, of als er wel op is gedrukt maar niet alles ingevoerd is
if (!$_POST['submit'] || $_POST['submit'] && (!$_POST['naam'] || !$_POST['mail'] || !checkmail($_POST['mail']) || !$_POST['msggs'] || !$_POST['onderwerp']))
{

    if ($_POST['submit'] && (!$_POST['naam'] || !$_POST['mail'] || !checkmail($_POST['mail']) || !$_POST['msggs'] || !$_POST['onderwerp']))  
    {

        echo "&nbsp;&nbsp;Je bent je naam, e-mail adres, onderwerp of bericht vergeten in te vullen.<br>";
        echo "&nbsp;&nbsp;Ook kan het zijn dat je een verkeerd e-mail adres hebt ingevuld.<p>";
    }

      
    // form + tabel
    echo "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
    echo "<form method=\"POST\" ACTION=\"" . $_SERVER['PHP_SELF'] . "\">";
      
    // naam
    echo "<tr><td>&nbsp;&nbsp;Naam:</td></tr>";
    echo "<tr><td><input type=\"text\" style=\"color: #000000; background-color: #80adff; border: #000000 solid 1px; font-family: Verdana; margin-left: 15px\" name=\"naam\" value=\"" . $_POST['naam'] . "\"></td></tr>";
      
    // space
    echo "<tr><td>&nbsp;</td></tr>";
      
    // mail
    echo "<tr><td>&nbsp;&nbsp;E-mail adres:</td></tr>";
    echo "<tr><td><input type=\"text\" style=\"color: #000000; background-color: #80adff; border: #000000 solid 1px; font-family: Verdana; margin-left: 15px\" name=\"mail\" value=\"" . $_POST['mail'] . "\"></td></tr>";
      
    // space
    echo "<tr><td>&nbsp;</td></tr>";
      
    // mail
    echo "<tr><td>&nbsp;&nbsp;Onderwerp:</td></tr>";
    echo "<tr><td><input type=\"text\" style=\"color: #000000; background-color: #80adff; border: #000000 solid 1px; font-family: Verdana; margin-left: 15px\" name=\"onderwerp\" value=\"" . $_POST['onderwerp'] . "\"></td></tr>";
      
    // space
    echo "<tr><td>&nbsp;</td></tr>";
      
    // mail
    echo "<tr><td>&nbsp;&nbsp;Bericht:</td></tr>";
    echo "<tr><td><TEXTAREA style=\"color: #000000; background-color: #80adff; border: #000000 solid 1px; font-family: Verdana; margin-left: 15px\" name=\"msggs\" ROWS=\"6\" COLS=\"45\">" . htmlentities($_POST['msggs']) . "</TEXTAREA></td></tr>";
      
    // space
    echo "<tr><td>&nbsp;</td></tr>";
      
    // button
    echo "<tr><td>&nbsp;</td></tr>";
    echo "<tr><td><input type=\"submit\" style=\"color: #000000; background-color: #80adff; border: #000000 solid 1px; font-family: Verdana; margin-left: 15px\" name=\"submit\" value=\"Versturen\"></td></tr>";
      
    // sluit form + tabel
    echo "</form>";
    echo "</table>";
}

// versturen naar
else
{      
    // set datum
    $datum = date("d.m.Y H:i");
      
    // set ip
    $ip = $_SERVER['REMOTE_ADDR'];
      
    $inhoud_mail = "===================================================\n";
    $inhoud_mail .= "Ingevulde contact formulier\n";
    $inhoud_mail .= "===================================================\n\n";
      
    $inhoud_mail .= "Naam: " . $_POST['naam'] . "\n";
    $inhoud_mail .= "E-mail adres: " . $_POST['mail'] . "\n";
    $inhoud_mail .= "Bericht:\n";
    $inhoud_mail .= $_POST['msggs'] . "\n\n";
      
    $inhoud_mail .= "Verstuurd op $datum via het ip " . $ip . "\n\n";
      
    $inhoud_mail .= "===================================================\n\n";
    
    // --------------------
    // spambot protectie
    // ------
    // van de tutorial: http://www.phphulp.nl/php/tutorials/10/340/
    // ------

    
    $headers = "From: " . $_POST['naam'] . " <" . $_POST['mail'] . ">";
    
    $headers = stripslashes($headers);
    $headers = str_replace("\n", "", $headers); // Verwijder \n
    $headers = str_replace("\r", "", $headers); // Verwijder \r
    $headers = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $headers)); // Slashes van quotes
    
    $_POST['onderwerp'] = str_replace("\n", "", $_POST['onderwerp']); // Verwijder \n
    $_POST['onderwerp'] = str_replace("\r", "", $_POST['onderwerp']); // Verwijder \r
    $_POST['onderwerp'] = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $_POST['onderwerp'])); // Slashes van quotes
    
    mail($mail_ontv, $_POST['onderwerp'], $inhoud_mail, $headers);
    
    echo "<h1>Je e-mail is verstuurd</h1>";
    
    echo "<p>Bedankt voor het versturen van een e-mail. Je zult snel een antwoord ";
    echo "krijgen indien dit nodig is.</p>";
    
    echo "<p>We nemen alles serieus en zullen vertrouwelijk omgaan met de informatie ";
    echo "die we binnen krijgen. Je e-mail adres zal nooit aan derden worden verstrekt.</p>";
}

?>



code voor de pagina's
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
<?php
error_reporting (E_ALL ^ E_NOTICE);

if($_GET['go'] == "" or $_GET['go'] == "home"){
   include("home.php");
}

elseif($_GET['go'] == "about"){
   include("about.php");
}

elseif($_GET['go'] == "portofolio"){
   include("portofolio.php");
}

elseif($_GET['go'] == "contact"){
   include("contact.php");
}

?>
  


Bij voorbaad dank
 
PHP hulp

PHP hulp

16/10/2021 07:14:05
 
Guido van C

Guido van C

24/04/2007 20:37:00
Quote Anchor link
echo "<form method=\"POST\" ACTION=\"" . $_SERVER['PHP_SELF'] . "\">";

In je pagina, bijvoorbeeld contact.php kun je plaatsen ipv server self. Het is dan mogelijk om een get variable mee te geven: contact.php?id=90

Als je form post gebruikt, en je action staat alleen op de phpself, die heeft niet je get variablen van je pagina, die zou je dan kunnen opvangen en in de pagina met action stoppen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php

$pagina
= $_SERVER['PHP_SELF'] ;
$get = 'id='.$_GET['id'];

// ... even verder

echo '<form method="POST" ACTION="'.$pagina.$get'">';
?>
Gewijzigd op 01/01/1970 01:00:00 door Guido van C
 
TJVB tvb

TJVB tvb

24/04/2007 20:38:00
Quote Anchor link
Je kunt in de action van het formulier je GET waarde geven, bijvoorbeeld:
<FORM METHOD="POST" ACTION="?go=contact">
 
Richard

Richard

24/04/2007 21:10:00
Quote Anchor link
Tobias schreef op 24.04.2007 20:38:
Je kunt in de action van het formulier je GET waarde geven, bijvoorbeeld:
<FORM METHOD="POST" ACTION="?go=contact">


(y) helemaal geweldig probleem opgelost :)
 



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.