help blowfish

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

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 »

Node.js developer

Functie Onder begeleiding van 3 accountmanagers waarvan er 1 binnen jouw expertise je aanspreekpunt zal zijn ga je aan de slag bij diverse opdrachtgevers. Hij of zij helpt je bij het vinden van een passende en uitdagende opdracht. Hierin houden ze uiteraard rekening met jouw situatie, ervaring en (technische) ambities. De opdrachten duren gemiddeld één tot 2 jaar. Hierdoor kun je je ook echt vastbijten in een project en als consultant impact maken. Naast de opdracht ben je regelmatig met je collega’s van de IT-afdeling om bijvoorbeeld onderlinge kennis te delen, of nieuwe trends te bespreken. Ook worden er regelmatig

Bekijk vacature »

Junior .NET developer

Functie Wij hebben drie scrumteams. Het eerste team focust zich op het stukje hardware wat wij in huis doen. Zij maken als team o.a. gebruik van C++. De andere twee scrumteams zijn allebei bezig met data verwerking en maken hierbij in de backend gebruik van C# .NET / .NET Core. Het verschil tussen deze teams is dat één team de data verwerking doet voor de mobiele applicatie. Zij werken hierbij dus ook met Xamarin. Het andere team focust zich op de webapplicaties en maakt hierbij ook gebruik van ASP.NET MVC. Op basis van jouw ambities en kwaliteiten kijken wij samen

Bekijk vacature »

Senior PHP developer/ Software Architect

Functie Momenteel zijn ze op zoek naar een ervaren PHP developer die zichzelf graag bezighoudt met zaken als architectuur en de algehele verbetering van structuren en standaarden. Het is eigenlijk meer operationeel als uitvoerend omdat je bezig gaat met zaken als het verder uitrollen en verbeteren van testautomatisering, codereviews, tickets en de doorloop hiervan en architectuurkeuzes. Mocht je hiernaast ook wat DevOps kennis meenemen is dit mooi meegenomen! Vanwege het kleine team maar de wereldwijde impact die zij leveren is er veel focus op kwaliteit. In deze functie werk je aan één van hun belangrijkste applicaties. Hierin werk je nauw

Bekijk vacature »

Back-end Developer

Functieomschrijving Voor een erkende werkgever in de regio van Middelburg zijn wij op zoek naar een enthousiaste PHP / Symfony Developer. Een ambitieus persoon die het gemotiveerde development team komt versterken met het realiseren van nieuwe en complexe projecten. Ben jij op zoek naar een baan met veel uitdaging binnen een snelgroeiend e-commerce bedrijf, waar je de tijd en ruimte krijgt voor professionele groei? Dit ga je doen: Je bent verantwoordelijk voor de beheer en ontwikkeling van de serviceportal in Symfony en de webshops in de tweede versie van Magento; Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten;

Bekijk vacature »

Medior/Senior Front-end Developers gezocht (Utrech

Functie Het team bestaat uit 10+ gespecialiseerde (veel senior) front-end ontwikkelaars en ontwerpers die werken aan projecten voor klanten van verschillende groottes (kan twee jaar bezig zijn met 1 klant). Je helpt klanten met ingewikkelde front-end vraagstukken, hierbij kun je denken aan: UX/UI design, CI/CD, architectuur en integratie met back-end systemen. De werkzaamheden verricht je op locatie bij de klant, dit is vaak in de Randstad. De organisatiestructuur is plat en er heerst een informele sfeer, zo kun je met vragen dus terecht bij de directie. Er wordt veel nadruk gelegd op het bevorderen van persoonlijke ontwikkeling door middel van

Bekijk vacature »

Front-End Developer

As a Front-End Developer at Coolblue you improve the user-friendliness of our webshop for millions of customers. How do I become a Front-End Developer at Coolblue? As a Front-End Developer you work on the user-friendliness of our webshop for millions of customers. You enjoy working with the UX Designer to pick up stories. You get energy from coming up with creative solutions and are happy to present these within the team. You also take pride in your work and welcome any feedback. Would you like to become a Front-End Developer at Coolblue? Read below if the job suits you. You

Bekijk vacature »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus 2023 bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je

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 »

Frontend Developer - Leeuwarden

Als Frontend Developer bouw jij mee aan het onderwijs van de toekomst! In een scrum team werken met jonge en enthousiaste collega’s, moderne technieken, ruimte voor eigen ontwikkeling en op een proactieve wijze kunnen meewerken aan innovatie binnen het onderwijs. Magister is het state-of-the-art softwarepakket dat scholen in het voortgezet onderwijs op alle fronten ontzorgt. Van leerlingenadministratie tot het ondersteunen van individuele leerlijnen, van toegang tot digitaal lesmateriaal tot het plannen van het lesrooster. In de Magister app bedient Magister ruim 2,5 miljoen gebruikers waarvan, dagelijks meer dan 600.000 unieke. Hiermee is Magister de absolute marktleider in onderwijsland. Wat vragen

Bekijk vacature »

Ontwikkelaar MS Dynamics 365 Projecten

Samengevat: Deze werkgever is de kwaliteitsdienst in de tuinbouwsector. Ben jij een ervaren ontwikkelaar? Heb jij ervaring met Ms Dynamics 365 BC? Vaste baan: Ontwikkelaar Ms Dynamics 365 BC ICT MBO 3.500 - 5.000 Ontwikkelaar Ms Dynamics 365 BC Ons bedrijf bewaakt en bevordert de kwaliteit van producten, processen en ketens in de tuinbouw. Wij kenmerken zich door openheid, ruimte voor initiatief, collegialiteit en zelfontplooiing. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Functie: Voor de vacature als Ontwikkelaar Ms Dynamics 365 BC Roelofarendsveen MBO

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 »

Senior developer (PHP en VB.NET)

Functie De development afdeling bestaat uit 2 teams. Het productteam (10 developers) is verantwoordelijk voor verschillende applicaties met als doel om zoveel mogelijk te automatiseren en uit te werken tot standaard software. Met diverse Solutions Architecten en ervaren developers denken ze voortdurend mee met hun klanten en bouwen ze de basis van het uiteindelijke maatwerk dat wordt geleverd. Hiernaast hebben ze een maatwerk/projectteam. Dit team bestaat momenteel uit 8 developers (junior tot senior) en is verantwoordelijk voor het maatwerk in hun klantprojecten. Momenteel zijn ze op zoek naar een senior developer die aan de slag gaat in het productteam. Hierin

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 »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus 2023 bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je

Bekijk vacature »

Pagina: « vorige 1 2 3

Kenny iets

kenny iets

27/09/2014 19:37:19
Quote Anchor link
had dit dat was een script van iemand anders
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
<?php
require "config.php";
if ($_SERVER['REQUEST_METHOD'] == "POST") {
        if ($_POST['username'] == NULL) {
                $login_error =  "username is fout";
        }

        if ($_POST['password'] == NULL) {
                $login_error =  "password is fout";
        }

      
        $query = $mysqli->query("SELECT * FROM users WHERE username='".$mysqli->real_escape_string($_POST['username'])."' LIMIT 1");
        if ($query->num_rows == 1) {
                $row = $query->fetch_assoc();
                if (!password_verify($_POST['password'],$row['password'])) {
                        header('Refresh: 5; url=index.php');
                }

                $_SESSION['loggedin'] = TRUE;
                $_SESSION['username'] = $_POST['username'];
                $_SESSION['uid'] = $row['id'];
                Header("location: member.php");
        }
else {
                echo "user bestaat niet";
        }
}


?>

<html>
<head>
<title>Inloggen</title>
</head>
<body>
<form method="POST">
<?php if(isset($username) == TRUE){ echo $username; }else{echo "username";}?>: <input type="text" name="username"><br>
<?php if(isset($password) == TRUE){ echo $password; }else{echo "password";}?>: <input type="password" name="password"><br>
<input type="submit" value="<?php echo "login " ?>"><br>
</form>
</body>
</html>
 
PHP hulp

PHP hulp

25/04/2024 07:27:21
 
Dos Moonen

Dos Moonen

27/09/2014 20:10:50
Quote Anchor link
Ik mis 2x exit;

Hier is een nettere versie, geen zin om foutafhandeling nog netter te maken dan dit.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php
require "config.php";

if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST['username'], $_POST['password'])) {
        $stmt = $mysqli->prepare('SELECT password FROM users WHERE username=? LIMIT 1');

        if ($stmt === FALSE) {
                exit('er is een interne fout opgetreden, probeer het later nog eens');
        }


        $stmt->bind_param('s', $_POST['username']);

        $stmt->execute();

        $stmt->bind_result($hash);

        $fetched = $stmt->fetch();

        if ($fetched === FALSE) {
                exit('er is een interne fout opgetreden, probeer het later nog eens');
        }


        if ($fetched) {
                if (password_verify($_POST['password'], $hash)) {
                        $_SESSION['loggedin'] = TRUE;
                        $_SESSION['username'] = $_POST['username'];
                        $_SESSION['uid'] = $row['id'];
                        header("location: member.php");
                        exit;
                }
else {
                        echo 'username/wachtwoord combinatie incorrect'; // liever opslaan en netjes in de html zetten?
                }
        }
else {
                echo "user bestaat niet"; // zie bovenstaand
        }
}


?>

<html>
<head>
<title>Inloggen</title>
</head>
<body>
<form method="POST">
username: <input type="text" name="username" value="<?php if(isset($username)) { echo $username; } ?>" /><br />
password: <input type="password" name="password" /><br />
<input type="submit" value="login"><br />
</form>
</body>
</html>
 
Kenny iets

kenny iets

27/09/2014 20:21:25
Quote Anchor link
thx man

Toevoeging op 27/09/2014 21:26:43:

is dit $fetched ook gelijk als je om uit de db te halen?
 
Dos Moonen

Dos Moonen

27/09/2014 22:10:02
Quote Anchor link
$stmt->bind_result(...) (even veel variabele als geselecteerde kolommen (PS. star select zuigt omdat je niet weet hoeveel dat er zijn)) zorgt er voor dat telkens wanneer je $stmt->fetch() aan roept de volgende rij in de opgegeven variabelen gezet wordt.

De query selecteert alleen het password veld. $stmt->bind_result($hash) bind het veld wachtwoord aan de variabele $hash.
$stmt->fetch(); fetchet de volgende (de enige) rij waarna $hash bruikbaar is.

$hash wordt gebruikt op regel 24.

Voor de mogelijke return waarden van Mysqli::bind_result() zie http://php.net/manual/en/mysqli-stmt.fetch.php
 
Kenny iets

kenny iets

27/09/2014 22:40:13
Quote Anchor link
Dos Moonen op 27/09/2014 22:10:02:
$stmt->bind_result(...) (even veel variabele als geselecteerde kolommen (PS. star select zuigt omdat je niet weet hoeveel dat er zijn)) zorgt er voor dat telkens wanneer je $stmt->fetch() aan roept de volgende rij in de opgegeven variabelen gezet wordt.

De query selecteert alleen het password veld. $stmt->bind_result($hash) bind het veld wachtwoord aan de variabele $hash.
$stmt->fetch(); fetchet de volgende (de enige) rij waarna $hash bruikbaar is.

$hash wordt gebruikt op regel 24.

Voor de mogelijke return waarden van Mysqli::bind_result() zie http://php.net/manual/en/mysqli-stmt.fetch.php


en die S?

Toevoeging op 27/09/2014 22:46:44:

en als ik daar wat anders uit db wil halen moet ik dan een nieuwe query maken?
 
Dos Moonen

Dos Moonen

27/09/2014 23:42:12
Quote Anchor link
https://www.youtube.com/watch?v=nLinqtCfhKY

De s geeft aan dat de parameter die je bind een string is.

Als je meer velden wilt selecteren zoals uid, die ik blijkbaar over het hoofd heb gezien. Moet je inderdaad de query aanpassen.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php

// nieuwe regel 5
$stmt = $mysqli->prepare('SELECT uid, password FROM users WHERE username=? LIMIT 1');

// nieuwe regel 15
       $stmt->bind_result($uid, $hash);

//nieuwe regel 27
                        $_SESSION['uid'] = $uid;
?>
Gewijzigd op 27/09/2014 23:43:06 door Dos Moonen
 
Kenny iets

kenny iets

27/09/2014 23:47:10
Quote Anchor link
Dos Moonen op 27/09/2014 23:42:12:
https://www.youtube.com/watch?v=nLinqtCfhKY

De s geeft aan dat de parameter die je bind een string is.

Als je meer velden wilt selecteren zoals uid, die ik blijkbaar over het hoofd heb gezien. Moet je inderdaad de query aanpassen.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php

// nieuwe regel 5
$stmt = $mysqli->prepare('SELECT uid, password FROM users WHERE username=? LIMIT 1');

// nieuwe regel 15
       $stmt->bind_result($uid, $hash);

//nieuwe regel 27
                        $_SESSION['uid'] = $uid;
?>


kan der ook gwn * staan?

Toevoeging op 27/09/2014 23:50:55:

Kenny iets op 27/09/2014 23:47:10:
Dos Moonen op 27/09/2014 23:42:12:
https://www.youtube.com/watch?v=nLinqtCfhKY

De s geeft aan dat de parameter die je bind een string is.

Als je meer velden wilt selecteren zoals uid, die ik blijkbaar over het hoofd heb gezien. Moet je inderdaad de query aanpassen.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php

// nieuwe regel 5
$stmt = $mysqli->prepare('SELECT uid, password FROM users WHERE username=? LIMIT 1');

// nieuwe regel 15
       $stmt->bind_result($uid, $hash);

//nieuwe regel 27
                        $_SESSION['uid'] = $uid;
?>


kan der ook gwn * staan?
nee dus
Warning: mysqli_stmt::bind_result(): Number of bind variables doesn't match number of fields in prepared statement in



Toevoeging op 27/09/2014 23:54:13:

heb nu dit
ik heb hem echt verkloot xd
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
<?php
require "config.php";
if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST['username'], $_POST['password'])) {
        $stmt = $mysqli->prepare('SELECT * FROM user WHERE username=? LIMIT 1');


        if ($stmt === FALSE) {
                exit('er is een interne fout opgetreden, probeer het later nog eens');
        }


        $stmt->bind_param('s', $_POST['username']);

        $stmt->execute();

        $stmt->bind_result($username, $password, $id, $hash);

        $fetched = $stmt->fetch();

        if ($fetched === FALSE){
                exit('er is een interne fout opgetreden, probeer het later nog eens');
        }


        if ($fetched) {
                if (password_verify($_POST['password'], $hash)) {
                        $_SESSION['loggedin'] = "pizza";
                        $_SESSION['username'] = $_POST['username'];
                        echo $id;
                      
                        echo "hallo";
                        exit;
                }
else {
                        echo 'username/wachtwoord combinatie incorrect'; // liever opslaan en netjes in de html zetten?
                }
        }
else {
                echo "user bestaat niet"; // zie bovenstaand
        }
}


?>

<html>
<head>
    <title>titel?</title>
    <link rel="stylesheet" type="text/css" href="index.css" />
</head>
<body>
    <div id="header">
        <div id="links">
            <img src="http://www.catalogs.com/info/bestof/wp-content/uploads/2011/09/62.jpg" width="172" height="100" align="center" />
        </div>
        
        <div id="midden">
            
        </div>
        
        <div id="rechts">
            <form action="index.php" method="POST">
                <?php echo $langusername; ?>:<br />              
                <input type="text" placeholder="gebruikersnaam" name="username" /><br />
                    Wachtwoord:<br />
                    
                    <input type="password" name="password" placeholder="wachtwoord" /><br />
                    
                    <input type="submit"id="login" value="login">
                    <input type='hidden' name='hidden' value=1>
                    
                    
                    
            
            </form>
        </div>
    </div>
    <div class="clear"></div><!-- clear -->


    

 


    <div id="footer"  >
        pizza met pereroni
    </div>
</body>
</html>
 
Dos Moonen

Dos Moonen

28/09/2014 12:31:54
Quote Anchor link
http://www.phphulp.nl/php/forum/topic/help-blowfish/95944/3/#689833:
star select zuigt omdat je niet weet hoeveel [velden] er zijn


Een sterretje selecteert alle velden uit de tabel.
Als dat 42 velden zijn moet je ook 42 variabele in bind_result() stoppen...
Wanneer je een veld toevoegt of weghaalt uit de tabel moet je ook de code weer aanpassen.

Een sterretje heeft de volgende 'voordelen':
- de query is iets kleiner
en de volgende nadelen
- je moet véél meer typen doordat elk veld door een variabele gerepresenteerd moet worden in bind_result()
- ook al voeg je een veld toe / verwijder/verplaats je een veld dat helemaal niets met je login script te maken heeft dan moet je nog steeds je login script aanpassen. (en mogelijk andere scripts waar je het zelfde doet

Alleen de juiste velden selecteren heeft de volgende voordelen:
- blijft werken als je velden toevoegt/verwijderd/verplaats die niets met inloggen te maken hebben
- je haal alleen op wat je nodig hebt
- minder typen
- je haalt meer informatie op uit de database dan nodig
en het volgende 'nadeel'
- de query is iets langer doordat deze specifieker is

Dus JA, het kan. Maar je bent dom bezig als je het doet.

Waarom wil je trouwens de username uit de database halen? Je hebt die al.
Het enige wat je nodig hebt in de bcrypt hash (ik ging er vanuit dat je deze opslaat in een veld genaamd 'password') en de primary key (waarschijnlijk een veld genaamd 'id') is ook wel fijn.
De select query en bind_result() moeten de zelfde volgorde gebruiken. Doe je dat niet dan komt de data niet in de juiste variabele te staan, PHP kan je gedachten namelijk niet lezen. Als het dat kon zouden we niet hoeven te programmeren, alleen denken aan wat we willen.
 

Pagina: « vorige 1 2 3



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.