Formulier aan database linken

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2 3 volgende »

- Ariën  -
Beheerder

- Ariën -

19/01/2015 18:11:49
Quote Anchor link
Met haakjes, mysql_real_escape_string() is een functie.
 
PHP hulp

PHP hulp

16/11/2024 17:37:06
 
Ignace Verschaeve

Ignace Verschaeve

19/01/2015 20:02:48
Quote Anchor link
Hoera, we zijn een stap verder. Alhoewel? De data wordt er 2 keer ingeschreven. Nu nog uitvinden waarom dit gebeurt. En ik heb nog enkele lege velden. De naam van 2 velden bleken niet overeen te stemmen. Maar we zijn op de goede weg. Gelukkig had die klant afgebeld voor deze avond zodat ik nog wat kan doorwerken.
Uiteindelijke code.
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
<?php
// open database

$username="xxxx";
$password="xxxx";
$database="xxxx";

mysql_connect("xxxxxx.be.mysql",$username,$password);

mysql_select_db($database);



 
//let's start our session, so we have access to stored data
    session_start();

//We zetten dit volledig bovenaan

    //errors weergeven

    ini_set('display_errors',0); // 1 == aan , 0 == uit
    error_reporting(E_ALL | E_STRICT);

    // sql debug
    define('DEBUG_MODE',true);  // true == aan, false == uit

    //functie voor sql debug

    function showSQLError($sql,$error,$text='Error')
    {

        if (DEBUG_MODE)
        {

            return  '<pre>Error: ' . $error . '<br />' . $sql . '</pre>';
        }

        else
        {
            return $text;
        }    
    }

//let's create the query
$insert_query = "insert into eva_tevr(
                datum,
                factnr,
                email,
                verkoper,
                vriendwin,
                uitleg,
                crossel,
                aanbod,
                conform,
                verkoop,
                opm_winkel,
                technieker,
                vriendserv,
                instserv,
                afspraakserv,
                uitlegserv,
                crosselserv,
                service,
                opm_serv,
                buralg,
                bursnel,
                buroplos,
                admin,
                opm_admin
                ) values (
                '"
. mysql_real_escape_string($_SESSION['datum']) . "',
                '"
. mysql_real_escape_string($_SESSION['factnr']) . "',
                '"
. mysql_real_escape_string($_SESSION['email']) . "',
                '"
. mysql_real_escape_string($_SESSION['verkoper']) . "',
                '"
. mysql_real_escape_string($_SESSION['vriendwin']) . "',
                '"
. mysql_real_escape_string($_SESSION['uitleg']) . "',
                '"
. mysql_real_escape_string($_SESSION['crossel']) . "',
                '"
. mysql_real_escape_string($_SESSION['aanbod']) . "',
                '"
. mysql_real_escape_string($_SESSION['conform']) . "',
                '"
. mysql_real_escape_string($_SESSION['verkoop']) . "',
                '"
. mysql_real_escape_string($_SESSION['opm_winkel']) . "',
                '"
. mysql_real_escape_string($_SESSION['technieker']) . "',
                '"
. mysql_real_escape_string($_SESSION['vriendserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['instserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['afspraakserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['uitlegserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['crosselserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['service']) . "',
                '"
. mysql_real_escape_string($_SESSION['opm_serv']) . "',
                '"
. mysql_real_escape_string($_POST['buralg']) . "',
                '"
. mysql_real_escape_string($_POST['bursnel']) . "',
                '"
. mysql_real_escape_string($_POST['buroplos']) . "',
                '"
. mysql_real_escape_string($_POST['admin']) . "',
                '"
. mysql_real_escape_string($_POST['opm_admin']) . "'
                        )"
;
 
//let's run the query
mysql_query($insert_query);

// Check of query is gelukt    
if (($result_insert_query = mysql_query($insert_query)) === false)
{

    //als de query fout is -> foutafhandeling
    echo showSQLError($insert_query,mysql_error(),'Fout bij het invoegen van de gebruiker.');
}

else
{
    // De query is gelukt! :)
    
    echo 'Reactie is toegevoegd!';
}

//database sluiten
mysql_close();

# Redirect user to success page

header("Location: http://www.telecomvanassche.be/bedankttevr.html");

?>
 
- Ariën  -
Beheerder

- Ariën -

19/01/2015 20:11:53
Quote Anchor link
Op lijn 93 en 96 wordt het uitgevoerd. Gezien je op lijn 96 al foutafhandeling hebt kan je de foutafhandelingsloze regel op lijn 93 wel verwijderen.

Verder kan je niet ieyts echo'en terwijl je direct wordt doorgestuurd. Dus die echo kan weg, of die redirect op einde.
Gewijzigd op 19/01/2015 20:12:28 door - Ariën -
 
Ignace Verschaeve

Ignace Verschaeve

19/01/2015 20:31:06
Quote Anchor link
Bedankt.
Zoals je zegt regel 93 uitgeschakeld en regel 105 en nu werkt het zoals het hoort.
Ik zal wel nooit de hersenen hebben om dit allemaal te leren. Ik heb wel enorm bijgeleerd. Als ik op pensioen ben ( nog een 3-tal jaar)zal ik proberen mij toch nog wat te verdiepen.
Jullie hebben mij enorm geholpen om de stukjes in elkaar te puzzelen.

Toevoeging op 20/01/2015 19:22:56:

de zorgen zijn nog niet voorbij. Nu blijkt dat het ganse formulier alleen maar correct wordt doorgegeven als het via firefox gebeurt. Via Internet explorer alleen maar de laatste $Post variabelen. Iemand een oplossing? Ik dacht dat php browser onafhankelijk draaide op de server. Nu nog chrome uitproberen.

Toevoeging op 20/01/2015 19:26:34:

Via Chrome zelfde probleem. :(
 
- SanThe -

- SanThe -

20/01/2015 19:33:29
Quote Anchor link
Is het formulier wel valid html?
 
Ignace Verschaeve

Ignace Verschaeve

20/01/2015 19:45:16
Quote Anchor link
Normaal gezien wel. Maar volgens dat ik nu wat rondgekeken heb zou het kunnen dat de lokale computer niet dezelfde tijd heeft als wat de server geeft. En is IE en Chrome daar strikter in dan firefox.Ik heb gemerkt dat de tijd 1 uur achterloopt. Hier in belgie en Nederland is het bvb 19 u maar als ik de tijd opvraag zie dat er 18 u staat. Dus zoek ik nu de code om de tijd gelijk te zetten met de lokale tijd.
 
- Ariën  -
Beheerder

- Ariën -

20/01/2015 20:29:36
Quote Anchor link
Ik zie niet in wat de tijd te maken heeft met een POST-request.

Kijk eens met print_r($_POST) wat er in je POST-request zit, en waar deze met beide browsers verschilt. Ik gok op een fout in je formulier.
Gebruik je een readonly veld toevallig?
 
- SanThe -

- SanThe -

20/01/2015 20:34:35
Quote Anchor link
Ignace Verschaeve op 20/01/2015 19:45:16:
Ik heb gemerkt dat de tijd 1 uur achterloopt.


Heeft niks met een formulier te maken.
Maar kijk eens naar date_default_timezone_set().
 
Ignace Verschaeve

Ignace Verschaeve

20/01/2015 21:22:39
Quote Anchor link
Heeft niets te maken met SPost want dit komt goed mee. Heeft alles te maken met $Session omdat ik de diverse input vanaf formulier 1 naar formulier 2 naar formulier 3 meeneem naar uiteindelijk het laatste formulier. Volgens verschillende sites heeft IE daar een probleem als de server tijd niet gelijk loopt met de tijd van de computer van de gebruiker.
 
Peter  Flos

Peter Flos

20/01/2015 21:24:27
Quote Anchor link
session_start(); moet ALTIJD boven ELK ANDER element staan. En als ik het goed heb ook boven de Connectie.

Start je tevens op de andere pagina's de sessie wel en sla je de gegevens juist op in de sessies na het versturen?
 
Ignace Verschaeve

Ignace Verschaeve

21/01/2015 14:02:49
Quote Anchor link
Kijk dit is de code die ik gebruik. Soms werkt het soms niet.
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
<?php
//Timezone
date_default_timezone_set("Europe/Brussels");
 
// Stap 2 in formtevr1 let's start the session na de input van formtevr
session_start();
 
//now, let's register our session variables
session_register('datum');
session_register('factnr');
session_register('email');
session_register('verkoper');
 
//finally, let's store our posted values in the session variables
$_SESSION['datum'] = $_POST['datum'];
$_SESSION['factnr'] = $_POST['factnr'];
$_SESSION['email'] = $_POST['email'];
$_SESSION['verkoper'] = $_POST['verkoper'];
 
?>


<form id="form_4" action="formtevr2.php" method="post" target="_self" class="OBJ-1" __AddCode="here" style="position:absolute;left:10px;top:271px;width:1046px;height:469px;/*Add Style*/">
 
Frank Nietbelangrijk

Frank Nietbelangrijk

21/01/2015 14:08:16
Quote Anchor link
session_register() is oud en wordt al niet meer ondersteund. weg er mee!
 
Ignace Verschaeve

Ignace Verschaeve

21/01/2015 14:16:01
Quote Anchor link
Goed mogelijk, ik ben er vet mee, maar wat is het alternatief? ;-)
 
Ivo P

Ivo P

21/01/2015 14:18:48
Quote Anchor link
"maar wat is het alternatief? ;"

niets.

Vroeger was het:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
session_start();

$naam = 'jan';
session_register('naam');
?>


ruim 10 jaar geleden is dat geworden:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
session_start();

$_SESSION['naam'] = 'jan';
?>


Toevoeging op 21/01/2015 14:19:05:

en dat heb jij al staan...
 
Ignace Verschaeve

Ignace Verschaeve

21/01/2015 14:26:15
Quote Anchor link
Een beetje zitten zoeken maar ik geraak er niet uit. Volgens mij kan dit stukje code eruit:
//now, let's register our session variables
session_register('datum');
session_register('factnr');
session_register('email');
session_register('verkoper');

volgens deze site: http://php.net/manual/en/function.session-register.php


Toevoeging op 21/01/2015 14:30:37:

Ondertussen heb je gereageerd. Blijkbaar was de site waar ik de code gehaald heb niet echt meer up to date.
http://www.html-form-guide.com/php-form/php-order-form.html

Je ziet ik zoek overal. Ik ben blij dat ik nu niets te weinig heb maar wel teveel. Is weeral niet goed ;-)
Ik moet nog veel leren.
 
Ivo P

Ivo P

21/01/2015 14:31:52
Quote Anchor link
dat was ongeveer wat ik met mijn opmerking op de 19e bedoelde:

Quote:
als gij den middeleeuwschen ende verouderden functionaanroepen op den regelen 7 tot en met 10 een verwijderde ende weghaalde?
 
Ignace Verschaeve

Ignace Verschaeve

21/01/2015 14:46:37
Quote Anchor link
Had dat toen niet gesnapt omdat ik in de verkeerde codetabel zat te kijken.
Bij deze heb ik dit gedaan maar nu werkt het eindscript niet meer. Maagdelijk blanke pagina. Kan terug beginnen zoeken.
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
<?php
// open database

$username="xxxxx";
$password="xxxxxx";
$database="xxxxxxx";

mysql_connect("xxxxxx.be.mysql",$username,$password);

mysql_select_db($database);



 
//let's start our session, so we have access to stored data
    session_start();

//We zetten dit volledig bovenaan

    //errors weergeven

    ini_set('display_errors',0); // 1 == aan , 0 == uit
    error_reporting(E_ALL | E_STRICT);

    // sql debug
    define('DEBUG_MODE',true);  // true == aan, false == uit

    //functie voor sql debug

    function showSQLError($sql,$error,$text='Error')
    {

        if (DEBUG_MODE)
        {

            return  '<pre>Error: ' . $error . '<br />' . $sql . '</pre>';
        }

        else
        {
            return $text;
        }    
    }

//let's create the query
$insert_query = "insert into eva_tevr(
                datum,
                factnr,
                email,
                verkoper,
                vriendwin,
                uitleg,
                crossel,
                aanbod,
                conform,
                verkoop,
                opm_winkel,
                technieker,
                vriendserv,
                instserv,
                afspraakserv,
                uitlegserv,
                crosselserv,
                service,
                opm_serv,
                buralg,
                bursnel,
                buroplos,
                admin,
                opm_admin
                ) values (
                '"
. mysql_real_escape_string($_SESSION['datum']) . "',
                '"
. mysql_real_escape_string($_SESSION['factnr']) . "',
                '"
. mysql_real_escape_string($_SESSION['email']) . "',
                '"
. mysql_real_escape_string($_SESSION['verkoper']) . "',
                '"
. mysql_real_escape_string($_SESSION['vriendwin']) . "',
                '"
. mysql_real_escape_string($_SESSION['uitleg']) . "',
                '"
. mysql_real_escape_string($_SESSION['crossel']) . "',
                '"
. mysql_real_escape_string($_SESSION['aanbod']) . "',
                '"
. mysql_real_escape_string($_SESSION['conform']) . "',
                '"
. mysql_real_escape_string($_SESSION['verkoop']) . "',
                '"
. mysql_real_escape_string($_SESSION['opm_winkel']) . "',
                '"
. mysql_real_escape_string($_SESSION['technieker']) . "',
                '"
. mysql_real_escape_string($_SESSION['vriendserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['instserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['afspraakserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['uitlegserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['crosselserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['service']) . "',
                '"
. mysql_real_escape_string($_SESSION['opm_serv']) . "',
                '"
. mysql_real_escape_string($_POST['buralg']) . "',
                '"
. mysql_real_escape_string($_POST['bursnel']) . "',
                '"
. mysql_real_escape_string($_POST['buroplos']) . "',
                '"
. mysql_real_escape_string($_POST['admin']) . "',
                '"
. mysql_real_escape_string($_POST['opm_admin']) . "'
                        )"
;
 
//let's run the query
//mysql_query($insert_query);

// Check of query is gelukt    

if (($result_insert_query = mysql_query($insert_query)) === false)
{

    //als de query fout is -> foutafhandeling
    echo showSQLError($insert_query,mysql_error(),'Fout bij het invoegen van de gebruiker.');
}

else
{
    // De query is gelukt! :)
    
    //echo 'Reactie is toegevoegd!';

}
//database sluiten
mysql_close();

# Redirect user to success page

header("Location: http://www.telecomvanassche.be/bedankttevr.html");

?>
Gewijzigd op 21/01/2015 15:04:58 door Ignace Verschaeve
 
- SanThe -

- SanThe -

21/01/2015 14:57:24
Quote Anchor link
Haal je databasegegevens even weg. Wel zo verstandig.
Zet de error reporting aan. Staat nu uit.
 
Ignace Verschaeve

Ignace Verschaeve

21/01/2015 15:02:30
Quote Anchor link
Had dat toen niet gesnapt omdat ik in de verkeerde codetabel zat te kijken.
Bij deze heb ik dit gedaan maar nu werkt het eindscript niet meer. Maagdelijk blanke pagina. Kan terug beginnen zoeken.
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
<?php
// open database

$username="xxxx";
$password="xxxxx";
$database="xxxxx";

mysql_connect("xxxxx.be.mysql",$username,$password);

mysql_select_db($database);



 
//let's start our session, so we have access to stored data
    session_start();

//We zetten dit volledig bovenaan

    //errors weergeven

    ini_set('display_errors',0); // 1 == aan , 0 == uit
    error_reporting(E_ALL | E_STRICT);

    // sql debug
    define('DEBUG_MODE',true);  // true == aan, false == uit

    //functie voor sql debug

    function showSQLError($sql,$error,$text='Error')
    {

        if (DEBUG_MODE)
        {

            return  '<pre>Error: ' . $error . '<br />' . $sql . '</pre>';
        }

        else
        {
            return $text;
        }    
    }

//let's create the query
$insert_query = "insert into eva_tevr(
                datum,
                factnr,
                email,
                verkoper,
                vriendwin,
                uitleg,
                crossel,
                aanbod,
                conform,
                verkoop,
                opm_winkel,
                technieker,
                vriendserv,
                instserv,
                afspraakserv,
                uitlegserv,
                crosselserv,
                service,
                opm_serv,
                buralg,
                bursnel,
                buroplos,
                admin,
                opm_admin
                ) values (
                '"
. mysql_real_escape_string($_SESSION['datum']) . "',
                '"
. mysql_real_escape_string($_SESSION['factnr']) . "',
                '"
. mysql_real_escape_string($_SESSION['email']) . "',
                '"
. mysql_real_escape_string($_SESSION['verkoper']) . "',
                '"
. mysql_real_escape_string($_SESSION['vriendwin']) . "',
                '"
. mysql_real_escape_string($_SESSION['uitleg']) . "',
                '"
. mysql_real_escape_string($_SESSION['crossel']) . "',
                '"
. mysql_real_escape_string($_SESSION['aanbod']) . "',
                '"
. mysql_real_escape_string($_SESSION['conform']) . "',
                '"
. mysql_real_escape_string($_SESSION['verkoop']) . "',
                '"
. mysql_real_escape_string($_SESSION['opm_winkel']) . "',
                '"
. mysql_real_escape_string($_SESSION['technieker']) . "',
                '"
. mysql_real_escape_string($_SESSION['vriendserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['instserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['afspraakserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['uitlegserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['crosselserv']) . "',
                '"
. mysql_real_escape_string($_SESSION['service']) . "',
                '"
. mysql_real_escape_string($_SESSION['opm_serv']) . "',
                '"
. mysql_real_escape_string($_POST['buralg']) . "',
                '"
. mysql_real_escape_string($_POST['bursnel']) . "',
                '"
. mysql_real_escape_string($_POST['buroplos']) . "',
                '"
. mysql_real_escape_string($_POST['admin']) . "',
                '"
. mysql_real_escape_string($_POST['opm_admin']) . "'
                        )"
;
 
//let's run the query
//mysql_query($insert_query);

// Check of query is gelukt    

if (($result_insert_query = mysql_query($insert_query)) === false)
{

    //als de query fout is -> foutafhandeling
    echo showSQLError($insert_query,mysql_error(),'Fout bij het invoegen van de gebruiker.');
}

else
{
    // De query is gelukt! :)
    
    //echo 'Reactie is toegevoegd!';

}
//database sluiten
mysql_close();

# Redirect user to success page

header("Location: http://www.telecomvanassche.be/bedankttevr.html");

?>
 
- SanThe -

- SanThe -

21/01/2015 15:06:00
Quote Anchor link
- SanThe - op 21/01/2015 14:57:24:
Haal je databasegegevens even weg. Wel zo verstandig.
Zet de error reporting aan. Staat nu uit.


Edit je vorige post even.
De gegevens staan daar nog steeds in.
En zet de errors aan, misschien zie dan wat er fout gaat.
 

Pagina: « vorige 1 2 3 volgende »



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.