Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

First version of code to authenticate against external database.

This NOT TESTED yet, and has parameters hardcoded ... it will of
course be using Petri's config interface later when that's ready.
  • Loading branch information...
commit dce48fc85a6eb1279facbcff4cb2d0ce048b3249 1 parent b264943
moodler authored
Showing with 43 additions and 0 deletions.
  1. +43 −0 auth/db/lib.php
View
43 auth/db/lib.php
@@ -0,0 +1,43 @@
+<?PHP // $Id$
+ // Authentication by looking up an external database table
+
+// This code is completely untested so far - I'm just jotting down ideas ...
+// Looks like it should work though ...
+
+$CFG->authdbhost = "localhost";
+$CFG->authdbtype = "mysql"; // (postgresql, etc)
+$CFG->authdbname = "authtest";
+$CFG->authdbtable = "users";
+$CFG->authdbuser = "user";
+$CFG->authdbpass = "pass";
+$CFG->authdbfielduser = "user";
+$CFG->authdbfieldpass = "pass";
+
+function auth_user_login ($username, $password) {
+// Returns true if the username and password work
+// and false if they are wrong or don't exist.
+
+ global $CFG;
+
+ ADOLoadCode($CFG->authdbtype);
+ $authdb = &ADONewConnection();
+ $authdb->PConnect($CFG->authdbhost,$CFG->authdbuser,$CFG->authdbpass,$CFG->authdbname);
+
+
+ $rs = $authdb->Execute("SELECT * FROM $CFG->authdbtable
+ WHERE $CFG->authdbfielduser = '$username'
+ AND $CFG->authdbfieldpass = '$password' ");
+ if (!$rs) {
+ notify("Could not connect to the specified authentication database...");
+ return false;
+ }
+
+ if ( $rs->RecordCount() ) {
+ return true;
+ } else {
+ return false;
+ }
+}
+
+
+?>
Please sign in to comment.
Something went wrong with that request. Please try again.