AJAX Wachtwoord Generator

Door Roel -, 18 jaar geleden, 6.027x bekeken

Ik heb dit script gemaakt omdat ik sinds vandaag bezig ben met AJAX en ik het nodig tijd vond voor een update van de wachtwoord generator.

Je hebt nu geen last meer van vernieuwingen en dergelijke, want hij is volledig op AJAX gebaseerd.

Er zit een minimum beveiliging in. Kijk dus maar wat je ermee doet.

Rate & Comment :)

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
<?php
if (isset($_GET['tekens'])) {
    if (empty($_GET['tekens']) || !preg_match("/^[0-9]{0,50}$/", $_GET['tekens'])) {
        $code = 'Hier komt jouw wachtwoord.';
    }
elseif ($_GET['tekens'] > 300) {
        $code = 'Je code mag niet langer zijn dan 300 tekens!';
    }
else {
        $code = '';
        $tekens = Array_Merge(range("a", "z"), range("A", "Z"), range(0, 9));
        for($i = 0; $i < $_GET['tekens']; $i++){
        $code = $code.$tekens[rand(0, 61)];
        }

        $code = wordwrap($code, 100, "\n", true);
    }

    echo $code;
}
else {
?>
<html>
<head>
<title>AJAX Wachtwoord Generator - Gemaakt door Roel</title>
<style>
#goed {
    background-color: #D6FFD7;
    color: #00AA00;
    border: 1px solid #00AA00;
    padding: 2px;
}
</style>
<script type="text/javascript">
function genereren() {
    var xmlhttp;
    if (window.XMLHttpRequest) {
        xmlhttp = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } else {
        alert('Je browser ondersteund geen XMLHTTP!');
    }
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4) {
            document.getElementById('goed').innerHTML = xmlhttp.responseText;
        } else {
            document.getElementById('goed').innerHTML = 'Er wordt een code gemaakt...';
        }
    }
    xmlhttp.open("GET", "?tekens=" + document.getElementById('aantal').value, true);
    xmlhttp.send(null);
}
</script>
</head>
<h1>AJAX Wachtwoord Generator</h1>
<p>Vind je het moeilijk om een sterk beveiligd wachtwoord te bedenken? Laat deze generator het doen! Vul een getal in en jouw wachtwoord krijgt de lengte van jouw ingevulde getal!
<form method="post" target="_self">
Aantal tekens:<br><input type="text" name="aantal" id="aantal" onkeyup="genereren()"></form>
<div id="goed">Hier komt jouw wachtwoord.</div></p>
</html>
<?php
}
?>

Voorbeeld: http://www.rlsoftware.nl/wachtwoordgenerator

Gesponsorde koppelingen

PHP script bestanden

  1. ajax-wachtwoord-generator

 

Er zijn 19 reacties op 'Php algemeen'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Jesper Diovo
Jesper Diovo
18 jaar geleden
 
0 +1 -0 -1
Ietsjes korter:

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
<?php
if(isset($_GET['tekens'])) {
    if(!is_numeric($_GET['tekens'])) {
        $code = 'Hier komt jouw wachtwoord.';    
    }
else {
        $code = '';
        
        $tekens = array_merge(range('a', 'z'), range('A', 'Z'), range(0,9));
        
        while(strlen($code) < $_GET['tekens']) {
            $code .= $tekens[mt_rand(0, count($tekens))];
        }
    }

    
    echo $code;
}
else {
?>
Roel -
Roel -
18 jaar geleden
 
0 +1 -0 -1
Het gaat mij daar niet om, maar om het AJAX systeem...
Midas
Midas
18 jaar geleden
 
0 +1 -0 -1
Dit is standaard code die je overal kan vinden als je AJAX gaat toepassen. Wat valt er te beoordelen?
Steen
steen
18 jaar geleden
 
0 +1 -0 -1
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$tekens = array_merge(range('a', 'z'), range('A', 'Z'), range(0,9));


Dit kan volgens mij korter, omdat range ook op andere manieren te gebruiken is (iets als 'a','Z').
Zero XT
Zero XT
18 jaar geleden
 
0 +1 -0 -1
Misschien een max lengte opgeven want:

Fatal error: Maximum execution time of 30 seconds exceeded in D:\Klanten\vhosts\rlsoftware.nl\httpdocs\wachtwoordgenerator\Index.php on line 9

Bij een invoer van 50000 karakters
Loran DP
Loran DP
18 jaar geleden
 
0 +1 -0 -1
Fatal error: Maximum execution time of 30 seconds exceeded in D:\Klanten\vhosts\rlsoftware.nl\httpdocs\wachtwoordgenerator\Index.php on line 9

Met het getal: 120000000000000000000000000000

Dus je moet zorgen dat je input niet groter is dan 2 :)

Oh leuk Windows hosting.. &#63743;
Roel -
Roel -
18 jaar geleden
 
0 +1 -0 -1
Beide aangepast. 300 karakters is maximaal en de array is aangepast.
Arian Stolwijk
Arian Stolwijk
18 jaar geleden
 
0 +1 -0 -1
kun je dit niet net zo goed in pure js doen... hier hoef je toch geen aparte ajax request voor te doen ...
Wouter De Schuyter
Wouter De Schuyter
18 jaar geleden
 
0 +1 -0 -1
Afbeelding

> verkeerd, moet iets zijn als "de waarde van je code mag niet langer dan 300 tekens zijn"

edit
tis gewoon niet duidelijk wat je juist bedoeld
Onbekend Onbekend
Onbekend Onbekend
18 jaar geleden
 
0 +1 -0 -1
Waarom zou je dit met AJAX doen?
Toby hinloopen
toby hinloopen
18 jaar geleden
 
0 +1 -0 -1
waarom met ajax?
ooit van javascript gehoort?

als je toch een zooi javascript schrijft om via ajax te communiceren, waarom dan die generator in javascript schrijven???

de code om via javascript een wachtwoord te maken is zelfs kleiner dan je huidige ajax functie.

via aJaX doen heeft 0 meerwaarde.

nog iets:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
preg_match("/^[0-9]{0,50}$/", $_GET['tekens'])


waarom match je hier 0 tot 50 getallen terwijl je max. 3 getallen mag invoeren? (3-0-0)

Deze regex matcht alles tussen 0 en 300, inclusief:
/^[0-3]?[0-9]?[0-9]$/

heb je het meteen in 1 regel.


18 jaar geleden
 
0 +1 -0 -1
Wees positief hij heeft het zo gedaan het werkt prima. En het zou kunnen via javascript (denk ik?) maar dan weet je niet hoe je het met ajax kan doen en dat is wat hij aan het leren is! Niet javascript dus!
Jesper Diovo
Jesper Diovo
18 jaar geleden
 
0 +1 -0 -1
@Danny: Nee, als hij echt doelt op het AJAX gedeelte van de code vind ik het echt onzin dat dit geplaatst is. Hij mag er dan misschien trots op zijn dat het hem is gelukt, maar dat soort code valt overal standaard te vinden...


18 jaar geleden
 
0 +1 -0 -1
toch vind ik het wel handig wat hij heeft gepost. Ik snap namelijk de ballen niet van ajax en js!
Jesper Diovo
Jesper Diovo
18 jaar geleden
 
0 +1 -0 -1
Als je het snapt weet je dat dit basics zijn. Anderzijds kun je hier nog niet veel wijs uit worden, want er zit geen uitleg bij.
Roel -
Roel -
18 jaar geleden
 
0 +1 -0 -1
@Jezpur; en jij zegt dat dit nutteloos is? En wat is dit dan?

Ohja en dan nog iets, wie zit er op jouw commentaar te wachten? Ik niet in ieder geval.
Michel Exel
Michel Exel
18 jaar geleden
 
0 +1 -0 -1
jammer dat er een spatie achter het ww zit
als je nu een CTRL+C doet krijg je IPV 8 tekens er 9
Wouter De Schuyter
Wouter De Schuyter
18 jaar geleden
 
0 +1 -0 -1
@ Roel, dat valt niet te vergelijken vind ik. Integendeel, ik vond het zelf heel handig toen ik met web design begon!

Dit was heel bruikbaar voor mij om AJAX te leren, http://daniel.lorch.cc/docs/ajax_simple/
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Jesper Diovo
Jesper Diovo
18 jaar geleden
 
0 +1 -0 -1
Quote:
@Jezpur; en jij zegt dat dit nutteloos is? En wat is dit dan?

Ohja en dan nog iets, wie zit er op jouw commentaar te wachten? Ik niet in ieder geval.

Dat is iets wat niet nutteloos is. Zie de reacties yourself :-). Dat is een bepaalde methode die (ik in ieder geval niet) nooit duidelijk via google gevonden kreeg. Altijd waren er wel antwoorden, maar niets dat echt werkte. Dat werkt wel.

Als je niet op mijn commentaar zit te wachten, plaats dan gewoon geen scripts. Als je een script plaatst, moet je er rekening mee houden dat er gereageerd wordt, en dat deze reacties nooit altijd in jouw straatje passen én dat jij geen invloed hebt op wie er reageert. Iedereen op PHPHulp is zo vrij dat hij zelf mag bepalen of hij wel of niet reageert.

Ohja, dan nog iets. Ik krijg altijd meteen een aanval van deze-persoon-is-echt-zielig als iemand in iemand anders' scripts gaat zoeken om zijn eigen script mee te verdedigen, en dus diegene z'n reactie mee aan te vallen :-)...

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. ajax-wachtwoord-generator

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

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.