Sessie random kwijt

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

Medior/senior front end developer React Sportsoftw

Functie Voor deze functie ben ik op zoek naar een enthousiaste front end developer die communicatief vaardig is. Jij wordt onderdeel van een enthousiast jong team dat werkt aan grote websites. Binnen jouw rol ben jij diegene die de vertaling maakt van design naar functionele code en zorg jij voor goede experience op meerdere platformen. Dit doe je natuurlijk door gebruik te maken van onze stack; Javascript, HTML, CSS en React. Daarnaast wordt er gebruik gemaakt van Webcomponents en verschillende authenticatie tools. Doordat er hier gestreefd wordt naar de beste gebruikerservaringen, wordt het product constant doorontwikkeld. Hierdoor blijven ze voor

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Java Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 12946 Introductie We are looking for a Java Developer! Our client is one of the most innovation companies located within the Netherlands. We provide high quality software in a high-tech and challenging market. Functieomschrijving The department is specialized in creating and developing high quality software for manufacturing automation in a high tech environment. We strive to provide our clients with high quality software and deliver state of the art solutions in a variety of ways. Creating software infrastructure using Java SE / EE Create applications to fine tune manufacturing processes

Bekijk vacature »

Senior .Net developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als .Net Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling. Mede hierdoor zij wij dit jaar Microsoft Partner of the year geworden. Sogetisten staan klaar voor elkaar, hebben lol met elkaar en daarmee behalen we de mooiste resultaten! Werken bij Sogeti

Bekijk vacature »

SQL database developer

Functie omschrijving Voor een software bedrijf in omgeving Breda zijn wij op zoek naar een SQL database ontwikkelaar. Dit bedrijf bouwt applicaties om processen in distributiecentra te optimaliseren. Ter uitbreiding van het huidige team developers zijn wij op zoek naar een SQL database ontwikkelaar. De klanten van dit groeiende bedrijf zitten door heel Europa en jouw werkzaamheden zullen er als volgt uitzien: Het samenstellen van de software op basis van de input vanuit de klant (T-SQL & C#.NET). Het bezoeken van klanten om de processen en mogelijkheden in kaart te brengen. Het ontwerpen van databases met T-SQL als programmeer laag.

Bekijk vacature »

Java (Java EE) Developer

In het kort Werken als Java developer betekent werken aan complexe IT projecten bij onder meer een internationaal containeroverslag bedrijf. Zo sturen we apparaten en eindgebruikers aan d.m.v. onze custom-made software oplossing, die dagelijkse vele duizenden containers verwerkt. Denk aan systemen die volautomatische kranen aansturen en op afstand bedienen, de volledige afhandeling van containernummerherkenning bij het laden en lossen van zeeschepen of het tonen van instructies aan de chauffeurs van ruim 300 straddle carriers. En dat allemaal redundant, robuust en in een dynamische 24/7 omgeving! Jij versterkt ons ontwikkelteam en gaat aan de slag met oa. Java i.c.m. Spring (Boot),

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

.NET developer

Functie Jouw team van vier collega .NET developers is verantwoordelijk voor het bouwen van de ETL processen van jouw nieuwe werkgever. Op dit moment wordt de front-end gedaan door een extern team van professionals. Echter wilt jouw nieuwe werkgever graag intern deze kennis uitbreiden en heeft dan ook de ambitie om dit voor het eind van het jaar intern te gaan aanpakken. Dit betekend dat jij als .NET ontwikkelaar de ideale kans krijgt om jezelf samen met jouw collega’s te ontwikkelen als full stack developer. Als .NET ontwikkelaar werk jij bij deze gave werkgever met C# .NET, SQL, JavaScript, REST

Bekijk vacature »

Software Developer .NET

Functie omschrijving .NET developer gezocht! Wij zoek op zoek naar een .NET Developer die zich niet uit het veld laat slaan voor een software bedrijf in de regio Veenendaal. Je gaat in deze functie aan de slag met het door ontwikkelen van bestaande producten en het ontwikkelen van nieuwe producten. Dit bedrijf ontwikkeld SaaS applicaties die zowel intern als extern gebruikt worden. Verder bestaat je functie uit: Het ontwikkelen en bouwen van webapplicatie, mobiele applicaties en websites vallen onder jouw verantwoordelijkheden; Werken met onder andere .NET, C#, HTML/CSS, Javascript en MSSQL/Oracle Databases; Hierin werk je samen met andere developers en

Bekijk vacature »

Junior PHP Developer

Functieomschrijving Junior PHP Developer gezocht! Voor een opdrachtgever in de regio Gelderland zijn wij op zoek naar een Junior PHP Developer die onderdeel gaat worden van het ontwikkelingsteam van deze organisatie. In deze functie ga jij aan de slag met het schrijven van software voor de aansturing van en het managen van windparken en bijbehorende onderdelen. Hiernaast ga jij je bezighouden met het ontwikkelen, testen en onderhouden van diverse webapplicaties. Het team waarin je komt te werken bestaat uit 3 developers, hierdoor krijg je veel verantwoordelijkheid en de kans om jezelf verder te ontwikkelen. Er wordt echter wel van je

Bekijk vacature »

Python Developer

Dit ga je doen Als Python Developer ben je verantwoordelijk voor: Het ontwikkelen van Stuurprogramma's in Python zodat er verbindingen kunnen worden gelegd tussen besturingssystemen en (AV) hardware; Het testen en debuggen van Stuurprorgamma's; Het communiceren met noodzakelijke partijen in gevallen waar extra technische details nodig zijn om een Stuurprogramma te ontwikkelen of problemen op te lossen; Het maken van de nodige technische documentatie (in het Engels); Het participeren in een Scrum/Agile omgeving. Hier ga je werken Deze internationale organisatie is wereldwijd een succesvol producent en leverancier van professionele AV hard- en software. Klanten gebruiken de producten o.a. voor het

Bekijk vacature »

Senior Applicatie ontwikkelaar Java

Bedrijfsomschrijving De IV- organisatie van de Belastingdienst is verantwoordelijk voor en verzorgt de ICT- voorzieningen. Het merendeel van de applicaties wordt op dit moment door de IV- organisatie zelf ontwikkeld, onderhouden en beheerd in het eigen data center. Naast de zorg voor continuïteit op de massale heffing- en inningsprocessen die plaatsvinden binnen een degelijke, stabiele omgeving, wordt er tevens volop gewerkt aan modernisering van het IV- landschap. Dit gebeurt deels intern door gebruik te maken van de expertise die intern aanwezig is, maar ook door het aantrekken van (kant-en-klaar) oplossingen en expertise uit de markt. Functieomschrijving We verwachten van je,

Bekijk vacature »

Oracle Developer / PL SQL

Dit ga je doen Software ontwikkeling aan een internationaal gebruikt pakket; Werken met technieken als Oracle 19c, Toad, PL/SQL, Oracle Forms, Reports en Designer; Meedraaien in internationale projecten; Meedenken over technisch en functioneel ontwerp; Samenwerken met collega's als Informatie Analisten, Testers en Release Managers; Soms wensen en eisen afstemmen met de business. Hier ga je werken Onze klant, een internationaal bekend bedrijf dat essentiële producten maakt waar iedereen graag gebruik van maakt, zoekt versterking in het Software Development team. Samen met 3 developers, een release manager, een informatie analist en 3 testers werk jij aan een systeem waarmee complexe producten

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 »

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

06/05/2024 16:07:23
 
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.