Beste Tweakers,
ik probeer een site te maken waar je via een LDAP-server kan inloggen op de site. Ik heb alsvolgt al een stuk code, waarmee je met een pop-up je username en wachtwoord in kan voeren en je kan inloggen. Dit werkt prima. Maar ik wil graag dat je je username en wachtwoord gewoon in een form invult, dus zonder pop-up. Ik heb verschillende dingen geprobeerd, zoals variabelen doorgeven, veranderen etc. maar bij mij blijft er 'Authorization failed' komen als ik met de juiste username en wachtwoord wil inloggen.
Als ik via de pop-up inlog krijg ik dus mooi te zien: Welcome Jan. Maar het lukt me niet om dit via een form te regelen.
ik probeer een site te maken waar je via een LDAP-server kan inloggen op de site. Ik heb alsvolgt al een stuk code, waarmee je met een pop-up je username en wachtwoord in kan voeren en je kan inloggen. Dit werkt prima. Maar ik wil graag dat je je username en wachtwoord gewoon in een form invult, dus zonder pop-up. Ik heb verschillende dingen geprobeerd, zoals variabelen doorgeven, veranderen etc. maar bij mij blijft er 'Authorization failed' komen als ik met de juiste username en wachtwoord wil inloggen.
PHP:
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
| <?PHP $ldapconfig['host'] = 'naampje'; $ldapconfig['port'] = poort; $ldapconfig['basedn'] = 'o=org,c=nl'; $ldapconfig['authrealm'] = 'AWH CMS LDAP autorisation'; function ldap_authenticate() { global $ldapconfig; if ( $_SERVER['PHP_AUTH_USER'] == "jan" && $_SERVER['PHP_AUTH_PW'] != $_SERVER['PHP_AUTH_USER']) { $ds=@ldap_connect($ldapconfig['host'],$ldapconfig['port']); $r = @ldap_search( $ds, $ldapconfig['basedn'], 'uid=' . $_SERVER['PHP_AUTH_USER']); if ($r) { $result = @ldap_get_entries( $ds, $r); if ($result[0]) { if (@ldap_bind( $ds, $result[0]['dn'], $_SERVER['PHP_AUTH_PW']) ) { return $result[0]; } } } } header('WWW-Authenticate: Basic realm="'.$ldapconfig['authrealm'].'"'); header('HTTP/1.0 401 Unauthorized'); return NULL; ldap_close($ds); } if (($result = ldap_authenticate()) == NULL) { echo('Authorization Failed'); exit(0); } echo('Welcome '); $naam=$result[cn]; print("$naam[0]"); header("Location: index.php?pageId=0"); ?> |
Als ik via de pop-up inlog krijg ik dus mooi te zien: Welcome Jan. Maar het lukt me niet om dit via een form te regelen.