diff options
author | Dries Buytaert <dries@buytaert.net> | 2000-06-11 13:28:26 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2000-06-11 13:28:26 +0000 |
commit | 130cbb719866dcbb5a704902cac989a380748494 (patch) | |
tree | f86d23fb7f5a8ccf8b2693bfb566b488cf9217f7 | |
parent | c8b214483347305966e1ffc1c913bcda991fbeb7 (diff) | |
download | brdo-130cbb719866dcbb5a704902cac989a380748494.tar.gz brdo-130cbb719866dcbb5a704902cac989a380748494.tar.bz2 |
Updates:
* Streamlined the database abstraction layer a bit (it's not much yet) and
integrated it in most of the functions of `functions.inc'.
-rw-r--r-- | database.inc | 17 | ||||
-rw-r--r-- | functions.inc | 57 |
2 files changed, 48 insertions, 26 deletions
diff --git a/database.inc b/database.inc index 52a436202..c91e48cea 100644 --- a/database.inc +++ b/database.inc @@ -1,9 +1,21 @@ <? +/* + * These functions build the foundation for accessing the database: + * it is a general database abstraction layer suitable for several + * databases. Currently, the only supported database is MySQL but + * it should be straightforward to port it to any other database: + * just adjust the handlers to your needs. + */ + +/////////////////////////////////////////////////////////////////////////// +// NOTE: these functions are under construction and in no way finilized! // +/////////////////////////////////////////////////////////////////////////// function db_connect() { include "config.inc"; mysql_pconnect($dbhost, $dbuname, $dbpass) or die(mysql_Error()); mysql_select_db("$dbname") or die ("Unable to select database"); + // Note: we are using a persistent connection! } function db_query($query, $debug = false) { @@ -23,4 +35,9 @@ function db_fetch_object($qid) { if ($qid) return mysql_fetch_object($qid); } +# +# Automatically connect to database: +# +db_connect(); + ?>
\ No newline at end of file diff --git a/functions.inc b/functions.inc index beb8eae3f..3cf00b0a3 100644 --- a/functions.inc +++ b/functions.inc @@ -1,5 +1,6 @@ <? -include("user.class.php"); +include "user.class.php"; +include "database.inc"; session_start(); @@ -13,8 +14,7 @@ function dbconnect() { } function counter() { - dbconnect(); - mysql_query("UPDATE vars SET value=value+1 where name='totalhits'"); + db_query("UPDATE vars SET value=value+1 where name='totalhits'"); } function FixQuotes ($what = "") { @@ -44,30 +44,26 @@ function formatTimestamp($time) { } function addRefer($url) { - dbconnect(); - $query = "SELECT * FROM refer WHERE url = '$url'"; - $result = mysql_query($query); + $result = db_query($query); - if ($site = mysql_fetch_object($result)) { + if ($site = db_fetch_object($result)) { if ($site->status) { $site->refers++; $query = "UPDATE refer SET refers = '$site->refers', access_dt = '". time() ."' WHERE url = '$url'"; - $result = mysql_query($query); + $result = db_query($query); } } else { $query = "INSERT INTO refer (url, name, refers, create_dt, access_dt) VALUES ('$url', '', '1', '". time() ."', '". time() ."')"; - $result = mysql_query($query); + $result = db_query($query); } } function displayRelatedLinks($theme, $sid = 0) { - dbconnect(); - - $result = mysql_query("SELECT * FROM stories WHERE sid = $sid"); + $result = db_query("SELECT * FROM stories WHERE sid = $sid"); - if ($story = mysql_fetch_object($result)) { + if ($story = db_fetch_object($result)) { ### parse story for A HREF-tags: $text = "$story->abstract $story->comments $story->article"; while ($text = stristr($text, "<A HREF=")) { @@ -87,10 +83,10 @@ function displayRelatedLinks($theme, $sid = 0) { function displayOldHeadlines($theme) { global $user; - if ($user->storynum) $result = mysql_query("SELECT sid, subject, time FROM stories ORDER BY time DESC LIMIT $user->storynum, 10"); - else $result = mysql_query("SELECT sid, subject, time FROM stories ORDER BY time DESC LIMIT 10, 10"); + if ($user->storynum) $result = db_query("SELECT sid, subject, time FROM stories ORDER BY time DESC LIMIT $user->storynum, 10"); + else $result = db_query("SELECT sid, subject, time FROM stories ORDER BY time DESC LIMIT 10, 10"); - while ($story = mysql_fetch_object($result)) { + while ($story = db_fetch_object($result)) { if ($time != date("F jS", $story->time)) { $content .= "<P><B>". date("l, F jS", $story->time) ."</B></P>"; @@ -116,10 +112,8 @@ function displayOldHeadlines($theme) { function displayNewHeadlines($theme, $num = 10) { global $user; - dbconnect(); - $content = ""; - $result = mysql_query("SELECT sid, subject FROM stories ORDER BY time DESC LIMIT $num"); + $result = db_query("SELECT sid, subject FROM stories ORDER BY time DESC LIMIT $num"); while(list($sid, $subject) = mysql_fetch_row($result)) { if ($user) { $content .= "<LI><A HREF=\"article.php?sid=$sid"; @@ -137,7 +131,7 @@ function displayNewHeadlines($theme, $num = 10) { } function displayAdminblock($theme) { - $result = mysql_query("SELECT title, content FROM blocks"); + $result = db_query("SELECT title, content FROM blocks"); while (list($title, $content) = mysql_fetch_array($result)) { $theme->box($title, nl2br($content)); } @@ -145,14 +139,14 @@ function displayAdminblock($theme) { function displayUserblock($theme) { global $user; - dbconnect(); + if ($user->ublockon) { $content .= "<P ALIGN=\"right\">[ <A HREF=\"account.php?op=edithome\"><FONT COLOR=\"$theme->hlcolor2\">edit</FONT></A> | <A HREF=\"account.php?op=logout\"><FONT COLOR=\"$theme->hlcolor2\">logout</FONT></A> ]</P>"; $theme->box("$user->userid's box", $user->content); } } -function displayAccount($theme) { +function displayLogin($theme) { global $user; if ($user) { @@ -190,20 +184,31 @@ function displayAccountSettings($theme) { } } +function displayAccount($theme) { + global $user; + + include "submission.inc"; + + if ($user) { + ### Display account settings: + $content .= "<LI><A HREF=\"submission.php\">moderate submissions</A> (". submission_count() .")</LI>"; + $theme->box("$user->userid's account", "$content"); + } +} + function displayReferrals($theme, $number = 10) { $count = 1; - dbconnect(); if ($number) { $query = "SELECT * FROM refer ORDER BY refers DESC LIMIT $number"; - $result = mysql_query($query); + $result = db_query($query); } else { $query = "SELECT * FROM refer ORDER BY refers DESC"; - $result = mysql_query($query); + $result = db_query($query); } - while (($site = mysql_fetch_object($result)) && ($count <= $number)) { + while (($site = db_fetch_object($result)) && ($count <= $number)) { if ($site->name) $rval .= "$count. <A HREF=\"$site->url\">$site->name</A> ($site->refers)<BR>"; else $rval .= "$count. <A HREF=\"$site->url\">$site->url</A> ($site->refers)<BR>"; $count++; |