PHP formulier doorverwijzing

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Sander Vanier

Sander Vanier

29/06/2012 18:49:30
Quote Anchor link
Leden,

Door middel van een PHP include probeer in een php bestand in een wordpress template te zetten. Dat gaat allemaal prima. Ik controleer of enkele velden wel gevuld zijn (de verplichte velden)
en als dit niet het geval is komt er een melding. Als alle verplichte velden ingevuld zijn moeten alle waardes in een sessie gezet worden en moet er doorverwezen worden naar formulier 2, daar heb ik deze waardes weer nodig. Nu wil hij om een of andere reden maar niet naar pagina 2! Hieronder de code, hopelijk weet iemand wat er mis gaat en hoe het op te lossen is? Erg bedankt!

Quote:
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
<?php
if ( $_SERVER['REQUEST_METHOD'] == 'POST'  )

   {

  //  Er zijn gegevens verstuurd naar deze pagina!

  //  We gaan de errors in een array bijhouden

  $aErrors = array();

  if  (empty($_POST['bedrijfsnaam'])) {
    $aErrors['bedrijfsnaam'] = 'Vul uw bedrijfsnaam in';
  }


  
  if (empty($_POST['kvk']))  {
    $aErrors['kvk'] = 'Vul uw kvk-nummer in';
  }



 if (empty($_POST['contactpersoon']))  {
    $aErrors['contactpersoon'] = 'Vul uw contactpersoon in';
  }



 if (empty($_POST['emailcontact']))  {
    $aErrors['emailcontact'] = 'Vul het emailadres van uw contactpersoon in';
  }



 if (empty($_POST['emailcontact']))  {
    $aErrors['emailcontact'] = 'Vul het telefoonnummer van uw contactpersoon in';
  }





  if (isset($aErrors) && count($aErrors) > 0 ) {
        print '<ul class="errorlist">';
        foreach ( $aErrors as $error ) {
          print '<li>' . $error . '</li>';
        }

        print '</ul>';
      }

      else
      {

echo "<meta http-equiv="refresh" content="1;URL=http://www.*****.nl/stap2-standaard/">";



//sessie starten

session_start();
//sessie variabelen registeren
session_register('bedrijfsnaam');
session_register('straat');
session_register('postcode');
session_register('plaats');
session_register('telefoonnummer');
session_register('email');
session_register('kvk');
session_register('btw');
session_register('rechtsvorm');
session_register('contactpersoon');
session_register('geslacht');
session_register('emailcontact');
session_register('telefoonnummercontact');
//ingevulde waardes wegschrijven naar sessie
$_SESSION['bedrijfsnaam'] = $_POST['bedrijfsnaam'];
$_SESSION['straat'] = $_POST['straat'];
$_SESSION['postcode'] = $_POST['postcode'];
$_SESSION['plaats'] = $_POST['plaats'];
$_SESSION['telefoonnummer'] = $_POST['telefoonnummer'];
$_SESSION['email'] = $_POST['email'];
$_SESSION['kvk'] = $_POST['kvk'];
$_SESSION['btw'] = $_POST['btw'];
$_SESSION['rechtsvorm'] = $_POST['rechtsvorm'];
$_SESSION['contactpersoon'] = $_POST['contactpersoon'];
$_SESSION['geslacht'] = $_POST['geslacht'];
$_SESSION['emailcontact'] = $_POST['emailcontact'];
$_SESSION['telefoonnummercontact'] = $_POST['telefoonnummercontact'];




}

    

 }
  
  

?>




En na deze PHP code komt de form:

Quote:

<div id="form">


<form method="post">


//en de rest....
Gewijzigd op 29/06/2012 18:51:28 door Sander Vanier
 
PHP hulp

PHP hulp

22/11/2019 00:30:38
 
- Ariën -
Beheerder

- Ariën -

29/06/2012 18:51:26
Quote Anchor link
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
<?php
session_register('bedrijfsnaam');
session_register('straat');
session_register('postcode');
session_register('plaats');
session_register('telefoonnummer');
session_register('email');
session_register('kvk');
session_register('btw');
session_register('rechtsvorm');
session_register('contactpersoon');
session_register('geslacht');
session_register('emailcontact');
session_register('telefoonnummercontact');
?>

Kan je schrappen.
 
Sander Vanier

Sander Vanier

29/06/2012 18:54:51
Quote Anchor link
Dankje voor de tip! Lost helaas niet mijn probleem op ben ik bang.. :(
 
Erwin H

Erwin H

29/06/2012 19:02:36
Quote Anchor link
Als je eens goed naar de kleurtjes kijkt en naar de quotes, dan moet je toch ook zien dat dit niet klopt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo "<meta http-equiv="refresh" content="1;URL=http://www.*****.nl/stap2-standaard/">";
?>
 
Obelix Idefix

Obelix Idefix

29/06/2012 19:04:00
Quote Anchor link
session_start helemaal boven aan.
Schakel error-reporting in
Je geeft een refresh en daarna ken je pas waarden toen aan sessies.
Zou zelf een header gebruiken.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
echo "<meta http-equiv="refresh" content="1;URL=http://www.*****.nl/stap2-standaard/">";

Kan niet gaan werken. Gebruik voor php/echo ' en binnen html "
 
Sander Vanier

Sander Vanier

29/06/2012 19:15:31
Quote Anchor link
Session start heb ik helemaal naar boven veplaatst (die zie je dus niet meer, want de php code hier wordt ge-included in een ander php bestand). Ik maak nu gebruik van header, maar helaas gebeurd er nog niets. Als ik zeg dat hij de header code moet 'echoën', dan komt hij er netjes te staan. Het werkt dus eigenlijk wel, wanneer ik echter de 'echo' code weghaal, verwijst hij niet naar de 2e stap, hij komt gewoon weer op zijn eigen pagina terecht, stap 1. Hoe kan dit toch?

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
<?php
if ( $_SERVER['REQUEST_METHOD'] == 'POST'  )

   {

  //  Er zijn gegevens verstuurd naar deze pagina!

  //  We gaan de errors in een array bijhouden

  $aErrors = array();

  if  (empty($_POST['bedrijfsnaam'])) {
    $aErrors['bedrijfsnaam'] = 'Vul uw bedrijfsnaam in';
  }


  
  if (empty($_POST['kvk']))  {
    $aErrors['kvk'] = 'Vul uw kvk-nummer in';
  }



 if (empty($_POST['contactpersoon']))  {
    $aErrors['contactpersoon'] = 'Vul uw contactpersoon in';
  }



 if (empty($_POST['emailcontact']))  {
    $aErrors['emailcontact'] = 'Vul het emailadres van uw contactpersoon in';
  }



 if (empty($_POST['telefoonnummercontact']))  {
    $aErrors['telefoonnummercontact'] = 'Vul het telefoonnummer van uw contactpersoon in';
  }







  if (isset($aErrors) && count($aErrors) > 0 ) {
        print '<ul class="errorlist">';
        foreach ( $aErrors as $error ) {
          print '<li>' . $error . '</li>';
        }

        print '</ul><br />';
      }

      else
      {






//sessie starten

//sessie variabelen registeren

session_register('bedrijfsnaam');
session_register('straat');
session_register('postcode');
session_register('plaats');
session_register('telefoonnummer');
session_register('email');
session_register('kvk');
session_register('btw');
session_register('rechtsvorm');
session_register('contactpersoon');
session_register('geslacht');
session_register('emailcontact');
session_register('telefoonnummercontact');
//ingevulde waardes wegschrijven naar sessie
$_SESSION['bedrijfsnaam'] = $_POST['bedrijfsnaam'];
$_SESSION['straat'] = $_POST['straat'];
$_SESSION['postcode'] = $_POST['postcode'];
$_SESSION['plaats'] = $_POST['plaats'];
$_SESSION['telefoonnummer'] = $_POST['telefoonnummer'];
$_SESSION['email'] = $_POST['email'];
$_SESSION['kvk'] = $_POST['kvk'];
$_SESSION['btw'] = $_POST['btw'];
$_SESSION['rechtsvorm'] = $_POST['rechtsvorm'];
$_SESSION['contactpersoon'] = $_POST['contactpersoon'];
$_SESSION['geslacht'] = $_POST['geslacht'];
$_SESSION['emailcontact'] = $_POST['emailcontact'];
$_SESSION['telefoonnummercontact'] = $_POST['telefoonnummercontact'];


header("Location:http://www.****.nl/stap2-standaard");


}

    

  }

  

?>
Gewijzigd op 29/06/2012 19:16:47 door Sander Vanier
 
Eddy E

Eddy E

30/06/2012 08:06:45
Quote Anchor link
Regel 56 tm 69 kan gewoon weg.
Wat doe je met de fouten? Je kan gewoon nog een keer de volledige $_POST doorsturen naar je contactformulier hoor. Eventueel met cURL(), ook al is dat wat overdone.
 
Obelix Idefix

Obelix Idefix

30/06/2012 08:55:32
Quote Anchor link
En als je na de header exit; zet?
 
Sander Vanier

Sander Vanier

30/06/2012 10:05:28
Quote Anchor link
Bedankt voor alle hulp, het volgende heeft mijn probleem opgelost:

Ik heb de controle code incl. de header verwijzing naar bovenin het moeder bestand verplaatst,
daarnaast heb ik de code voor het afdrukken van de foutmeldingen bij het formulier laten staan.
Hij werkt nu zoals het hoort!

Groeten Sander
 



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.