Sessie random kwijt

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.NET Developer

Dit ga je doen Programmeren in .NET, Javascript & C# en ontwikkelen in Web Services, Windows Services en MS SQL Server; Zelfstandig verbanden maken Analyseren, testen, bugs fixen, reviewen en rapporteren; Juiste prioriteiten stellen en verantwoordelijkheid nemen; Op architectuur niveau meedenken; Af en toe klanten bezoeken. Hier ga je werken Voor onze relatie zijn wij opzoek naar een .NET ontwikkelaar met minimaal 3 jaar werkervaring. Je komt te werken in een groeiend bedrijf met betrokken collega's die zorgen voor een familiaire sfeer op de werkvloer. Als .NET ontwikkelaar word jij vanaf de eerste werkdag betrokken bij het gehele ontwikkelproces. De

Bekijk vacature »

Cymer Patch Server Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Veldhoven Vacature ID: 12919 Introductie This new patch server will be built on Python and Django ReST and GraphQL services with a React frontend, it will consist of several microservices and run on a Kubernetes cluster. It will be supported by several middleware applications such as ElasticSearch, Redis, RabbitMQ, Oracle and Artifactory. Functieomschrijving The Patch Admin team always aim to deliver software at a high quality, we avoid sacrifices here to maintain our velocity. Practically this means that we practice test driven development and perform end-to-end automated testing on our software. This means

Bekijk vacature »

Python (Django) developer - Remote in The Netherla

Functie Together with your team, consisting of a senior, 2 mediors and one junior developer, you will work on their software in an Agile-based approach. You have an eye for quality, risk, and customer interest. Communication with your colleagues and, where necessary, with customers, plays an important role in achieving a successful result. As a person, you are smart, get things done, and are result-oriented. There is a lot of independence within the development team, apart from the stand-up (10:00 am) and occasional pair-programming sessions. Techniques they use include Python, Django, MySQL, Mercurial, Ubuntu Linux, Nginx. In terms of front-end

Bekijk vacature »

Fullstack developer

Functie omschrijving We are looking for a dutch native speaker Wil jij werken als Senior Developer en werken aan een applicatie die duizenden marketingcampagnes automatisch aanstuurt? Dit is je kans! Kom werken voor onze opdrachtgever en in deze rol zul je veel vrijheid en verantwoordelijkheid krijgen om gezamenlijk de applicatie naar een hoger plan te tillen. Wat ga je verder doen: Optimaliseren, beheren en uitbreiden van onze applicatie; Het bouwen van aansluitingen op de systemen van partners middels API’s; Meedenken over de technische/ontwikkel-standaarden; Proactief verbeterpunten voorstellen. Bedrijfsprofiel Het is een organisatie die met een team van verschillende developers én marketeers

Bekijk vacature »

SQL database ontwikkelaar

Functie omschrijving Ben jij niet bang voor complexe algoritmes? Schikt het schrijven van procedures in T-SQL jouw niet af en heb jij al de nodige informatie in SQL, dan is functie precies wat voor jou! Jouw werkzaamheden gaan er als volgt uit zien: Je gaat werken aan de complexere projecten waar jij van A tot Z bij betrokken bent. Je gaat zorg dragen voor het ontwerp, de ontwikkeling en het updaten van SQL databases. Dit doe je op basis van T-SQL. Jij bent van start tot finish betrokken bij de projecten die jij leidt. Je houdt contact met klanten en

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

Bekijk vacature »

.NET Software Developer

Dit ga je doen Als .NET Software Developer zul jij je voornamelijk bezig houden met: Het van scratch af aan bouwen van applicaties (.NET, C#, Bootstrap, KnockoutJs en WebAPI2); Het testen van jouw code d.m.v. het uitvoeren van unittesten; Het oplossen van bugs in de code; Het onderhouden van contact met collega's betreffende de door jouw ontwikkelde applicaties; Het verbeteren en doorontwikkelen van maatwerkapplicaties. Hier ga je werken Jij gaat aan de slag als .NET Software Developer en gaat je focussen op het bedenken, ontwikkelen en testen van maatwerkapplicaties in voornamelijk C#. Dit ga je doen bij een grote, internationale

Bekijk vacature »

Teamlead PHP Developer

Functieomschrijving Voor een gewaardeerde werkgever in de buurt van Middelburg zijn wij op zoek naar een gemotiveerde teamlead PHP developer met affiniteit met Symfony/Laravel. Een enthousiast persoon die het ontwikkelteam komt versterken met het aanpakken van uitdagende projecten. Ben jij op zoek naar een uitdaging waar je de tijd en ruimte krijgt jezelf te ontwikkelen en je eigen IT-team aan te sturen? Lees dan snel verder! Die ga je doen: Bijdragen aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de PHP based applicaties; Ontwikkeling en beheer van de serviceportal in Symfony en de webshops in de tweede versie van

Bekijk vacature »

Front end developer

Functie Qua type opdrachten is er echt een verscheidenheid aan afnemers, zo werken ze met grote multinationals, maar ook met startups. Zo kom je te werken in een gevarieerde omgeving en kan je ook schakelen tussen verschillende culturen. De projecten variëren van greenfield projecten tot langdurige ontwikkeltrajecten. Hier wordt alleen maar gewerkt met aan front end projecten. Daarom maakt het onze partner niet uit waar jij kennis van hebt, als je maar gedegen kennis hebt van Javascript frameworks, Unit testing en ook bekend bent met de scrum methodiek. Eisen Minimaal 4 jaar relevante werkervaring Kennen en ervaring van Javascript frameworks

Bekijk vacature »

HBO startersfunctie .NET Ontwikkelaar

Functie omschrijving We are looking for a dutch native speaker Ben je in januari 2023 klaar met je HBO opleiding en zoek je een mooie uitdaging? Wacht niet langer en solliciteer direct! Voor een familiebedrijf in de regio van Boxtel ben ik op zoek naar een C#.NET Ontwikkelaar. Jij gaat aan de slag met de (door)ontwikkeling van de maatwerksoftware projecten en gaat ook nieuwe software bouwen, middels de Microsoft-stack. Het bedrijf maakt gebruik van de volgende technieken: C# & ASP.NET; MVC; MS SQL; Entity Framework; Je krijgt hier veel tijd om te leren en eventueel door te groeien en het

Bekijk vacature »

PHP Developer - medior functie

Functieomschrijving Ben jij innovatief en wil jij je kennis graag delen met jouw nieuwe collega's? Lees dan snel verder! Voor een leuke opdrachtgever in de omgeving van Roosendaal zoeken wij een Symfony developer. Of je nou junior, medior of senior bent, je krijgt hier alle vrijheid en verantwoordelijkheid om jouw eigen loopbaan te ontwikkelen. Je gaat je hier bezig houden met en inspelen op de actualiteiten van jouw vakgebied. Techstack: Symfony, PHP, mySQL. Kennis van Svelte is helemaal mooi meegenomen. Bedrijfsprofiel Al sinds '99 is dit webbureau actief. De kernwaarden binnen het bedrijf zijn integer, dienstbaar en deskundig. Je komt

Bekijk vacature »

Consultant Low Code Developer

Functie omschrijving Heb jij verstand van datamodellering, NO CODE Platformen en kun jij het aan om projecten te leiden? Ben jij toe aan een nieuwe uitdaging en ben jij HBO afgestudeerd in de richting van IT? Voor een mooie opdrachtgever in omgeving Delft zijn wij op zoek naar een No Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten. Onderdelen functie Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform, je kunt denken aan Mendix of Betty Blocks. Je bent verantwoordelijk voor

Bekijk vacature »

Programmeur / Developer

Voor een familiebedrijf in Doetinchem, actief in de machinebouw voor de food-sector, zijn wij op zoek naar een programmeur / developer. In deze functie ben je werkzaam in een team van 5 medewerkers. Je werkzaamheden bestaan onder andere uit het verhelderen van requirements vanuit de opdrachtgever, de klant en de afdeling ontwikkeling. Je verricht haalbaarheidsstudies en werkt specificaties uit die je afstemt met de opdrachtgever. Je ontwerpt design in software en stemt af met je collega's. De huidige vision-systemen zijn geschreven in C software, welke draait op een CUDA platform. Je schrijft en codeert software en zal gaan testdraaien. Tot

Bekijk vacature »

Fullstack developer

Functieomschrijving Heb jij kort geleden jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een andere uitdaging? Voor een erkende werkgever in de omgeving van Breda zijn wij op zoek naar een Fullstack 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

Bekijk vacature »

Back-end developer

Dit ga je doen Development d.m.v. XQuery, JSON/XML en REST API's; Ontwikkelen aan een tof en complex zorgplatform; Koppelingen maken met de NoSQL database; Testen en documenteren van de ontwikkelde functionaliteiten; Samenwerking met andere front- en back-end ontwikkelaars. Hier ga je werken Voor een vooruitstrevende organisatie binnen de zorg in Den Haag zijn wij opzoek naar een Back-end Developer die ervaring heeft met o.a.XQuery en Vue.JS of daarin graag zou willen ontwikkelen. Je zal ontwikkelen aan een tof en complex zorgplatform en koppelingen maken met de NoSQL database. Ook het testen en documenteren van de ontwikkelde functionaliteiten behoort tot jouw

Bekijk vacature »

Pagina: 1 2 volgende »

Pong Zor

Pong Zor

10/01/2011 16:02:35
Quote Anchor link
Hallo

Het lijkt erop dat ik random de sessie in IE8 verlies.
Ik bouw het op de volgende manier op:


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
    session_start();
    session_regenerate_id();


Nadat de info gecontroleerd is maak ik het volgende aan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
$_SESSION['id'] = $row['users_id'];
$_SESSION['email'] = stripslashes($row['email']);
$_SESSION['password'] = stripslashes($row['password']);
$_SESSION['logged_in'] = 'true';



Inloggen
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
        case "verification":
        
            if($_SERVER['REQUEST_METHOD'] != 'POST'){
                $error_no_form = 'true';
                $error = 'true';
            }
            
            else{
                // Omzetten naar variabelen
                $email = $_POST['email'];
                $password = $_POST['password'];    

                if(empty($email) || empty($password)){
                    $error_user_pass = 'true';
                    $error = 'true';
                }
    
                else{
                    // Database selecteren
                    $email = addslashes($email);    
                    $password = addslashes(md5($password));    
                    $remember_me = $_POST['rememberme'];
                    $hour = time()+60*60*24*365;    
                    
                    // Gegevens uit database ophalen.
                    $sql = "SELECT * FROM users WHERE email='" . $email . "' " . "AND password='" . $password . "' AND activated='1'";            
                    $result = mysql_query($sql, $thecode) or die ('Kan gebruikersnaam niet controleren...<br />Misschien is er een probleem met de database...');

                    if (($row = mysql_fetch_array($result)) == 0){
                        $error_wrong_data = 'true';
                        $error = 'true';
                    }
                    
                    else{
                    
                        if($remember_me == '1'){
                            setcookie("email", $email, $hour);                 
                            setcookie("password", $password, $hour);     
                        }                        
                    
                        $_SESSION['id'] = $row['users_id'];
                        $_SESSION['email'] = stripslashes($row['email']);
                        $_SESSION['password'] = stripslashes($row['password']);
                        $_SESSION['logged_in'] = 'true';

                        $users_sql = "SELECT * FROM users WHERE email = '" . $_SESSION['email'] . "'";
                        $getUser = mysql_query($users_sql, $thecode) or die ('Cannot lookup content...<br />Maybe there is a problem with the database');
                        $rowUser = mysql_fetch_array($getUser);
                        
                        $success = 'true';
                        $success_login = 'true';
                    }    
                }
            }
            
        break;    


Edit pagina
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
switch (strtolower($_GET['edit'])){    
    
        case "info_pages":
            $id = $_GET['id'];
            $title = $_POST['title'];
            $content = $_POST['content'];
            
            // query maken
            $sql = sprintf("UPDATE info_pages SET title='%s', content='%s' WHERE id='%s'",
                                            mysql_real_escape_string($title),
                                            mysql_real_escape_string($content),
                                            mysql_real_escape_string($id)
                                        );
                                        
            // query uitvoeren
            mysql_query($sql, $thecode) or die(mysql_error());                
            
            $success = 'true';
            
            if($id == 1){            
                $success_edit_biography = 'true';        
            }
        break;
    
    }


Ik maak gebruik van een include app_top.php waar dit allemaal in staat. Als iemand het hele bestand wil inzien dan kan dit natuurlijk ook.

Overigens zal mn code misschien ook niet helemaal zuiver zijn, misschien iemand die de oorzaak weet waarom ik random uitgelogd wordt in IE en misschien ook iemand die even feedback wil geven op de code? Hoe erg is het ermee gesteld? Ben geen ervaren programmeer maar wil graag leren.
Gewijzigd op 10/01/2011 16:12:29 door Pong Zor
 
PHP hulp

PHP hulp

26/05/2026 11:09:29
 
Teun Hesseling

Teun Hesseling

10/01/2011 16:11:04
Quote Anchor link
en waar controleer je dan of de sessie nog bestaat?
wss moet je nog zoeist als dit erbij doen]
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
    if(isset($_SESSION['loggen_in']) == 'true'){
        //je bent ingelogd message of iets van je code
    }
    else{
        echo 'U bent niet ingelogd!';
    }

?>
 
Pong Zor

Pong Zor

10/01/2011 16:14:14
Quote Anchor link
Hallo Teun,

Op de pagina waar je kan bewerken controleer ik het zo:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
if($_SESSION['logged_in'] == 'true' && $rowUser['users_group'] == 'Beheerder'){
 echo 'ingelogd';
}else{
 echo 'inloggen';
}


Soms als ik iets bewerkt heb en ik ga weer naar die bewerk pagina krijg ik dus de melding inloggen terwijl ik al ingelogd ben of was. Wat me opvalt is dat de array ook opeens leeg is.

Het gaat om deze array:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Array ( [id] => 9 [email] => [email protected] [password] => 2f76b39ssssss9779be8d9fa6bed403 [logged_in] => true )


Opeens is die zomaar leeg naar een paar keer bewerkt te hebben.
Gewijzigd op 10/01/2011 16:17:59 door Pong Zor
 
- Mark -

- Mark -

10/01/2011 16:18:24
Quote Anchor link
Haal session_regenerate_id(); er eens uit. IE8 vindt die functie niet leuk en ik zou niet weten waarom je hem in je script nodig hebt.

Andere foutjes:

- Zorg voor goede fout afhandeling. die() is niet mooi.
- addslashes is niet bedoeld om sql injection tegen te gaan. Daar hebben we mysql_real_escape_string voor.
- dingen als $email = $_POST['email']; zijn nergens voor nodig.
- Ik zie geen enkel commentaar in je script.

Er zal nog wel meer te vinden zijn maar het is wat lastig lezen zo.
 
Teun Hesseling

Teun Hesseling

10/01/2011 16:18:43
Quote Anchor link
neem aan dat je op iedere pagina ook session_start(); hebt?
 
TJVB tvb

TJVB tvb

10/01/2011 16:19:38
Quote Anchor link
waarom doe je elke keer een session_regenerate_id? Dat doe je normaal gesproken naar het inloggen. Nu heb je kans dat er requesten door elkaar gaan lopen waardoor je het verkeerde sessie id gebruikt.
 
Pong Zor

Pong Zor

10/01/2011 16:21:07
Quote Anchor link
Hallo Teun,

Ik heb inderdaad op elke pagina de session_start(); deze wordt overal geïnclude.

@ mark, hoe kan ik die DIE beter oplossen?

Ik deed juist:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
$email = addslashes($email);    
$password = addslashes(md5($password));    


Zodat je geen ' en " om je injectie te voorkomen.
Maar moet ik dan $email = mysql_real_escape_string($email) doen?
Gewijzigd op 10/01/2011 16:25:03 door Pong Zor
 
Teun Hesseling

Teun Hesseling

10/01/2011 16:25:55
Quote Anchor link
@dennis een if else statement, en op dat stukje bij jouw zou je mysql_num_rows kunnen gebruiken om te kijken of er resultaat is
en ja gewoon mysql_real_escape_string gebruiken.
Gewijzigd op 10/01/2011 16:26:50 door Teun Hesseling
 
Pong Zor

Pong Zor

10/01/2011 16:26:28
Quote Anchor link
@ TJVB Je moet dus niet op elke pagina die sessie id generaten maar gewoon 1 keer na het inloggen.
 
- SanThe -

- SanThe -

10/01/2011 16:26:41
Quote Anchor link
Zet dit bovenin.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);

//rest
?>
 
- Mark -

- Mark -

10/01/2011 16:28:45
Quote Anchor link
kijk een op http://www.phptuts.nl/view/41/7/

Ik gebruik mysql_real_escape_string meestal pas zo laat mogelijk en meestal in de query zelf. Dan hoef je ook geen extra variabelen aan te maken.
 
Pong Zor

Pong Zor

10/01/2011 16:30:42
Quote Anchor link
@ Mark,

Ik deed juist addslashes om ervoor te zorgen dat iemand met een wachtwoord ' niet voor injectie kan zorgen
 
- Mark -

- Mark -

10/01/2011 16:31:53
Quote Anchor link
Ja maar daar is addslashes niet voor, daar is mysql_real_escape_string voor.
 
Pong Zor

Pong Zor

10/01/2011 16:34:39
Quote Anchor link
@ Mark,

oke maar dan het volgende:

Op deze manier laat ik iemand registreren:
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
        case "register":
            if($_SERVER['REQUEST_METHOD'] != 'POST'){
                $error_no_form = 'true';
                $error = 'true';
            }
            else{
                // Omzetten naar variabelen
                $email = $_POST['email'];
                $password = $_POST['password'];
                $password_confirm = $_POST['password_confirm'];
                $ip = $_SERVER['REMOTE_ADDR'];
                
                if(empty($email) || empty($password) || empty($password_confirm)){
                    $error_user_pass = 'true';
                    $error = 'true';
                }
                
                else if($password != $password_confirm){
                    $error_pass = 'true';
                    $error = 'true';                
                }        
                
                else{                
                    // Gegevens uit database ophalen.
                    $sql = "SELECT * FROM users WHERE email='" . $email . "'";                
                    $result = mysql_query($sql, $thecode) or die ('Kan gebruikersnaam niet controleren...<br />Misschien is er een probleem met de database...');                    
                    
                    if (($row = mysql_fetch_array($result)) != 0){
                        $error_already_exists = 'true';
                        $error = 'true';
                    }
                    else{
                            $sql = sprintf("INSERT INTO users SET email='%s', password='%s', ip='%s', activated='0'",
                                                            mysql_real_escape_string($email),
                                                            mysql_real_escape_string($password),
                                                            mysql_real_escape_string($ip),
                                                            mysql_real_escape_string($activated)
                                                    );                                             
                            mysql_query($sql, $thecode) or die(mysql_error());                            
                                                
                            $success = 'true';
                            $success_register = 'true';
                            
                            
                            $to = $email;

                            $subject = 'Account activatie xLiberty.nl';

                            // naam site
                            $website_naam = 'xLiberty.nl';
                            
                            // eigen mail
                            $eigen_emailadres = '[email protected]';
                            
                            // error mail
                            $error_emailadres = '[email protected]';
                            
                            // HTML mail? True/False
                            $html = true;

                            // De headers samenstellen
                            $headers     = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . PHP_EOL;
                            $headers    .= 'Return-Path: Mail-Error <' . $error_emailadres . '>' . PHP_EOL;
                            $headers    .= 'X-Mailer: PHP/' . phpversion() . PHP_EOL;
                            $headers    .= 'X-Priority: Normal' . PHP_EOL;
                            $headers    .= ($html) ? 'MIME-Version: 1.0' . PHP_EOL : '';
                            $headers    .= ($html) ? 'Content-type: text/html; charset=iso-8859-1' . PHP_EOL : '';
                    
                            // message                    
                            $message = '<html><body>';
                            $message .= '<p>Beste bezoeker,</p>';
                            $message .= '<p>Bedankt voor het registeren op de xLiberty.nl site.</p>';
                            $message .= '<p>Hieronder vindt u uw account informatie. Klik op de link om uw account te activeren.</p>';
                            $message .= '<table style="border: 1px solid #666;" cellpadding="0" cellspacing="10">';
                            $message .= "<tr><td width='250'><strong>Gebruikersnaam: </strong> </td><td>" . $email . "</td></tr>";
                            $message .= "<tr><td><strong>Wachtwoord: </strong> </td><td>" . $_POST['password'] . "</td></tr>";
                            $message .= "<tr><td><strong>Activatielink:</strong> </td><td><a href='http://www.xliberty.nl/site/index.php?do=activate&amp;email=" . $email . "'>http://www.xliberty.nl/site/index.php?do=activate&amp;email=" . $email . "</a></td></tr>";
                            $message .= "</table>";
                            $message .= "<br />";
                            $message .= "<p>Met vriendelijke groet, <br />xLiberty.nl</p>";
                            $message .= "</body></html>";                    
                    
                            // Mail it
                            mail($to, $subject, $message, $headers);                        
                            
                        }

                }
            }
        break;    


Op deze manier laat ik iemand inloggen:
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
        case "verification":
        
            if($_SERVER['REQUEST_METHOD'] != 'POST'){
                $error_no_form = 'true';
                $error = 'true';
            }
            
            else{
                // Omzetten naar variabelen
                $email = $_POST['email'];
                $password = $_POST['password'];    

                if(empty($email) || empty($password)){
                    $error_user_pass = 'true';
                    $error = 'true';
                }
    
                else{
                    // Database selecteren
                    $email = addslashes($email);    
                    $password = addslashes(md5($password));    
                    $remember_me = $_POST['rememberme'];
                    $hour = time()+60*60*24*365;    
                    
                    // Gegevens uit database ophalen.
                    $sql = "SELECT * FROM users WHERE email='" . $email . "' " . "AND password='" . $password . "' AND activated='1'";            
                    $result = mysql_query($sql, $thecode) or die ('Kan gebruikersnaam niet controleren...<br />Misschien is er een probleem met de database...');

                    if (($row = mysql_fetch_array($result)) == 0){
                        $error_wrong_data = 'true';
                        $error = 'true';
                    }
                    
                    else{
                    
                        if($remember_me == '1'){
                            setcookie("email", $email, $hour);                 
                            setcookie("password", $password, $hour);     
                        }                        
                    
                        $_SESSION['id'] = $row['users_id'];
                        $_SESSION['email'] = stripslashes($row['email']);
                        $_SESSION['password'] = stripslashes($row['password']);
                        $_SESSION['logged_in'] = 'true';

                        $users_sql = "SELECT * FROM users WHERE email = '" . $_SESSION['email'] . "'";
                        $getUser = mysql_query($users_sql, $thecode) or die ('Cannot lookup content...<br />Maybe there is a problem with the database');
                        $rowUser = mysql_fetch_array($getUser);
                        
                        $success = 'true';
                        $success_login = 'true';
                    }    
                }
            }
            
        break;    


Hoe laat ik controleren om injectie zonder die addslashes met real_escape_string?

Toevoeging op 10/01/2011 16:38:23:

Overigens krijg ik deze melding als ik de errors aanzet

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
Notice: Undefined index: edit in /customers/xliberty.nl/xliberty.nl/httpd.www/site/thecode/includes/application_top.php on line 34

Notice: Undefined index: do in /customers/xliberty.nl/xliberty.nl/httpd.www/site/thecode/includes/application_top.php on line 61


En dat gaat dan hierom:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
switch (strtolower($_GET['do'])){    
Gewijzigd op 10/01/2011 16:35:51 door Pong Zor
 
Teun Hesseling

Teun Hesseling

10/01/2011 16:39:05
Quote Anchor link
voorbeeld query
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
    $voorbeeld
= mysql_query("SELECT * FROM voorbeeld WHERE id = '".mysql_real_escape_string($_GET['id'])."'");
?>
 
- SanThe -

- SanThe -

10/01/2011 16:40:20
Quote Anchor link
Wat mag dit zijn?
if (($row = mysql_fetch_array($result)) != 0){
 
Pong Zor

Pong Zor

10/01/2011 16:42:33
Quote Anchor link
@ Santhe

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
                    if (($row = mysql_fetch_array($result)) == 0){
                        $error_wrong_data = 'true';
                        $error = 'true';
                    }


Daarmee controleer ik de query, als er geen resultaat is dan bestaat of de e-mail niet of het account is al geactiveerd (activate = 1)
 
Teun Hesseling

Teun Hesseling

10/01/2011 16:45:48
Quote Anchor link
resulaten controleren doe je meestal met mysql_num_rows
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
    if(mysql_num_rows($result) > 0){
        $ja = mysql_fetch_assoc($result);
        if($ja['activate'] == 0){
            //rest van je code
        }
    }

?>


dit is een betere manier... denk ik
Gewijzigd op 10/01/2011 16:46:33 door Teun Hesseling
 
- SanThe -

- SanThe -

10/01/2011 16:49:36
Quote Anchor link
Dennis Kallansee op 10/01/2011 16:42:33:
@ Santhe

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
                    if (($row = mysql_fetch_array($result)) == 0){
                        $error_wrong_data = 'true';
                        $error = 'true';
                    }


Daarmee controleer ik de query, als er geen resultaat is dan bestaat of de e-mail niet of het account is al geactiveerd (activate = 1)


Maar hoe kom je er bij dat dit: $row = mysql_fetch_array($result) nul kan zijn?
 
Pong Zor

Pong Zor

10/01/2011 16:51:50
Quote Anchor link
@ Santhe,

waarschijnlijk ooit eens uit een brakke dreamweaver tutorial gekopieerd
 
- SanThe -

- SanThe -

10/01/2011 16:57:37
Quote Anchor link
($row = mysql_fetch_array($result)) zal nooit een getal opleveren. Dus daar hoef je ook niet op te controleren.
 

Pagina: 1 2 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.