Registratie werkt niet.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Back-end programmeur

Functieomschrijving Heb jij recent jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een erkende werkgever in regio Waalwijk zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in kaart, om ze

Bekijk vacature »

Medior PHP Developer

Bij Getnoticed doen wij wat we leuk vinden, websites bouwen en online marketing. Voor veel van onze klanten doen we dan ook allebei. Wel zo fijn om campagnes te draaien voor conversiegerichte website die in eigen beheer zijn. In onze vestiging in Nederweert zitten onze development afdelingen en worden de websites gebouwd. Op dit moment zijn we op zoek naar jou: dé PHP/Back-end developer die net als wij, het hoofd boven het maaiveld durft uit te steken! In het kort Even een paar punten die omschrijven wat deze toffe baan inhoudt: Het bedenken van nieuwe functionaliteiten Het verbeteren van het

Bekijk vacature »

SQL database developer

Functie omschrijving Voor een softwarebedrijf gespecialiseerd in het ontwikkelen van logistieke software in omgeving Tilburg zijn wij op zoek naar een ervaren SQL database developer. Je gaat werken aan uitdagende, complexe projecten. Iedere klant/project betekent maatwerk in de database. Jouw werkzaamheden zullen er als volgt uit zien: Je bent verantwoordelijk voor de gehele ontwikkelstraat. Van architectuur tot ontwikkeling Je gaat je bezig houden met het ontwerpen en ontwikkelen van MS SQL server databases. Je gebruikt hiervoor T-SQL als programmeer laag. Je begeleidt als lead developer de projecten bij klanten van A – Z. Je sluit aan bij meetings met klanten,

Bekijk vacature »

IT Manager team PaaS

TenneT is hard groeiende om haar ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Wij zijn op zoek naar een gedreven Lead PaaS die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je wordt de Teammanager (Lead) van een nieuw team binnen de afdeling Basic van Information Technology and Facilities (ITF) van TenneT. Het team heet Platform as a Service. Hier wordt elke dag in een goede sfeer met zijn allen hard gewerkt om vanuit IT

Bekijk vacature »

.NET developer

Functie As a .NET developer you start in a driven and diverse development team. Your team consists of 16 IT professionals, including 7 software engineers. Because your new employer is internationally active, there are also international IT professionals working in the IT department. As a result, the official language is English. As a team you are responsible for a new Cloud Native product. This product runs entirely in Azure with a Progress Database and various Azure Functions. In addition, this product has a JS front-end, a REST API system and a layer in C # .NET. The idea is therefore

Bekijk vacature »

C# Ontwikkelaar

Functie omschrijving We are looking for a dutch native speaker Wil jij graag aan de slag als C# ontwikkelaar en jouw skills verder ontwikkelen? Zoek niet verder! Als C# ontwikkelaar ga je aan de slag met de volgende taken: (verdere) ontwikkeling van de software voor de interne processen binnen een .net omgeving; optimaliseren van de dataprocessing; ontwerpen en implementeren van zowel desktop- als web-programmatuur; ontwikkeling van tools ten behoeve van consultants en klanten. Bedrijfsprofiel Deze organisatie is gevestigd in de regio van Den Bosch. Zij ontwikkelen business intelligence software voor een specifieke branche. Dit houdt in dat zij dashboards ontwikkelen

Bekijk vacature »

Senior Front-end Developer

Wordt jij de nieuwe Front end specialist / developer? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Onze klantenkring is groot en divers, dat vraagt om flexibiliteit van jou. Tegelijkertijd betekent dit dagelijks nieuwe dingen leren én dat geen werkdag hetzelfde is. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling waarbij iedereen welkom is, zowel binnen als

Bekijk vacature »

Back end developer Python, PHP

Functie Jij als full stack ontwikkelaar zult komen te werken samen met 1 PHP ontwikkelaar een PO en een flexibele schil aan ontwikkelaars . Samen ga je ervoor zorgen dat de huidige producten doorontwikkeld worden. De marketplace is geschreven in PHP Laravel en in de front end React. De roostersoftware is ontwikkeld in Python in combinatie met React in de front end. Jij zult voornamelijk (lees 75%) werken aan de roostersoftware. Momenteel ligt de uitdaging in het feit dat de roostersoftware breder schaalbaar moet worden zodat het voor meerdere flexwerkers ingezet kan worden. Verder willen ze financiële koppelingen gaan maken

Bekijk vacature »

Medior C# Developer

You'll build modern applications for Coolblue's back office. We have a lot of friends, and they crave well-structured data and user-friendly, task-focused applications. How do I become a Medior C# Developer at Coolblue? You regularly participate in brainstorm sessions about user experience, data, and task flow with the UX Designer, Product Owner, and Data Scientists in your team. Besides that you will create disconnected, highly congruent, and testable code that can easily be maintained and is future-proof. Want to become C# Developer at Coolblue? Read below if the job suits you. You enjoy doing this Working with various types of

Bekijk vacature »

C++ Ontwikkelaar

Functieomschrijving Ben jij als software ontwikkelaar toe aan een nieuwe uitdaging? Dan zoeken wij jou! Voor het maken van de procesbesturingssoftware gebruiken onze projectteams een in C++ en C# geschreven tool. Dit is een gedistribueerd object framework wat alle kernfuncties biedt voor een procesautomatisering. Verder zullen jouw werkzaamheden o.a. bestaan uit: Ontwerpen, programmeren en testen van product aanpassingen; Analyseren van vragen en wensen van gebruikers en deze vertalen naar een functioneel ontwerp; Inzichtelijk maken van voortgang omtrent softwarewerkzaamheden, o.a. door middel van SCRUM; Continu toetsen van het effect van nieuwe releases op andere tools en processen; Implementeren van nieuwe product

Bekijk vacature »

Implementatie specialist

Standplaats: Honselersdijk Aantal uren: 32 – 40 uur Opleidingsniveau: HBO werk- en denkniveau Ben jij de implementatie expert die onze klanten helpt bij het integreren van de Greencommerce software? Ben jij daarnaast communicatief sterk, denk jij graag in verbeteringen en heb je ervaring met ICT? Lees dan snel verder! Bedrijfsinformatie Jem-id is een grote speler op het gebied van software ontwikkeling. Zo zijn wij continu bezig met het ontwikkelen van de meest innovatieve software voor de AGF- en sierteeltsector. We creëren oplossingen die er toe doen en verbinden klanten niet alleen op technisch vlak, maar zoeken ook de verbinding in

Bekijk vacature »

Medior/senior front end developer

Functie Vanwege de groei binnen het bedrijf zijn ze op zoek naar een Technische front end developer. Momenteel hun front end back end team gescheiden aan het werk. Hier willen ze verandering in krijgen. Omdat ook veel interne applicaties ontwikkeld worden zoeken ze iemand die hen kan helpen om de interne applicaties te voorzien van de juiste Vue.js componenten. Zodoende willen ze de interactie tussen front end en back end versoepelen en de volgende stap binnen het platform gaan zetten. Deze componenten die jij ontwikkeld zullen in elk project gebruikt worden. Het back end team bestaat momenteel uit 8 ontwikkelaars

Bekijk vacature »

Senior Java Ontwikkelaar

Dit ga je doen Werken aan uiteenlopende interne projecten voor grote (internationale) organisaties; Ontwikkelen van diverse (web)applicaties en platformen met technieken als Java, Azure en ASP.NET; Complexe vraagstukken tackelen met jouw expertise en ervaring; Waar nodig help jij je collega's om samen tot de juiste oplossing te komen. Hier ga je werken Als Java Developer kom je te werken bij een internationale organisatie in regio Amsterdam die zich richt op procesoptimalisatie door middel van zeer complexe IT oplossingen. Dit doen zij op het allerhoogste niveau met vestigingen over heel de wereld en met een groot aantal aansprekende, maatschappelijk betrokken klanten.

Bekijk vacature »

Java Developer

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

BizTalk/ Azure Developer

Dit ga je doen •Understanding the scope of required functionality, translate them within context of way of working of the team into developed solutions, whilst safeguarding documentation; •Planning based on assigned sprint tasks; •Acting as an expert in estimation techniques and planning; •Understanding your role in the agile process and act in this way; •Facilitating internal communication and effective collaboration; •Working closely with scrum master to handle backlogs and new requests; •Providing information to the third parties about activities and needs for compliance. Hier ga je werken Our client is a leading organization focusing on animal nutrition, offering solutions that

Bekijk vacature »
Tim Klein

Tim Klein

29/12/2013 11:54:14
Quote Anchor link
Beste,
Mijn registratiepagina werkt niet.
Wanneer ik een account aanmaak, komt er "done" te staan, maar komt er niets in database.

Mijn register.php ziet er zo uit:
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
<?php
// maak style aan
include 'include/bgup.php';
?>

<html>
<u>Because of building of the site, All the data can be removed</u>
<table>
<form method="post" name="update" action="update.php" />
<TR><TD>Username:</TD><TD> <input type=text name=username></TD></TR>
<tr><td>Password:</TD><TD> <input type=password name=password></TD></TR><p>
<TR><TD>email:</TD><TD> <input type=text name=email></TD></TR>
<TR><TD><input type="checkbox" name="checkbox" value="Yes" />&nbsp;&nbsp;Yes, I agree with the <a href="toc.html">Terms Of Conditions</a></TD</TR>
<TR><TD></TD><TD><input type=submit name=submit value=submit></TD></TR></TABLE>
</form></html>
<?php
include 'include/bgdown.php';
?>


De update.php ziet er als volgt uit:
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
<?php
error_reporting(-1);
//Bovenkant layout ;)
include 'include/bgup.php';
// Maak mysql connectie aan

mysql_connect("**hostknip**", "**userknip**", "**passwordknip**") or die(mysql_error());
mysql_select_db("**dbknip**")or die("Connection Failed"); echo "<br />";
// SQL Query
$query = "SELECT email FROM leden WHERE email = '" . mysql_real_escape_string($_POST['email']) . "'";
$get = mysql_query($query);
$aantal = mysql_num_rows($get);
if($aantal !== 0) die ('Email does already excist <a href="register.php">Back</a>!');
$username=mysql_real_escape_string($_POST['username']);
$pass=mysql_real_escape_string($_POST['password']);
if (isset($_POST['checkbox'])) {
$query = "INSERT INTO leden (`username`, `password`, `email`, `level`) VALUES  ('".mysql_real_escape_string($_POST['username'])."',".mysql_real_escape_string(md5($_POST['password']))."', '".mysql_real_escape_string($_POST['email'])."','1')" or die (mysql_error());
if(mysql_query($query));
echo 'Done';
}

else {
echo 'You have to accept the terms of condition.';
}

//Onderkant layout ;)
include 'include/bgdown.php';
?>


Ik kom er zelf niet uit.
Voor de genen die het willen weten: Een print-screen van de database op http://www.teacherdutch.webatu.com/phphulp.png

Alvast bedankt.
Tim

- Aar -:
De titel van het topic is aangepast en de spelfout is eruit.
Gewijzigd op 30/12/2013 10:28:29 door - Ariën -
 
PHP hulp

PHP hulp

25/02/2024 00:01:12
 
- Ariën  -
Beheerder

- Ariën -

29/12/2013 12:01:29
Quote Anchor link
Zet aub je script tussen [code]-tags voor een beter overzicht in het forum.
 
Tim Klein

Tim Klein

29/12/2013 12:03:11
Quote Anchor link
Gedaan.
 
- SanThe -

- SanThe -

29/12/2013 12:03:31
Quote Anchor link
Bouw nette foutafhandeling in voor de query's.
Or die() is niet netjes en bij jou staat het ook nog op de verkeerde plaats.

Je query is namelijk mislukt en jij ziet geen error.

Toevoeging op 29/12/2013 12:07:09:

Slordigheid is de grootste progammeerfout.
Registartie werkt niet.
 
- Ariën  -
Beheerder

- Ariën -

29/12/2013 12:07:44
Quote Anchor link
Er hoort sowieso op lijn 18 geen puntkomms maar een accolade.
 
Mausie Wausie

Mausie Wausie

29/12/2013 22:38:54
Quote Anchor link
Ik zou het zo doen:

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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
<?php
error_reporting(-1);
//Bovenkant layout ;)
include 'include/bgup.php';
// Maak mysql connectie aan
mysql_connect("**hostknip**", "**userknip**", "**passwordknip**") or die(mysql_error());
mysql_select_db("**dbknip**")or die(mysql_error());

if(!mysql_connect){
    echo 'kan geen verbinding maken';
        exit;
}
elseif(!mysql_select_db){
    echo 'Kan niet bij de database';
        exit;
}
else{

function
StripDanger($value) {
    $magic_quotes_active = get_magic_quotes_gpc();
    $new_enough_php = function_exists('mysql_real_escape_string'); // i.e. PHP >= v4.3.0

    if ($new_enough_php) { // PHP v4.3.0 or higher
        // undo any magic quote effects so mysql_real_escape_string can do the work

        if($magic_quotes_active) {
            $value = stripslashes($value);
        }

        $value = mysql_real_escape_string($value);
    }

    else { // before PHP v4.3.0
        // if magic quotes aren't already on then add slashes manually

        if(!$magic_quotes_active) {
            $value = addslashes($value);
        }

        // if magic quotes are active, then the slashes already exist
    }
    return $value;
}



if($_SERVER['REQUEST_METHOD'] == 'POST' && $_POST['verzonden'] == 1 )  {
        
        $username = StripDanger($_POST['username']);
        $email = StripDanger($_POST['email']);
        $password = StripDanger($_POST['password']);
        $password1 = StripDanger($_POST['password1']);
        $checkbox = StripDanger($_POST['checkbox']);
        
        //alle fouten in een array zetten
        $aFout = array();
        
        if (empty($username)){ //kijken of gebruikersnaam leeg is
            $form = true;
            $aFout[] = 'U moet een gebruikersnaam opgeven';
            }

        //kijken of email al bestaat
        $resultaat_email = mysql_query("SELECT email FROM leden WHERE email='".$email."'");
        if($resultaat_email == false){
            echo mysql_error();
    
        }
else{
        
            if(mysql_num_rows($resultaat_email)>0){
                $form = true;
                $aFout[] = 'Email bestaat al';
            
            }
elseif(isset($email) && strlen($email)>5)    { //controleren of de ingevoerde e-mail adres valide is
                // andere variant test 01/03/2010

                if(!preg_match('#^[a-z0-9][a-z0-9_.\-]*@([a-z0-9]+\.)*[a-z0-9][a-z0-9\-]+\.([a-z]{2,6})$#i', $email)) {
                    $form = true;
                    $aFout[] = 'Dit is geen email adres';
                }
else{
                // alles in orde; geen foutsituatie
                }
            }

            else{
                $form = true;
                $aFout[] = 'Geen valide email adres';
            }
        }

        //kijken of wachtwoord 1 leeg is
        if (empty($password)){
            $form = true;
            $aFout[] = 'Wachtwoord invoeren';
        //kijken of de wachtwoorden gelijk zijn
        }elseif($password != $password1){
            $form = true;
            $aFout[] = 'Wachtwoord zijn niet gelijk';
        }
else{
            //versleutelen
            $passworddb = md5($password);
            }

        //kijken of checkbox leeg is
        if (empty($checkbox)){
            $form = true;
            $aFout[] = 'Je moet akkoord gaan met de algemenevoorwaarde';
            }

            
            //als er fouten zijn tijdens het verwerken van het formulier, dan stoppen we alles in een box
            if(!empty($aFout))
                {

                    $errors = '
                    <table><tr><td>
                    <ul>'
;
                    foreach($aFout as $sFout)
                        
                    {

                        $errors .= "    <li>".$sFout."</li>\n";
                    }

                    $errors .= "</ul>
                    </td></tr></table>"
;
                    
                    }
else{//hier gaan we de leden toevoegen
                $form = false;
        

            //geen fouten alles in de db toevogen
            $query = mysql_query("INSERT INTO leden (`username`, `password`, `email`, `level`) VALUES  ('$username','$passworddb', '$email', '1')") or die (mysql_error());
            if($query){
                $form = false;
                echo 'Registratie voltooid';
            }
else{
                $form = true;
                echo 'Er is iets fout gegaan';
                
            }
        }
    }


if($form){

if(isset($errors)){ echo $errors; } ?>



<u>Because of building of the site, All the data can be removed</u>
<table>
<form method="post" name="registratie" action="registratie.php" />
<TR><TD>Username:</TD><TD> <input type="text" name="username"></TD></TR>
<tr><td>Password:</TD><TD> <input type="password" name="password"></TD></TR><p>
<tr><td>Password repeat:</TD><TD> <input type="password" name="password1"></TD></TR><p>
<TR><TD>email:</TD><TD> <input type="text" name="email"></TD></TR>
<TR><TD><input type="checkbox" name="checkbox" value="Yes" />&nbsp;&nbsp;Yes, I agree with the <a href="toc.html">Terms Of Conditions</a></TD</TR>
<input type="hidden" name="verzonden" value="1">
<TR><TD></TD><TD><input type="submit" name="submit" value="verzenden"></TD></TR></TABLE>
</form>

<?php    
    }
}

//Onderkant layout ;)
include 'include/bgdown.php';

?>


Groet Mausie.
Gewijzigd op 30/12/2013 10:27:54 door - Ariën -
 
Tim Klein

Tim Klein

30/12/2013 00:14:08
Quote Anchor link
Krijg een foutmelding.

Waar zit de fout nu?


PHP Error Message

Notice: Use of undefined constant mysql_connect - assumed 'mysql_connect' in /home/a4138720/public_html/register2.php on line 9

Free Web Hosting

PHP Error Message

Notice: Use of undefined constant mysql_select_db - assumed 'mysql_select_db' in /home/a4138720/public_html/register2.php on line 12

Free Web Hosting

PHP Error Message

Notice: Undefined variable: form in /home/a4138720/public_html/register2.php on line 128

Free Web Hosting
 
- Ariën  -
Beheerder

- Ariën -

30/12/2013 00:40:06
Quote Anchor link
mysql_connect en mysql_select_db op lijn 9 en 12 zijn functies, maar blijkbaar mist er nog het één en ander:

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(-1);
//Bovenkant layout ;)
include 'include/bgup.php';
// Maak mysql connectie aan
if(!mysql_connect("**hostknip**", "**userknip**", "**passwordknip**")) {
    echo "Error: ".mysql_error();
    exit;
}

elseif(!mysql_select_db("**dbknip**")) {
    echo "Error: ".mysql_error();
    exit;
}
else {
    //etc
}
?>
Gewijzigd op 30/12/2013 12:34:57 door - Ariën -
 
Mausie Wausie

Mausie Wausie

30/12/2013 08:24:49
Quote Anchor link
Oeps mijn fout, iets te snel gekopieerd en geplakt.

of zoals Aar het aangeeft, alleen moet er volgens mij voor de functie een uitroepteken (!) staan, omdat hij de error pas moet weergeven als de if statment false is.

Als de verbinding nu true is, zal hij de error weergeven.

Correct me if I'm wrong!

Dit moet het zijn:

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
<?php
error_reporting(-1);
//Bovenkant layout ;)
include 'include/bgup.php';
// Maak mysql connectie aan
$link = mysql_connect("**hostknip**", "**userknip**", "**passwordknip**");
$db   = mysql_select_db("**dbknip**");

//als het false is fout afhandeling
if(!$link){
    echo "kan geen verbinding maken, ERROR: ".mysql_error();
        exit;
//als het false is fout afhandeling
}elseif(!$db){
    echo "Kan niet bij de database, ERROR: ".mysql_error();
        exit;
}
else{
 //vanaf hier geen fouten met de verbinding, de rest verwerken
 
}
?>


Groet Mausie.
Gewijzigd op 30/12/2013 10:26:41 door - Ariën -
 
Obelix Idefix

Obelix Idefix

30/12/2013 10:24:29
Quote Anchor link
Staan er echte gegevens m.b.t. de databaseverbinding in de bovenstaande codes?!
 
- Ariën  -
Beheerder

- Ariën -

30/12/2013 10:29:52
Quote Anchor link
Ik betwijfel het, maar als voordeel van de twijfel heb ik de database-gegevens maar even weggeknipt.
 
Mausie Wausie

Mausie Wausie

30/12/2013 11:11:38
Quote Anchor link
Obelix en Idefix op 30/12/2013 10:24:29:
Staan er echte gegevens m.b.t. de databaseverbinding in de bovenstaande codes?!


Hallo,

Ik heb de gegevens van jou overgenomen of ze kloppen is aan jou.

Ik zal zelf nooit mijn database gegevens op een forum zetten.
Lijkt me dat je die zelf invult.

Groet Mausie.
 
- Ariën  -
Beheerder

- Ariën -

30/12/2013 12:36:23
Quote Anchor link
Mausie Wausie op 30/12/2013 08:24:49:
of zoals Aar het aangeeft, alleen moet er volgens mij voor de functie een uitroepteken (!) staan, omdat hij de error pas moet weergeven als de if statment false is.

Klopt, ik heb het aangepast. Het glipte er even in het late uurtje er tussen door.
 
Tim Klein

Tim Klein

30/12/2013 15:32:00
Quote Anchor link
Ik heb nu dit:
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
<?php
error_reporting(-1);
//Bovenkant layout ;)
include 'include/bgup.php';
// Maak mysql connectie aan
$link = mysql_connect("**dbhost**", "**dbusername**", "**dbpassword**");
$db   = mysql_select_db("**dbname**");

//als het false is fout afhandeling
if(!$link){
    echo "kan geen verbinding maken, ERROR: ".mysql_error();
        exit;
//als het false is fout afhandeling
}elseif(!$db){
    echo "Kan niet bij de database, ERROR: ".mysql_error();
        exit;
}
else{

function
StripDanger($value) {
    $magic_quotes_active = get_magic_quotes_gpc();
    $new_enough_php = function_exists('mysql_real_escape_string'); // i.e. PHP >= v4.3.0

    if ($new_enough_php) { // PHP v4.3.0 or higher
        // undo any magic quote effects so mysql_real_escape_string can do the work

        if($magic_quotes_active) {
            $value = stripslashes($value);
        }

        $value = mysql_real_escape_string($value);
    }

    else { // before PHP v4.3.0
        // if magic quotes aren't already on then add slashes manually

        if(!$magic_quotes_active) {
            $value = addslashes($value);
        }

        // if magic quotes are active, then the slashes already exist
    }
    return $value;
}



if($_SERVER['REQUEST_METHOD'] == 'POST' && $_POST['verzonden'] == 1 )  {
        
        $username = StripDanger($_POST['username']);
        $email = StripDanger($_POST['email']);
        $password = StripDanger($_POST['password']);
        $password1 = StripDanger($_POST['password1']);
        $checkbox = StripDanger($_POST['checkbox']);
        
        //alle fouten in een array zetten
        $aFout = array();
        
        if (empty($username)){ //kijken of gebruikersnaam leeg is
            $form = true;
            $aFout[] = 'U moet een gebruikersnaam opgeven';
            }

        //kijken of email al bestaat
        $resultaat_email = mysql_query("SELECT email FROM leden WHERE email='".$email."'");
        if($resultaat_email == false){
            echo mysql_error();
    
        }
else{
        
            if(mysql_num_rows($resultaat_email)>0){
                $form = true;
                $aFout[] = 'Email bestaat al';
            
            }
elseif(isset($email) && strlen($email)>5)    { //controleren of de ingevoerde e-mail adres valide is
                // andere variant test 01/03/2010

                if(!preg_match('#^[a-z0-9][a-z0-9_.\-]*@([a-z0-9]+\.)*[a-z0-9][a-z0-9\-]+\.([a-z]{2,6})$#i', $email)) {
                    $form = true;
                    $aFout[] = 'Dit is geen email adres';
                }
else{
                // alles in orde; geen foutsituatie
                }
            }

            else{
                $form = true;
                $aFout[] = 'Geen valide email adres';
            }
        }

        //kijken of wachtwoord 1 leeg is
        if (empty($password)){
            $form = true;
            $aFout[] = 'Wachtwoord invoeren';
        //kijken of de wachtwoorden gelijk zijn
        }elseif($password != $password1){
            $form = true;
            $aFout[] = 'Wachtwoord zijn niet gelijk';
        }
else{
            //versleutelen
            $passworddb = md5($password);
            }

        //kijken of checkbox leeg is
        if (empty($checkbox)){
            $form = true;
            $aFout[] = 'Je moet akkoord gaan met de algemenevoorwaarde';
            }

            
            //als er fouten zijn tijdens het verwerken van het formulier, dan stoppen we alles in een box
            if(!empty($aFout))
                {

                    $errors = '
                    <table><tr><td>
                    <ul>'
;
                    foreach($aFout as $sFout)
                        
                    {

                        $errors .= "    <li>".$sFout."</li>\n";
                    }

                    $errors .= "</ul>
                    </td></tr></table>"
;
                    
                    }
else{//hier gaan we de leden toevoegen
                $form = false;
        

            //geen fouten alles in de db toevogen
            $query = mysql_query("INSERT INTO leden (`username`, `password`, `email`, `level`) VALUES  ('$username','$passworddb', '$email', '1')") or die (mysql_error());
            if($query){
                $form = false;
                echo 'Registratie voltooid';
            }
else{
                $form = true;
                echo 'Er is iets fout gegaan';
                
            }
        }
    }


if($form){

if(isset($errors)){ echo $errors; } ?>



<u>Because of building of the site, All the data can be removed</u>
<table>
<form method="post" name="registratie" action="registratie.php" />
<TR><TD>Username:</TD><TD> <input type="text" name="username"></TD></TR>
<tr><td>Password:</TD><TD> <input type="password" name="password"></TD></TR><p>
<tr><td>Password repeat:</TD><TD> <input type="password" name="password1"></TD></TR><p>
<TR><TD>email:</TD><TD> <input type="text" name="email"></TD></TR>
<TR><TD><input type="checkbox" name="checkbox" value="Yes" />&nbsp;&nbsp;Yes, I agree with the <a href="toc.html">Terms Of Conditions</a></TD</TR>
<input type="hidden" name="verzonden" value="1">
<TR><TD></TD><TD><input type="submit" name="submit" value="verzenden"></TD></TR></TABLE>
</form>

<?php    
    }
}

//Onderkant layout ;)
include 'include/bgdown.php';

?>


Nu krijg ik alleen de volgende fout:
Notice: Undefined variable: form in /home/a4138720/public_html/register3.php on line 130
De $ bestaat toch?
Ik krijg alleen de CSS te zien, met de foutmelding erin. Krijg geen form te zien.

Grotjes,
Tim.
 
Wouter Van Marrum

Wouter Van Marrum

30/12/2013 15:51:53
Quote Anchor link
probeer op lijn 130:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
if(isset($form)) {
?>
 
Kenneth Rozendaal

Kenneth Rozendaal

30/12/2013 15:54:47
Quote Anchor link
Als ik even snel naar je code kijk, lijkt het erop dat je scope niet klopt, je hebt alleen binnen if en else statements je $form gedeclareert.
Ik denk dat je probleem is opgelost als je onder:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$checkbox = StripDanger($_POST['checkbox']);

neerzet:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$form = true;


Het kan ook dat er iets anders moet staan dan true, maar ik heb de code niet echt goed bekeken...

Succes ermee in ieder geval!

Kenneth
Gewijzigd op 30/12/2013 15:58:21 door Kenneth Rozendaal
 
Mausie Wausie

Mausie Wausie

31/12/2013 07:48:50
Quote Anchor link
Hallo Tim,

Je moet na de eerste else statment na de controle van de database connectie even je $form op true zetten.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$form = true;


Ben ik vergeten mee te kopiëren, dan is $form gezet.

Groet Mausie.
 
Ivo P

Ivo P

31/12/2013 12:31:12
Quote Anchor link
stripDanger():

waarom zou je nog rekening houden met de vraag of iemand PHP < 4.3 heeft.
Dan heb je het over december 2002: meer dan 11 jaar geleden!
http://www.php.net/ChangeLog-4.php#4.3.0

Daarnaast vind het onverstandig om centraal de acties zoals $username = StripDanger($_POST['username']); uit te voeren.
Ja: je hebt ze dan "allemaal" beveiligd.
maar ook: als je er maar 1 vergeet, dan merk je dat nergens meer op.

Daarnaast is het ook verleidelijk om verderop in je script $username te gebruiken. Die bestaat immers.
Maar dan krijg je zo'n leuk effect dat "foto's" ineens op het scherm staat als "foto\'s"
en dan zie je naar verloop van tijd teksen verschijnen met "foto\\\\\\\\\\\\'s" en kun je precies natellen hoevaak de tekst bewerkt is.

Ik ben er voorstander van om alleen op die plekken waar je het nodig hebt te beveiligen.
In dit geval dus elke query, en ook elke variabele. (met mysql_real_escape_string of de mysqli variant daarvan).

En op de plek waar je de username op het scherm wilt hebben gebruik je htmlspecialchars($_POST['username']) of htmlspecialchars($anderevar);

Je ziet dan aan je query direct dat je inderdaad al je variabelen beveiligt en hoeft niet later bij je opdrachtgever te melden dat je in eerste instantie die 3 variabelen prima beveiligde met stripDanger() maar dat je bij het aanpassen helaas vergeten was om die andere 2 daar ook toe te voegen en dat de database nu helaas kapot of gehackt is.

Toevoeging op 31/12/2013 12:33:28:

aanvullend: dus beveiliging toepassen op de manier zoals die daar nodig is: escapen voor je database, "escapen" met htmlspecialchars voor je scherm.
 



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.