Registratie werkt niet.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Magento developer

Functie E-commerce is een ‘’snelle’’ wereld. Om hierin continu voorop te blijven omarmen ze in een vroeg stadium nieuwe technieken. Een webshop is nooit af en kan altijd beter, sneller en efficiënter. Tegelijkertijd hebben ze vanaf hun oprichting altijd vastgehouden aan kwaliteit boven snelheid, en dit loont. Als back-end developer fungeer je als het verlengstuk van hun klanten. Technisch complexe zaken pak je met liefde op, en hierin werk je samen met o.a. front-end developers en designers. Klanten verwacht hierin kwaliteit van het hoogste niveau en een proactieve, meedenkende rol bij het maken van zowel technische als strategische keuzes. Ga

Bekijk vacature »

PHP Software Developer

Functie omschrijving PHP Software Developer gezocht! Voor een organisatie in de regio Zeist die zich bezighoud met het verbeteren van de medicatieveiligheid zoeken wij een Software Developer. In deze functie zijn wij op zoek naar een slimme en enthousiaste Developer die interesse heeft in farmacie, logistiek en ICT. Daarnaast beschik je over een goed analytisch vermogen en ben je van nature gestructureerd en resultaatgericht. Je moet in deze functie daadkrachtig, flexibel en communicatief goed zijn. Je verantwoordelijkheden bestaan uit: Object georiënteerd programmeren; Werken in een scrumteam aan de ontwikkeling van een medicatiebewakingssysteem; Meedenken over de mogelijkheden en onmogelijkheden van projecten;

Bekijk vacature »

SQL Developer

Functie omschrijving Altijd al willen werken bij een snelgroeiend bedrijf, actief in de logistieke sector? Dit is je kans! Ik ben op zoek naar een ervaren SQL Developer in de omgeving Tilburg. Dit bedrijf is gespecialiseerd in in de ontwikkeling van software en maatwerk oplossingen voor het automatiseren van logistieke processen. Klanten zijn o.a. BOL en andere grote distributiecentrums. Jouw taken worden vooral: Verantwoordelijk voor ontwikkelen van stored procedures, voor snelle afhandeling van data; Optimalisatie van de SQL query's en T-SQL query's; Jij gaat je bezig houden met ontwerpen, ontwikkelen en optimaliseren van de MS SQL Databases; In deze functie

Bekijk vacature »

Front end developer binnen de consultancy

Functie Je komt in een team met ambitieuze developers die de passie voor Front-End met jou delen. Samen ga je aan de slag met leuke en leerzame opdrachten. Het team heeft een eigen budget en financiën en zij bepalen zelf hoe dat besteed en investeert wordt. Je gebruikt tools als JavaScript, Node.js, React, Angular, Typescript en Vue.js wanneer je werkt aan de opdrachten. Daarnaast zul je veel leren van je collega’s en gezamenlijk een leuke tijd doorbrengen tijdens activiteiten zoals wintersport, hackatons en conferentiebezoeken. Je krijgt niet alleen de mogelijkheid Front-End te ontwikkelen, maar ook vooral jezelf. Dit kan behaald

Bekijk vacature »

Medior/Senior Software Developers gezocht in de Ra

Functie Op dit moment staan er posities open voor de volgende functies: Front-end, Back-End & Fullstack software developer. Als Front-End software developer werk je met JavaScript en de bijbehorende technologieën zoals TypeScript, Angular, React, Vue en Svelte. Als Back-End software developer ben je bezig in NodeJS en doe je dit met behulp van AWS, NoSQL, REST en GraphQL. Je krijgt leuke en uitdagende opdrachten met een gemiddelde duur van anderhalf jaar. Hier werk je in een team met andere IT’ers aan het ontwikkelen en verbeteren van software. Je wordt begeleid door een accountmanager die fungeert als jouw aanspreekpunt. Het team

Bekijk vacature »

No-Code Betty Blocks ontwikkelaar

Bedrijfsomschrijving Wil jij de bedrijfsprocessen van klanten revolutionair digitaliseren en optimaliseren zonder beperkt te worden door programmeertalen? Kom werken bij een snelgroeiende en professionele organisatie met een gezonde dosis humor en veel vrijheid om jezelf te ontwikkelen. Als No-Code Betty Blocks ontwikkelaar werk je vanuit ons kantoor in het hart van Nederland, je thuiswerkplek of op locatie bij de klant. We faciliteren de juiste trainingen en ondersteuning zodat je een echte Betty Blocks expert wordt. Naast het werk zijn er bij ons bijzondere events, zoals een jaarlijkse zeildag, een zomerse barbecue en een knus kerstdiner om de grillige maanden door

Bekijk vacature »

.NET Developer Senior

Dit ga je doen Het ontwikkelen van backend applicaties in C#; Het maken van vele koppelingen met andere ERP-applicaties zoals JD Edwards en SAP; Je bent (mede) verantwoordelijk voor het opstellen van technisch ontwerpen voor de te ontwikkelen software oplossingen; Je bent gemiddeld 90% van je tijd inhouse oplossingen aan het ontwikkelen en testen. De overige 10% van je tijd ben je bij klanten op locatie om oplossingen te implementeren, klanten te begeleiden en de software verder te innoveren; Naast het zelfstandig ontwikkelen van software oplossingen ben je ook bezig met het waarborgen van je contacten bij de klant, het

Bekijk vacature »

PHP developer - Digital Agency

Functie Het team telt momenteel 20 collega’s, bestaande uit developers (front- en backend) en het operations team, waaronder ook het management en twee scrum masters vallen. Ze zijn op zoek naar een PHP developer die in staat is zelfstandig te werken. Je komt te werken in één van de drie scrumteams en gaat aan de slag met een project voor de klant. Het fijne hieraan is dat je wel afwisseling hebt qua werk, maar tegelijkertijd doorlopend werkt voor bestaande klanten. Hierdoor krijg je ook de kans om echt de diepte in te gaan en innovatieve technische oplossingen neer te zetten.

Bekijk vacature »

PHP Developer - Draag bij aan de maatschappij!

Bedrijfsomschrijving Wil jij als applicatieontwikkelaar deel uitmaken van een gedreven ontwikkelteam en werken aan innovatieve producten? Dan hebben wij dé uitdaging voor jou! Wij zijn op zoek naar een enthousiaste collega die samen met ons de technische ondergrond van onze producten verder wil ontwikkelen met behulp van PHP. Met jouw expertise geef je de finishing touch aan onze producten om jezelf steeds opnieuw weer te verrassen. Functieomschrijving Bij ons staan innovatie en creativiteit centraal. Wij zijn op zoek naar een enthousiaste PHP ontwikkelaar die nieuwe ideeën en inzichten kan inbrengen en daarmee zichzelf en het team verder kan laten groeien.

Bekijk vacature »

.NET developer

Functie Als ervaren .NET ontwikkelaar ontbreekt er aan passie en motivatie niks. Jij bent communicatief sterk en pakt iedere uitdaging dan ook met beide handen aan. Op projectbasis ga jij met je team of met enkele andere ontwikkelaars intern aan de slag bij diverse partners. Op basis van het project ga jij aan de slag en zijn de werkzaamheden en technieken erg divers. Jouw werkgever stelt jouw ontwikkeling hierin voorop, zo krijg je een vast vertrouwenspersoon die één keer in de maand op locatie van jouw project zal kijken hoe het gaat en of er eventuele aandachtspunten zijn. Daarnaast krijg

Bekijk vacature »

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

Bekijk vacature »

Back End Developer

As a Back End developer at KUBUS you will be developing the (web) application and services of BIMcollab. You have a focus on the back end of our software, for which we mainly work with C# and .NET. We use a full-stack approach, which means that in addition to the back-end, you will also help with other parts of the code. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact

Bekijk vacature »

.NET Developer Medior Senior

Dit ga je doen Ontwikkelprocessen verder optimaliseren en verder ontwikkelen met C#; CI/CD-pipelines automatiseren; Herbruikbare componenten maken; Testen; Front-end pagina's gebruiksvriendelijk maken. Hier ga je werken Als .NET Developer kom jij terecht binnen een grote en internationale organisatie. Zij streven naar een positieve impact op de mens, milieu en maatschappij. Het bedrijf is oorspronkelijk een familiebedrijf en werkt aan de productie van hoogwaardige en technische systemen voor de gezondheidszorg. Momenteel willen zij betere ontwikkelprocessen creëren op internationaal gebied en staat kwaliteit en veiligheid voor hun op nummer 1! Als .NET Developer werk jij aan het ontwikkelen van verbeterde software voor

Bekijk vacature »

.NET developer

Klaar voor een nieuwe uitdaging? Welke technologieën gaan schuil achter de dagelijkse energievoorziening? Als senior .NET developer bij Kenter maak jij samen met je team het verschil, zowel voor de interne organisatie als voor eindklanten. Samen bouwen jullie aan innovatieve dienstverlening met behulp van de nieuwste technologieën en tools. Het is een functie met veel vrijheid, goede arbeidsvoorwaarden én je draagt jouw steentje bij aan de energietransitie. Klinkt dit als iets voor jou? Lees dan verder of solliciteer direct! Wat ga je doen als senior .NET developer? Als senior .NET developer bij Kenter (onderdeel van Alliander) ben je van onschatbare

Bekijk vacature »

SQL Database Ontwikkelaar

Functie omschrijving Kan jij goed overweg met complexe algoritmes en het schrijven van procedures in T-SQL? Heb jij al wat ervaring opgedaan met SQL en vind je het tijd voor de volgende stap? Lees dan snel verder! Dit software bedrijf, gespecialiseerd in de ontwikkeling van logistieke software, is op zoek naar een ervaren SQL database developer. Jouw werkzaamheden zullen onder andere bestaan uit: Je houdt je bezig met het ontwerp en de ontwikkeling van MS SQL server databases, dit doe je met T-SQL als programmeer laag. De begeleiding van projecten van A tot Z, je zult aansluiten bij meetings met

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

18/12/2024 06:05:45
 
- 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.