Session leren gebruiken.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Lead developer (PHP, Symfony, DDD)

Functie Als Lead developer zorg je ervoor dat het team (bestaande uit zowel junior als ervaren developers) in staat is om de kwaliteit van de software (en code) verder te verhogen. In samenwerking met het team, de product owner en de andere lead developers zet je technische lijnen uit en bepaal je de prioriteiten per sprint. Lijkt het jou interessant om complexe problemen op te lossen en bijvoorbeeld een nieuwe applicatiestructuur in Symfony op te zetten? Dan komen wij graag met je in contact. Eisen • HBO werk- en denkniveau (ze kijken niet naar papieren, maar naar denkniveau, motivatie en

Bekijk vacature »

Medior Front end developer React

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 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 op de

Bekijk vacature »

Junior Java Developer

Dit ga je doen Full stack web- en appdevelopment; Vertalen van de functionele wensen naar de technische specificaties; Sturing geven aan/klank board zijn voor de software teams; Trainen van de software teams; Sparren met klanten; Meedenken over architectuur. Hier ga je werken De organisatie is een bureau welke websites en mobiele applicaties bouwt voor verschillende toonaangevende organisaties. Hierbij richten zij zich voornamelijk op de sectoren leisure, overheid en zorg. De sfeer intern kenmerkt zich door informaliteit, gezelligheid en ambitie. Ze werken dag in dag uit samen om mooie producten op te leveren voor hun klanten. Op dit moment zijn er

Bekijk vacature »

Low code Developer

Dit ga je doen Je richt je op het doorontwikkelen van bestaande applicaties en het geheel van scratch af aan opzetten van nieuwe applicaties binnen een low code platform; Je beoordeelt technisch ontwerpen en maakt de vertaalslag naar de technische oplossingen binnen het platform; Je voert testwerkzaamheden uit; Je adviseert de organisatie op jouw vakgebied; Je schakelt met business analisten en de architect om tot mooie oplossingen te komen; Je lost bugs op en denkt mee over een structurele oplossing. Hier ga je werken Het gaat om een bekend internationaal handelsbedrijf met ruim 800 medewerkers, verdeeld over verschillende deelbedrijven. Deze

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 - procesoptimalisatie (Inhouse)

Functie Wat ga je doen als Java developer? Jij als back end developer hebt al enige ervaring opgedaan in jouw vakgebied. Voornamelijk het werken met Java en Spring spreekt jou aan. Jij wordt samen met je collega developers in het team verantwoordelijk voor de gehele back end van de applicatie. Hierdoor heb jij veel zelfstandigheid in je rol en zul je ook zelf beslissingen samen met de PO maken. Er wordt gewerkt volgens de SCRUM methodiek, om zo structuur te creëren in de werkzaamheden. Binnen de 2-wekelijkse sprints pak jij je taken op die samen met de PO afgestemd zijn.

Bekijk vacature »

Software developer - senior

Functie omschrijving Voor een echt softwarebedrijf in omgeving Gouda zijn wij op zoek naar versterking voor de afdeling Software Development! Ben jij op zoek naar een werkgever waar meerdere software developers werken aan interessante projecten? Ben jij op zoek naar een werkgever waar je onderdeel wordt van een team dat echt passie heeft voor het ontwikkelen van software? Dan ben je hier aan het juiste adres! Als softwareontwikkelaar kom je terecht bij een onafhankelijk, door kwaliteit gedreven, doortastend en daarbij op een Agile wijze werkend bedrijf. Ben jij een expert in het vertalen van Componenten van Functionaliteit naar Business lagen?

Bekijk vacature »

.NET developer

Functie Als .NET developer start jij in een development team met één Senior .NET developer en één junior .NET developer. Als team zijn jullie verantwoordelijk voor het schrijven van software voor onze toonaangevende Automatiseringssystemen. Jij gaat aan de slag met de onderhoud van de kernsoftware, ondersteund de software van derden door het gebruik van onze webservices en als team zijn jullie verantwoordelijk voor het ontwikkelen van onze backend oplossingen. Wij maken op dit moment veel gebruik van .NET met ASP.NET. Komend kwartaal gaan wij wel gedeeltelijk overstappen naar .NET Core. Verder werken wij ook met SOAP, REST, JSON, HTML5, CSS3

Bekijk vacature »

SQL ontwikkelaar

Functieomschrijving Voor een gave werkgever in regio Breda zijn wij per direct op zoek naar een SQL ontwikkelaar/ functioneel consultant. Hier wordt jij mede verantwoordelijk voor zowel de design en implementatie van SQL-databases als voor het verstaan van de processen van klanten naar het vertalen van deze processen naar IT-oplossingen. Jouw takenpakket komt als volgt uit te zien: Je test de ontwikkelde oplossingen om er zeker van te zijn dat deze voldoen aan de functionele specificaties en de behoeften van de organisatie; Je ontwerpt, ontwikkelt en implementeert SQL-databases om de data behoeften van de organisatie te ondersteunen; Je stelt op

Bekijk vacature »

C# .NET Software Developer

Functie omschrijving Ben jij op zoek naar een nieuwe uitdaging binnen software development waar je gaat werken voor een jong en flexibel bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Software Developer met ervaring binnen C# .NET die enthousiast wordt van het aansluiten en begeleiden van (complexe) nieuwe klanten. Verder begeleid je complexe projecten, ben jij iemand die altijd kansen ziet? Dan zoeken wij jou! In deze functie ga jij je bezighouden met: Meedenken in oplossingsrichtingen; Werken aan de architectuur; Het verbeteren van functionaliteiten binnen het dataplatform; Ontwikkelen van nieuwe technologieën. Bedrijfsprofiel Waar ga je aan de

Bekijk vacature »

PHP Developer (junior functie)

Functie omschrijving Wij zijn op zoek naar een PHP Developer! Ben jij een starter en wil je werken bij een jong en leuk bedrijf? Lees dan verder! Wij zijn op zoek naar een PHP Developer binnen een junior functie. Binnen dit bedrijf gaat het om persoonlijke aandacht en ontwikkeling! Je komt te werken voor een leuk communicatiebureau die alles op het gebied van online en offline communicatie doet. Dit doen zij voor verschillende branches, waardoor je aan diverse soorten projecten mag werken, dit maakt deze baan erg leuk! Daarbij werk je aan een door hun zelf ontwikkeld framework welke goed

Bekijk vacature »

.NET Developer Shared Driving

Bedrijfsomschrijving Onze klant richt zich op het toegankelijker maken van steden, een fantastisch mooi streven. Hoe ze dat doen? Met eigen ontwikkelde software, waarmee vervoersmiddelen gedeeld kunnen worden. Deze inspirerende werkgever maakt een maatschappelijke impact en dat doen ze nu al zo'n 25 jaar! Het bedrijf is gevestigd in het centrum van Rotterdam en kent ongeveer zo'n 90 medewerkers. Het personeel is lekker gewoon gebleven! Iedereen kleedt zich zoals hij of zij dat zou willen en de sfeer is er erg fijn. Een leuke werkgever om voor te werken, en bovendien zijn er voor jou als Software Developer veel mooie

Bekijk vacature »

Back-end Programmeur

Functieomschrijving Heb jij kort geleden je HBO ICT in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een ambitieuze werkgever in de regio van Breda zijn wij op zoek naar een Back-end programmeur met affiniteit met C#.NET, SQL en MS Access. Samen met team bestaand uit ware ICT professionals ben je verantwoordelijk voor het bouwen van maatwerk software voor hun klanten. Belangrijk is dat je kennis of ervaring hebt van C#.NET en SQL. Je toont een flexibele en sociale houding naar klanten toe. Je denkt in nieuwe mogelijkheden & gaat graag de uitdaging aan. Bedrijfsprofiel De

Bekijk vacature »

.net developer

Hoi! Wij zijn auto.nl en wij verkopen auto's online. je bestelt bij ons een auto net zo makkelijk als een spijkerbroek. En bevalt ie niet? Dan stuur je 'm gewoon weer terug. En dat we dat goed doen bewijst onze hoge klanttevredenheid van een 9,3. Nu maken we de volgende stap bij auto.nl. We starten met fysieke winkels. Online zoeken, offline bekijken. Maar nog altijd, geen gedoe! Gewoon eerlijk, transparant en zonder zorgen een auto kopen.. Maar om dat waar te blijven maken en nóg beter te worden, zoeken we uitbreiding van ons development team. Wat ga je precies doen?

Bekijk vacature »

App Developer

Samen werken aan een gezonder Nederland en toekomstbestendige zorg voor iedereen. Dat is de impact die jij kan hebben als App Developer bij VGZ. Wil jij een bijdrage leveren aan een maatschappij waarin iedereen zich thuis voelt? Bekijk dan de vacature. Uit onderzoek van Computable is VGZ verkozen tot ‘beste niet-ICT werkgever voor ICT’ers van Nederland’ Hoe ook jij het verschil maakt Als App developer werk jij aan het belangrijkste communicatiekanaal van VGZ, namelijk de App! Als App developer bij VGZ maak je onderdeel uit van een van onze App-teams. Met een goede mix van kennis en ervaring zet je

Bekijk vacature »
Mark van den Brink

Mark van den Brink

17/09/2012 21:12:46
Quote Anchor link
Ik zie dat veel mensen gebruik maken van sessies en merk dat dit
erg handig in gebruik is voor een hoop dingen.

Graag zou ik meer willen weten over het gebruik van sessies weet iemand een site waar ik dit kan leren of kan iemand mij vertellen waar sessie eigenlijk goed voor zijn!

Zo gebruik ik bijv. al jaren de volgende script om mijn database te connecten (heb ik van een vriend gehad) Maar heb eigenlijk geen idee hoe het werkt..

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
<?
    session_start();

                // database configuratie
                $dbname = "database_naam"; // database naam
                $user = "mysql_username"; // gebruikersnaam van mysql
                $pass = "mysql_password"; // wachtwoord van mysql
                $host = "localhost"; // host naar mysql

                // user configuratie

                $to = "[email protected]"; // jou email adres
                $subject = "Database Connectie Mislukt"; // onderwerp van de email
                $from = "From: Mark <[email protected]";

    if (!mysql_select_db($dbname, mysql_connect($host, $user, $pass)))
    {

        if (!$_SESSION["dberror"])
        {

            $msg = "============================================\n";
            $msg .= "Database connectie mislukt!\n";
            $msg .= "============================================\n\n";
            
            $msg .= "De connectie met de database is mislukt!\n\n";
            
            $msg .= "Datum: " . date("d.m.Y") . "\n";
            $msg .= "Tijd: " . date("H:i") . "\n";
            $msg .= "Ip addr: " . $_SERVER['REMOTE_ADDR'] . "\n\n";
            
            $msg .= "Mark\n";
            
            mail($to, $subject, $msg, $from);
            
            $dberror = 1;
            session_register(dberror);
        }

        
        echo "
        <html>
        <head>
        <title>Database connectie mislukt</title>
        </head>
        
        <body>
        
        <h1>De connectie met de database is mislukt.</h1>
        
        <p>Probeer het over enkele minuten opnieuw. Blijf niet de pagina herladen (refreshen).
        Wanneer u dit wel doet wordt de database alleen nog maar meer belast. Er is een
        e-mail gestuurd naar &eacute;&eacute;n van de administrators.</p>
        
        <p>Onze excuses en bedankt voor het begrip.</p>
        
        <p><i>Mark</i></p>
        
        </body>
        </html>"
;
        
        exit();
    }

?>


Kan iemand mij iets vertellen of verwijzen naar een goeie tutorial hier over??
 
PHP hulp

PHP hulp

14/05/2024 12:02:11
 
Eddy E

Eddy E

17/09/2012 21:14:44
Quote Anchor link
Je code heeft echt 0,0 te maken met sessies.
Kijk eens op php.net en typ in het zoekvak eens gewoon "Session" in.
 
Wouter J

Wouter J

17/09/2012 21:25:15
Quote Anchor link
Het probleem
Algemeen: Ik heb een variabele X die ik op pagina A aanmaak. Vervolgens wil ik die gebruiken op pagina B, maar niet via de URL (en GET parameters).
Toepassing: Dit heb je bijv. in een inlog script, je wilt een variabele in het inlog gedeelte setten met de waarde: ingelogd. Vervolgens wil je op elke pagina kunnen kijken of hij is ingelogd. [sidenote]Het maken van een inlog systeem is ingewikkelder, omdat je moet kijken of je nog steeds met dezelfde persoon te maken hebt[/sidenote]

Een idee
Je kan het niet met gewone variabele doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
A.php
=====
<?php
$x
= 'foobar';
?>


B.php
=====
<?php
echo $x;
?>


En via een database is veel te veel overhead.

De oplossing
De oplossing is, zoals je wel verwachte, sessies (of cookies) gebruiken. Het verschil daar tussen is simpel. Eigenlijk bestaan er alleen cookies, deze sla je op in één van de TEMP dirs van het browser. Die blijven beschikbaar tot ze verlopen zijn, dit kan oplopen in de jaren.
PHP heeft de sessies er bovenop bedacht. De waarde van een sessie wordt vastgehouden door PHP en de id van de sessie wordt opgeslagen als een cookie, zo weet PHP welke sessie bij deze bezoeker hoort. Zodra je je browser sluit zal de cookie verwijderd worden.

Hoe stel ik een sessie variabele in?
Om te kunnen werken met een sessie moet elke pagina die sessies wilt gebruiken beginnen met session_start:
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
A.php
=====
<?php
session_start();

$x = 'foobar';
?>


B.php
=====
<?php
session_start();

echo $x;
?>


Alle sessies sla je op in de super global $_SESSION, wat een array is. In ons geval:
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
A.php
=====
<?php
session_start();

$_SESSION['x'] = 'foobar';
?>


B.php
=====
<?php
session_start();

echo $_SESSION['x'];
?>


En klaar zijn we!




Dat script van je vriend is verre van goed:
- Verander de 1e if in 2 if statements, waarbij je bij de eerste de connectie en bij de 2e select db controleert
- krijg de errors via de functie mysql_error en niet via een sessie
- check of een mail is verzonden
- gebruik de juiste mailheaders
- session_register is deprecated, sinds PHP4.1 (!!). Gebruik de syntax die ik je hierboven leerde (de $_SESSION array)
- exit of die gebruikt je zelden en is in dit geval onnodig
- echo nooit hele stukken PHP. Sluit je PHP, plaats de HTML en open daarna je PHP weer.
 
Mark van den Brink

Mark van den Brink

18/09/2012 09:01:46
Quote Anchor link
Dat is nog eens een uitleg waar ik wat aan heb en inderdaad erg handig om dingen te gebruiken en veiliger maar eens kijken of ik dit script nu goed kan krijgen...

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
<?
    session_start();

                // database configuratie
                $dbname = "database_naam"; // database naam
                $user = "mysql_username"; // gebruikersnaam van mysql
                $pass = "mysql_password"; // wachtwoord van mysql
                $host = "localhost"; // host naar mysql

                // user configuratie

                $to = "[email protected]"; // jou email adres
                $subject = "Database Connectie Mislukt"; // onderwerp van de email
                $website_naam = 'Mijn Site';
                $eigen_emailadres = 'mijn_emailadres@mijn_domein.nl';
                $error_emailadres = 'mijn_emailadres@mijn_domein.nl';
                $naam_verzender = 'Afzender';
                $email_verzender = 'emailadres_van_verzender@zijn_domein.nl';
                $html = true;
                
$headers     = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . PHP_EOL;
$headers    .= 'Reply-To: ' . $naam_verzender . ' <' . $email_verzender . '>' . 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 : '';

if (!mysql_connect($host, $user, $pass)) {
    if (!mysql_select_db($dbname)){
    {

        if (!$_SESSION["dberror"])
        {

            $msg = "============================================\n";
            $msg .= "Database connectie mislukt!\n";
            $msg .= "============================================\n\n";
            
            $msg .= "De connectie met de database is mislukt!\n\n";
            
            $msg .= "Datum: " . date("d.m.Y") . "\n";
            $msg .= "Tijd: " . date("H:i") . "\n";
            $msg .= "Ip addr: " . $_SERVER['REMOTE_ADDR'] . "\n\n";
            
            $msg .= "Mark\n";
            
            if (mail($to, $subject, $msg, $headers)) {
    echo 'Error mail is verzonden.';
}

else {
    echo 'Error mail niet verzonden.';
}

            $dberror = 1;
            session_register(dberror);
        }

        
?>

        <html>
        <head>
        <title>Database connectie mislukt</title>
        </head>
        
        <body>
        
        <h1>De connectie met de database is mislukt.</h1>
        
        <p>Probeer het over enkele minuten opnieuw. Blijf niet de pagina herladen (refreshen).
        Wanneer u dit wel doet wordt de database alleen nog maar meer belast. Er is een
        e-mail gestuurd naar &eacute;&eacute;n van de administrators.</p>
        
        <p>Onze excuses en bedankt voor het begrip.</p>
        
        <p><i>Mark</i></p>
        
        </body>
        </html>";
        
<?php
    }
?>

Ik begrijp je uitleg maar ik weet nog niet hoe mijn script er dan uit hoort te zien.

Toevoeging op 18/09/2012 09:17:30:

Ik weet alleen niet hoe ik het volgende goed moet aanpassen..

- session_register is deprecated, sinds PHP4.1 (!!). Gebruik de syntax die ik je hierboven leerde (de $_SESSION array)

Snap wel wat je bedoelt maar weet niet zo goed hoe ik hem moet invoegen in dit script.

Is hij voor de rest wel goed? Of heb ik hem nu nog erger gemaakt haha!
Gewijzigd op 18/09/2012 09:38:14 door Mark van den Brink
 
- Ariën  -
Beheerder

- Ariën -

18/09/2012 09:34:44
Quote Anchor link
session_register() weghalen..
Gebruik gewoon:

$_SESSION['dberror'] = $dberror;

Waarom je een sessie aanmaakt voor een databasefoutmelding ontgaat mij even.
Gewijzigd op 18/09/2012 09:37:11 door - Ariën -
 
Mark van den Brink

Mark van den Brink

18/09/2012 09:45:00
Quote Anchor link
Het is een krijgertje..

Maar hoe zou jij het doen dan gebruik van sessies weg en dan zoiets?

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
<?

                // database configuratie
                $dbname = "database_naam"; // database naam
                $user = "mysql_username"; // gebruikersnaam van mysql
                $pass = "mysql_password"; // wachtwoord van mysql
                $host = "localhost"; // host naar mysql

                // user configuratie

                $to = "[email protected]"; // jou email adres
                $subject = "Database Connectie Mislukt"; // onderwerp van de email
                $website_naam = 'Mijn Site';
                $eigen_emailadres = 'mijn_emailadres@mijn_domein.nl';
                $error_emailadres = 'mijn_emailadres@mijn_domein.nl';
                $naam_verzender = 'Afzender';
                $email_verzender = 'emailadres_van_verzender@zijn_domein.nl';
                $html = true;
                
$headers     = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . PHP_EOL;
$headers    .= 'Reply-To: ' . $naam_verzender . ' <' . $email_verzender . '>' . 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 : '';

if (!mysql_connect($host, $user, $pass)) {
    if (!mysql_select_db($dbname)){

            $msg = "============================================\n";
            $msg .= "Database connectie mislukt!\n";
            $msg .= "============================================\n\n";
            
            $msg .= "De connectie met de database is mislukt!\n\n";
            
            $msg .= "Datum: " . date("d.m.Y") . "\n";
            $msg .= "Tijd: " . date("H:i") . "\n";
            $msg .= "Ip addr: " . $_SERVER['REMOTE_ADDR'] . "\n\n";
            
            $msg .= "Mark\n";
            
            if (mail($to, $subject, $msg, $headers)) {
    echo 'Error mail is verzonden.';
}

else {
    echo 'Error mail niet verzonden.';
}
        }

        
?>

        <html>
        <head>
        <title>Database connectie mislukt</title>
        </head>
        
        <body>
        
        <h1>De connectie met de database is mislukt.</h1>
        
        <p>Probeer het over enkele minuten opnieuw. Blijf niet de pagina herladen (refreshen).
        Wanneer u dit wel doet wordt de database alleen nog maar meer belast. Er is een
        e-mail gestuurd naar &eacute;&eacute;n van de administrators.</p>
        
        <p>Onze excuses en bedankt voor het begrip.</p>
        
        <p><i>Mark</i></p>
        
        </body>
        </html>";
        
<?php
    }
?>


Correct me if i'm wrong...
 
- Ariën  -
Beheerder

- Ariën -

18/09/2012 09:46:52
Quote Anchor link
Voor een databasefoutmelding heb je toch geen sessies nodig?
 
Mark van den Brink

Mark van den Brink

18/09/2012 10:14:21
Quote Anchor link
Daar heb je gelijk in maar heb het gekregen en eigenlijk nooit veranderd.

Hoe is het script boven zonder sessies moet alleen nog foutafhandeling in denk ik...
 
- Ariën  -
Beheerder

- Ariën -

18/09/2012 10:16:51
Quote Anchor link
Er zit gewoon foutafhandeling in.
 
Mark van den Brink

Mark van den Brink

18/09/2012 10:23:11
Quote Anchor link
Dan hou ik hem lekker zo.'

Alleen heb nu aantal foutjes ondekt waar ik niet uitkom..

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
<?php

                // database configuratie
                $dbname = "---"; // database naam
                $user = "---"; // gebruikersnaam van mysql
                $pass = "---"; // wachtwoord van mysql
                $host = "localhost"; // host naar mysql

                // user configuratie

                $to = "[email protected]"; // jou email adres
                $subject = "Database Connectie Mislukt"; // onderwerp van de email
                $website_naam = 'Sonic GFX :: Designs';
                $eigen_emailadres = '[email protected]';
                $error_emailadres = '[email protected]';
                $naam_verzender = 'Sonic GFX';
                $email_verzender = '[email protected]';
                $html = true;
                
$headers     = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . PHP_EOL;
$headers    .= 'Reply-To: ' . $naam_verzender . ' <' . $email_verzender . '>' . 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 : '';

if (!mysql_select_db($dbname, mysql_connect($host, $user, $pass)))
    {

  

            $msg = "============================================\n";
            $msg .= "Database connectie mislukt!\n\r";
            $msg .= "============================================\n\n";
            
            $msg .= "De connectie met de database is mislukt!\n\n";
            
            $msg .= "Datum: " . date("d.m.Y") . "\n";
            $msg .= "Tijd: " . date("H:i") . "\n";
            $msg .= "Ip addr: " . $_SERVER['REMOTE_ADDR'] . "\n\n";
            
            $msg .= "Mark\n";
            
            if (mail($to, $subject, $msg, $headers)) {
    echo 'Error mail is verzonden.';
}

else {
    echo 'Error mail niet verzonden.';
}

        
?>

        <html>
        <head>
        <title>Database connectie mislukt</title>
        </head>
        
        <body>
        
        <h1>De connectie met de database is mislukt.</h1>
        
        <p>Probeer het over enkele minuten opnieuw. Blijf niet de pagina herladen (refreshen).
        Wanneer u dit wel doet wordt de database alleen nog maar meer belast. Er is een
        e-mail gestuurd naar &eacute;&eacute;n van de administrators.</p>
        
        <p>Onze excuses en bedankt voor het begrip.</p>
        
        <p><i>Mark</i></p>
        
        </body>
        </html>";
        
<?php
    }
?>

  


Hij verstuurd ene mail maar de ene keer krijg ik hem wel en de andere keer krijg ik hem niet hoe kan dat?

en ik heb deze weer terug veranderd in:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
if (!mysql_select_db($dbname, mysql_connect($host, $user, $pass)))
    {


als ik 2 if statements gebruikte zei hij geen DB geselecteerd of heb ik hem verkeerd gescript..

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
if (!mysql_connect($host, $user, $pass)) {
    if (!mysql_select_db($dbname)){


Toevoeging op 18/09/2012 11:07:19:

Laat het ontvangen van mails maar zitten ontvang zojuist 20 mails in 1x
Gewijzigd op 18/09/2012 13:24:21 door Mark van den Brink
 
Albert de Wit

Albert de Wit

18/09/2012 11:45:16
Quote Anchor link
je bent vergeten je database login gegevens te veranderen...
 
Mark van den Brink

Mark van den Brink

18/09/2012 13:24:55
Quote Anchor link
Dat was inderdaad niet handig bedankt!

Meteen alles maar wijzigen haha!
 
Nick Dijkstra

Nick Dijkstra

18/09/2012 13:40:13
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
if (!mysql_connect($host, $user, $pass)) {
    if (!mysql_select_db($dbname)){
?>

Als het connecten niet lukt dan met de db verbinding maken?

Ik denk dat je het zo bedoelt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
if (mysql_connect($host, $user, $pass)) {
    if (mysql_select_db($dbname)){

    }
else{
        echo 'Kan niet verbinden met de database';
    }
}
else{
    echo 'Kan geen verbinding maken met de server';
}

?>
 
Mark van den Brink

Mark van den Brink

18/09/2012 14:21:10
Quote Anchor link
Werkt! Helemaal super!
 
Wouter J

Wouter J

18/09/2012 15:19:32
Quote Anchor link
En je weet ook wat het doet?

Want op mysql_connect php.net kun je onder Return Values lezen wat de functie teruggeeft. In dit geval:
Quote:
Returns a MySQL link identifier on success or FALSE on failure.

Als er een fout is zien we dus dat er FALSE teruggegeven wordt. Daarop kunnen we dus checken, is er iets anders dan false teruggegeven dan kun je gewoon doorgaan.
De functie mysql_error bevat de error die omschrijft wat er fout is gegaan, toon deze niet aan je bezoekers, maar als je hem lokaal debugd is dit natuurlijk erg handig.
 
Mark van den Brink

Mark van den Brink

19/09/2012 18:37:34
Quote Anchor link
Oke duidelijk dus eigenlijk wat jij zegt is het nog het beste om er een mysql_error aan toe te voegen:
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
<?php
if (mysql_connect($host, $user, $pass)) {
    if (mysql_select_db($dbname)){

    }
else{
        echo 'Kan niet verbinden met de database<br>';
        echo mysql_error(). "<br>\n";

    }
}
else{
    echo 'Kan geen verbinding maken met de server<br>';
    echo mysql_error(). "<br>\n";
}

?>


is dat de dan de beste manier? Aangezien ik vooral op de site lees dat or die nooit meer gebruikt mag worden zoals bijv:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
mysql_connect($host, $user, $pass)or die(mysql_error());


of zal ik hem zo laten zoals Nick aangaf??
 
Wouter J

Wouter J

19/09/2012 18:52:57
Quote Anchor link
Als je het script aan het maken bent, wat we de development fase/omgeving noemen, wil je natuurlijk zo veel mogelijk informatie zien om je fout zo snel mogelijk op te lossen.

Als de website online staat, wat we de production fase/omgeving noemen, wil je juist zo min mogelijk informatie tonen. Het maakt de gebruiker niet uit wat er fout gaat, alleen of er wat fout gaat. Tevens bevatten de foutmeldingen vaak gegevens zoals inlog gegevens of gegevens over hoe de tabellen en velden heten. Dit is natuurlijk heel handige informatie voor een hacker en dus is het gevaarlijk deze errors te tonen.

Wat je het beste kunt doen is in de production omgeving de error loggen in een bestand en in de development omgeving zoveel mogelijk tonen. Een voorbeeldje hoe ik het zal doen kun je vinden in SQL boilerplate, de link die ik je al eens eerder had gegeven.
 
Mark van den Brink

Mark van den Brink

19/09/2012 19:11:32
Quote Anchor link
Ik ga daar even rustig voor zitten daar zit duidelijk een hoop informatie waar ik verder mee kan.

Bedankt alvast nu eerst even brilletje op en gaan lezen maar.
 



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.