Wachtwoord herstel

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Software Programmeur PHP - JAVA

Functie Voor een opdrachtgever in omgeving Zoetermeer zijn wij op zoek naar een ontwikkelaar ter versterking van het huidige developers team. Heb jij altijd al willen werken voor een bedrijf, dat veilige netwerkverbindingen levert, door middel van veilige oplossingen, die door middel van de nieuwste technologieën ontwikkelt zijn? Stop dan nu met zoeken! Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen C / C++ / PHP. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een projecten

Bekijk vacature »

Software Programmeur PHP - JAVA

Functie Wil jij bij een platte en informele organisatie werken? Lees dan snel verder! Voor een opdrachtgever in omgeving Boskoop dat zich gespecialiseerd heeft in het realiseren van veilige netwerkverbindingen zijn wij op zoek naar een leuke software developer ter versterking van het huidige team. Hoe kan jouw dag er straks uitzien? Je gaat technische klussen uitvoeren op locatie bij klanten.Je onderhoudt contact met de projectleider om er zeker van te zijn dat een projecten goed verlopen. Je gaat klanten ondersteunen op het gebied van geleverde software en webapplicaties. Je gaat software en webapplicaties ontwikkelen met behulp van de talen

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 »

Fullstack developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie werken? Voor een mooi softwarebedrijf in omgeving Gouda zijn wij op zoek naar versterking op de afdeling Software Development! Als Fullstack react.js developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Onderdelen van jouw functie: Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook

Bekijk vacature »

Python (Django) developer - Remote in The Netherla

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

Bekijk vacature »

Mendix Ontwikkelaar - Vernieuwen van het applicati

Bedrijfsomschrijving De ontwikkelingen in de transportsector gaan razendsnel. Bij ons kun je een belangrijke rol spelen in deze sector. We streven ernaar om onze klanten te ontzorgen op het gebied van continuïteit en veiligheid met innovatieve producten en diensten. We willen dat onze klanten de veiligste vervoerders van Europa worden. Ons team werkt hard om deze ambitieuze doelstellingen te bereiken en we bieden een motiverende werkomgeving aan. We zijn op zoek naar zelfstarters met een focus op resultaat en beslissingsbevoegdheid. Functieomschrijving Als Mendix ontwikkelaar bij deze organisatie heb je een gevarieerde baan. Het applicatielandschap wordt vernieuwd en de “schade en

Bekijk vacature »

C# .NET developer voor innovatieve applicaties gez

Bedrijfsomschrijving Deze werkgever houdt zich al ruim 20 jaar bezig met het ontwikkelen van innovatieve software en dat willen ze graag nog lang doorzetten. En dat merk je ook als je als .NET developer hier aan de slag gaat. De applicaties worden continu doorontwikkeld met altijd als uitgangspunt dat zowel de kwaliteit als het gebruikersgemak van hoog niveau is. Het bedrijf telt inmiddels ruim 25 medewerkers waarvan meer dan de helft op de development afdeling werken. Meer weten over deze werkgever? Mail naar [email protected] of bel 0657578548 Functieomschrijving Je komt te werken in een Scrum team met andere .NET developers

Bekijk vacature »

Node.js developer looking for a challenging consul

Functie Under the guidance of 3 account managers, one of whom will be your point of contact within your expertise, you will start working for various clients. He or she will help you find a suitable and challenging assignment. Naturally, they will take your situation, experience and (technical) ambitions into account. The assignments last one to two years on average. This allows you to really commit to a project and make an impact as a consultant. Besides the assignment, you will regularly meet your colleagues from the IT department to share knowledge or discuss new trends, for example. Master classes

Bekijk vacature »

C# .NET Developer

Functie omschrijving C# .NET Developer gezocht. Ben jij een full stack developer die op zoek is naar een nieuwe uitdaging binnen een leuk snel groeiend bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Developer met ervaring op het gebied van .NET die een organisatie in de regio Bennekom gaat versterken. Jij gaat je binnen dit bedrijf vooral bezighouden met het verbeteren van de functionaliteiten van hun dataplatform. Samen met andere ontwikkelaars denk je mee in oplossingsrichtingen, architectuur en nieuwe technologieën. Bedrijfsprofiel De organisatie waar je voor gaat werken heeft een onafhankelijk dataplatform ontwikkelt voor de agrarische sector.

Bekijk vacature »

Programmeur / Developer

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

Bekijk vacature »

Senior Java Developer

Als Senior Java Developer bij Sogeti ben je onderdeel van onze toonaangevende community die bestaat uit ruim 100 gepassioneerde Java professionals. In teamverband lever je mooie prestaties. Daarmee draag je aan bij de meerwaarde die wij leveren aan onze top-opdrachtgevers. Geen werkdag is hetzelfde! Je bent voortdurend bezig met het oplossen van allerlei complexe vraagstukken binnen bedrijfs kritische systemen voor onze klanten in regio Noordoost zoals DUO, ING, CJIB en Tendernet. Natuurlijk krijg jij de mogelijkheid je verder te certificeren in dit vakgebied. We organiseren regelmatig technische Meetups en doen veel aan kennisdeling. Sogetisten hebben plezier in hun werk en

Bekijk vacature »

Java/Kotlin Developer

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

Lead developer

Functie Als lead developer wordt jij verantwoordelijk voor een van onze development teams. Samen met de Software Architect bewaak jij de kwaliteit en uitvoering van onze complexe vraagstukken. Daarnaast ben jij verantwoordelijk voor het inschatten, designen en ontwikkelen van middelgrote tot grote veranderingen in de software. Ook coördineer jij het proces rondom complexe technische vraagstukken. Verder bestaat jouw takenpakket uit het volgende: – Het aansturen van jouw development team; – Het begeleiden van Junior Software Engineers; – Het maken van technische analyses m.b.t. nieuwe aanvragen en het tijdsbestek inschatten voor de uitvoering hiervan; – Het uitvoeren van de ontwikkeling van

Bekijk vacature »

Software developer - C Sharp

Functie omschrijving Heb jij interesse in het programmeren en ontwikkelen van software? En heb jij enige ervaring met Oracle databases en PL/SQL? Wij zijn voor een leuke opdrachtgever in omgeving Naaldwijk op zoek naar een software ontwikkelaar die graag werkt met C#, JAVA of Oracle. Wij zoeken iemand die breed inzetbaar is en die aan veel verschillende applicaties wilt werken. Als software developer werk je met je collega's samen in een leuk en informeel team aan het (her)ontwerpen van bedrijfssystemen. Je houdt je bezig met het ontwikkelen van REST API's en je onderhoudt applicaties in Oracle PL/SQL en APEX. Vind

Bekijk vacature »

Integratie Developer / Architect

Dit ga je doen Als Integratie Developer / Architect binnen deze organisatie krijg je echt de kans om impact te maken. De organisatie is groeiende maar houdt een corporate cultuur buiten de deur. Heb je een goede business case: zorg voor goede argumentatie en ga ervoor! Geen stroperig beslissingsproces dat jouw ideeën in de weg staat! Enkele van jouw taken: Je ontwerpt en ontwikkelt nieuwe integraties met behulp van interne tools (Boomi) of externe partners; Je vertaalt functionele specificaties naar technische oplossingen; Je denkt mee over strategische ontwikkelingen op het gebied van applicatie integratie; Je voert regie op leveranciers en

Bekijk vacature »
Alex Mester

Alex Mester

29/01/2016 17:09:26
Quote Anchor link
Wie vind de fout?

Het wachtwoord word niet gewijzigd, terwijl de melding "Wachtwoord veranderd! Je kunt nu inloggen" word weer gegeven. Dus de query is geslaagd, maar het wachtwoord ongewijzigd.

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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
<?php
require 'session.php';
require 'db.php';
include 'header.php';

if (isset($_POST['email']) && !empty($_POST['email']) && isset($_POST['werk']) && !empty($_POST['werk'])) {
  //E-mail formulier is ingevuld
  $email = mysqli_real_escape_string($mysqli, $_POST['email']);
  if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    echo "Geen geldig e-mail adres! Ga naar de <a href=\"login.php\">registratie</a> pagina!";
  }

  else {
    //kijk of het email adres al voorkomt in de database
    $sql = "SELECT email FROM login WHERE email = '$email'";
    $result = mysqli_query($mysqli, $sql) or die(mysqli_error());
    if (mysqli_num_rows($result)) {
      //Wachtwoord resetten / Maak een nieuwe hash aan
      $hash = md5(rand(0,100000)); // Genereer willekeurige 32 character hash
      
      $sql = "UPDATE login SET hash='$hash' WHERE email='$email'";
      $result = mysqli_query($mysqli, $sql) or die(mysqli_error());
      
      $subject = "Webshop wachtwoord herstel";
      $message = "Je kunt met de onderstaande link je wachtwoord herstellen.

http://www.ztjuh.tk:81/webshoptest/resetpassword.php?email="
. $email . "&hash=" . $hash;
                    
        $headers = "From:[email protected]" . "\r\n";
        mail($email, $subject, $message, $headers);
        
        if ($result == 1) {
          echo "Er is een email gestuurd naar " . $email . " met een link om je wachtwoord te herstellen!";
        }
    }
  
    else {
      //E-mail niet geregistreerd!
      echo "Dit email adres is niet geregistreerd, <a href=\"login.php\">maak een account aan</a>!";
    }
  }  
}

elseif (isset($_GET['email']) && isset($_GET['hash']) && !empty($_GET['email']) && !empty($_GET['hash'])) {
  //Link in de email is ingedrukt
  $email = mysqli_escape_string($mysqli, $_GET['email']);
  $hash = mysqli_escape_string($mysqli, $_GET['hash']);
  if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    echo "Geen geldig e-mail adres! Ga naar de <a href=\"login.php\">registratie</a> pagina!";
  }

  else {
?>

<h3>Wachtwoord opnieuw instellen</h3>
<script type="text/javascript" language="JavaScript">
function checkPassword(theForm) {
    if (theForm.password.value != theForm.password2.value) {
        alert('De wachtwoorden komen niet overeen!');
        return false;
    } else {
        return true;
    }
}
</script>

<form action="<?php echo $_SERVER["PHP_SELF"];?>" method="post" onsubmit="return checkPassword(this);">
  <input type="hidden" id="email" name="email" value="<?php echo $email; ?>">
  <input type="hidden" id="hash" name="hash" value="<?php echo $email; ?>">
  <input type="password" id="password" name="password" placeholder="Wachtwoord"><br>
  <input type="password" id="password2" name="password2" placeholder="Herhaal wachtwoord"><br>
  <input type="submit" name="submit" value="Verander wachtwoord!">
</form>

<?php
  }
}

elseif (isset($_POST['email']) && isset($_POST['hash']) && isset($_POST['password']) && isset($_POST['password2']) && !empty($_POST['email']) && !empty($_POST['hash']) && !empty($_POST['password']) && !empty($_POST['password2'])) {
  $email = mysqli_escape_string($mysqli, $_POST['email']);
  if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    echo "Geen geldig e-mail adres!";
  }

  else {
    $hash = mysqli_escape_string($mysqli, $_POST['hash']);
    $password = mysqli_real_escape_string($mysqli, $_POST['password']);
    $password2 = mysqli_real_escape_string($mysqli, $_POST['password2']);
    if ($password === $password2) {
      $secret = password_hash($password, PASSWORD_BCRYPT);
      $sql = "UPDATE login SET password='$secret' WHERE email='$email' AND hash='$hash'";
      $result = mysqli_query($mysqli, $sql) or die(mysqli_error());
      if ($result == 1) {
        echo "Wachtwoord veranderd! Je kunt nu <a href=\"login.php\">inloggen</a>!";
      }

      else {
        echo "Er is iets mis gegaan!";
      }
    }
  }
}

else {
?>

<h3>Wachtwoord opnieuw instellen</h3>
<form method="post" action="<?php echo $_SERVER["PHP_SELF"];?>">
  <input type="text" id="email" name="email" placeholder="E-Mail"><br>
  <input type="hidden" id="werk" name="werk" value="werk">
  <input type="submit" name="submit" value="Verstuur E-Mail!"><br>
</form>
<?php
}
include 'footer.php';
?>
Gewijzigd op 29/01/2016 17:12:07 door Alex Mester
 
PHP hulp

PHP hulp

08/05/2024 11:59:03
 
- Ariën  -
Beheerder

- Ariën -

29/01/2016 17:12:26
Quote Anchor link
Echo eens $sql, dan kan je zien de de query correct is.
 
Alex Mester

Alex Mester

29/01/2016 17:16:00
Quote Anchor link
Bedankt, ik zie nu dat de hash mijn e-mail is!

Dat word ff zoeken waar het fout gegaan is

Toevoeging op 29/01/2016 17:18:28:

Ik had een stomme kopieer fout gemaakt in de <form>

Het probleem is opgelost! Bedankt!
Gewijzigd op 29/01/2016 17:20:06 door Alex Mester
 
Thomas van den Heuvel

Thomas van den Heuvel

29/01/2016 19:44:38
Quote Anchor link
Mogelijke gotcha:
Je escaped het wachtwoord voor de MySQL-context voordat je deze hasht. Dat kan mogelijk, afhankelijk van het gekozen wachtwoord, voor problemen zorgen. Het escapen dient pas te gebeuren op het moment dat / voordat deze hash in een querystring wordt opgenomen. Dit hangt natuurlijk ook mede af van hoe je controle vervolgens in elkaar zit maar het bovenstaande lijkt mij niet de goede volgorde.
 
Alex Mester

Alex Mester

07/10/2016 15:00:11
Quote Anchor link
Wat zou dan de juiste volgorde moeten zijn?
 



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.