help blowfish

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior PHP developer

Functie Als Senior PHP developer heb je een sterke mening over de architectuur van projecten en de processen binnen het team. Je bent de sparringpartner voor je Team Lead. Ook ondersteun je met jouw kennis de minder ervaren developers in jouw team. Ze werken regelmatig aan projecten vanaf scratch en dit geeft ruimte om voor nieuwe technieken te kiezen. Naast het ontwikkelen van software ben je continue bezig om ook jezelf te ontwikkelen. Ze werken met o.a.: PHP, Laravel, Doctrine, PHP Unit, Behat, React, TypeScript, (My)SQL, Postgress, Redis, ElasticSearch, Docker, Nginx, GIT flow, JIRA, AWS. Eisen • HBO werk- en

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 »

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun

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 »

Backend Developer Scrummaster .NET

Samengevat: Deze werkgever is een ambitieus internetbedrijf met een passie voor digitale communicatie. Ben jij geschikt als Backend Developer? Heb je ervaring met .NET platform? Vaste baan: Backend Developer / SCRUM Master Scrum HBO WO €3.800 - €6.000 Deze werkgever is een innovatief bedrijf met enthousiaste mensen die jarenlang ervaring hebben met het ontwikkelen internet- en intranetoplossingen. Wij houden van korte lijnen en open en eerlijke communicatie. Wij zetten graag onze jarenlange ervaring in om perfect werkende oplossingen te ontwikkelen. Wij ondersteunen dienstverlenende organisaties bij het ontwikkelen en realiseren van een effectief, adaptief communicatieplatform. Je ontwikkelt met ons de meest

Bekijk vacature »

Full-stack Developer

As a Full-stack developer at KUBUS, you will develop the (web)applications and services of BIMcollab. You will work on both the front- and back-end. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact in the market, but small enough that as an individual developer you can have an impact and really make a difference. Our development team consists of over 40 developers, testers, scrum masters and product owners, divided over

Bekijk vacature »

C# Developer Research and Development - Delft

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Delft Vacature ID: 6307 Introductie C# Developer Research and Development - Delft - Onze klant is één van de meest innovatieve bedrijven in de region van Delft. Op dit moment zijn ze voor het innovatie centrum. In het innovatie centrum wordt gewerkt aan de nieuwste technieken voor navigatie software. R&D / C# / Pattern Recognition / Algorithms / 3d Data / DotNET Functieomschrijving Als C# Developer kom je te werken in een innovatief scrumteam. We ontwikkelen en door ontwikkelen de nieuwste technieken op het gebied van navigatie software. Deze software wordt onder andere

Bekijk vacature »

Ontwikkelaar Centrale Monitoring

Ontwikkelaar centrale Monitoring Functieomschrijving Wil jij een bijdrage leveren aan het onderhoud, opzetten en ontwikkelingen van technologieën van SSC-ICT, een van de grootste ICT-dienstverleners van en voor de Rijksoverheid? Je komt als monitorspecialist te werken bij team Operations Management Services. Dit team werkt aan het stabiliseren en waarborgen van een betrouwbare monitoromgeving voor 7 ministeries. Jij begeleidt het implementatieproces van de te monitoren technologieën, onder andere via management packs, connectoren en API's. Je hebt hiervoor veel contact met interne en externe klanten, die hun wensen op het gebied van monitoring aan jou doorgeven. Je beoordeelt deze wensen en komt met

Bekijk vacature »

Junior/medior Back end developer PHP, Laravel

Functie Jij als ontwikkelaar komt te werken in een team bestaande uit 4 back end programmeurs, 2 vormgevers/ Front end developers en een online marketeer. Qua persoonlijkheden is het team erg gevarieerd van sportfanaten tot gameliefhebbers en Golfers. Een ding heeft iedereen hier gemeen; Passie voor goede code. In jouw rol zul je voor veel van je tijd je bezig houden met het ontwikkelen van maatwerk features en applicaties. Daarnaast hebben wij op aanvraag ook wel eens een website of onderhoudsklusje, die opgepakt moet worden en hier ben jij ook niet vies van. Jij als full stack developer zult dus

Bekijk vacature »

Back End Developer .NET

Dit ga je doen Ontwikkelen in C# .NET en werken aan nieuwbouw, uitbouw en onderhoud van de software (die communiceren met 68.000 sensoren, waardoor er meerdere miljoenen berichten per uur verwerkt worden); Samenwerken in Scrum Teams; Meewerken aan verschillende, uitdagende projecten; Werken met nieuwe technologieën en vrijheid krijgen om jezelf te ontwikkelen en door te groeien. Hier ga je werken Je komt als Developer te werken bij een organisatie die gespecialiseerd is in software die real-time wordt gebruikt. De software constateert waar werk moet worden uitgevoerd en de chauffeurs worden met een andere applicatie hierop geattendeerd. Ook wordt er direct

Bekijk vacature »

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »

Front-end developer - working on software for arou

Functie They have recently started looking for an experienced Front-end (mobile/app) developer. Because of the short lines within the team, they are also looking for someone who can communicate with the service desk, sales and support for technical questions. You will join their IT team consisting of about 10 colleagues divided over two teams in rooms opposite each other. Half of these are involved in their front-end. You will work together with, among others, the Architect, 1 senior, 1 junior and there is a Team Leader. In terms of technology, they work with a unique tech-stack, particularly because of the

Bekijk vacature »

Back End Developer

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

Bekijk vacature »

Junior/medior PHP developer Onderwijssector

Functie Momenteel zijn ze op zoek naar een developer die, veelal fullstack, mee gaat werken aan de ontwikkeling van de producten en zo helpt aan de uitvoering van hun ontwikkelprojecten. Je komt te werken binnen hun development team bestaande uit 6 ontwikkelaars. Ze staan zowel open voor meer junior als medior/senior developers. Je kunt snel veel verantwoordelijkheid krijgen en doorgroeien binnen het bedrijf. Bovendien ben je betrokken bij het bepalen van de product roadmap en de inbreng van (nieuwe) technologieën. De applicaties waaraan je werk worden gebruikt op onderwijsinstellingen door heel Nederland. De tech-stack bestaat voornamelijk uit Laravel (PHP), Vue.js

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

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

28/04/2024 18:22:39
 
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.