|
|
|
<?php
/******************************************************************************
Copyright : living source gmbh, 1998 http://www.living-source.de
Author(en) : Adi Sieker
Date : 1999-05-15
Version : 1.00
Datei : database.inc.php3
******************************************************************************/
/******************************************************************************
Database Connection Class
**************
What it's for:
This Class Opens a Database Connection. It's useful if you need to make more
than 1 SQL Statement in a single PHP Script.
Use it with ReUseConn in the MySQLDatabase class.
******************************************************************************/
class DBConnection
{
var $iConnectId;
/******************************************************************************
Function: Open
**************
Parameters:
$szDatabase == Name of the Database to connect to.
$szHost == Name of the Host on which szDatabase resides. Usually localhost
$szUser == Name of User to connect as.
$szPassword == Password of the User.
Return:
Return true if everything went well else it will return false.
What it's for:
This function actually opens the Database Connection.
******************************************************************************/
function Open( $szDatabase, $szHost, $szUser, $szPassword )
{
$this->iConnectId = false;
$iRet = true;
$this->iConnectId = mysql_connect( $szHost , $szUser, $szPassword );
if( $this->iConnectId )
$iRet = mysql_select_db( $szDatabase, $this->iConnectId );
else
$iRet = false;
return $iRet;
/*echo "DBConnection";*/
}
/*****************************************************************************
Function: Connection
**************
Parameters:
None
Return:
Returns the ConnectionID of the current Databae connection if a
Database COnnection has been established else it will return false.
What it's for:
This function retruns the Database ConnectionID. Use can pass this
functions return Value to the ReUseConn function of the MySQL Database Class.
******************************************************************************/
function Connection()
{
return $this->iConnectId;
}
}
/******************************************************************************
MySQL Database Class
**************
What it's for:
This class is used to Communicate with a mySQL Database Server.
******************************************************************************/
class MySQLDatabase
{
// Class Variables
var $iResultId;
var $szSQLString;
var $iNumRows;
var $iCurrentRow;
var $arRow;
/******************************************************************************
Function: Open
**************
Parameters:
$szDatabase == Name of the Database to connect to.
$szHost == Name of the Host on which szDatabase resides. Usually localhost
$szUser == Name of User to connect as.
$szPassword == Password of the User.
Return:
Return true if everything went well else it will return false.
What it's for:
This function actually opens the Database Connection.
******************************************************************************/
function Open( $szDatabase, $szHost, $szUser, $szPassword )
{
$this->iConnectId = false;
$this->szSQLString = "";
$this->iResultId = false;
$this->iNumRows = false;
$this->arRow = false;
$this->iCurrentRow = 0;
$iRet = true;
$this->iConnectId = mysql_connect( $szHost , $szUser, $szPassword );
if( $this->iConnectId )
{ $iRet = mysql_select_db( $szDatabase, $this->iConnectId );
if( !$iRet )
echo "Selected Database doesn't exist!!!";
}
else
{ echo "Connect didn't work out!!!";
$iRet = false;
}
return $iRet;
}
/******************************************************************************
Function: ReUseConn
**************
Parameters:
$iDBConnection == A valid ConnectionID to a mySQL Database.
Return:
None
What it's for:
This function reuses an already established Database connection.
******************************************************************************/
function ReUseConn( $iDBConnection )
{
$this->iConnectId = false;
$this->szSQLString = "";
$this->iResultId = false;
$this->iNumRows = false;
$this->arRow = false;
$this->iCurrentRow = 0;
$this->iConnectId = $iDBConnection;
}
/******************************************************************************
Function: Query
**************
Parameters:
$szSelect == This parameter is a little misnamed. It should probably be called
$szQueryString
Return:
true on ok.
false on error.
What it's for:
This function will actually Query the Database and set or reset some internal
Variables which are needed.
******************************************************************************/
function Query( $szSelect )
{
$this->szSQLString = "";
$this->szSQLString = $szSelect;
$this->iResultId = false;
$this->iNumRows = false;
$this->arRow = false;
$this->iCurrentRow = 0;
$iRet = true;
if( $this->iConnectId != 0)
{
if( strlen( $this->szSQLString ) > 0 )
{
$this->iResultId = mysql_query( $this->szSQLString, $this->iConnectId );
if( $this->iResultId )
{
$tok = strtok($this->szSQLString," ");
$tok = strtoupper( $tok );
if( !strcmp( $tok, "SELECT" ) )
$this->iNumRows = mysql_num_rows( $this->iResultId );
else
$this->iNumRows = mysql_affected_rows( $this->iResultId );
}
else
{
//echo "Error no ResultIndex!!!";
$iRet = false;
}
}
else
{
echo "Open called without any SQL Query!!!";
$iRet = false;
}
}
return $iRet;
}
/******************************************************************************
Function: NumRows
**************
Parameters:
None
Return:
The number of Rows affected by the last Query..
What it's for:
This function will return the number of affected Rows. Regardless if the
last Query was a SELECT, UPDATE, DELETE, or INSERT Statment..
******************************************************************************/
function NumRows()
{
if( $this->iConnectId )
return $this->iNumRows;
else
return false;
}
/******************************************************************************
Function: MoveTo
**************
Parameters:
int $iRow == The Row to move to.
Return:
true on success, else false.
What it's for:
Moves the recordset to the specified row in the resultset.
!!!! I implemented this function but haven't tested it yet!!!! *sorry*
******************************************************************************/
function MoveTo( $iRow )
{
if( $this->iConnectId && ($iRow <= $this->iNumRows) )
{
if( mysql_data_seek( $this->iResultId , iRow ) )
{ $this->arRow = mysql_fetch_array( $this->iResultId );
$this->iCurrentRow = $iRow;
return true;
}
else
return false;
}
else
return false;
}
/******************************************************************************
Function: GetField
**************
Parameters:
$szFeldName == Ups, some German slipped in here.
The field name for which to retrieve the Data.
Return:
The Vaule of the Field.
What it's for:
Retrieve the Vaule for Field in the current Row.
******************************************************************************/
function GetField( $szFeldName )
{ return $this->arRow[$szFeldName];
}
/******************************************************************************
Function: EchoFeld
**************
Parameters:
$szFeldName == Ups, some German slipped in here.
The field name for which to retrieve the Data.
Return:
None.
What it's for:
Echo the Vaule for Field in the current Row.
******************************************************************************/
function EchoFeld( $szFeldName )
{
echo $this->arRow[$szFeldName];
}
/******************************************************************************
Function: NextRow
**************
Parameters:
None
Return:
true if all OK.
If something went wrong it will return false.
What it's for:
Move to the NextRow in the result Set.
This Function has to called directly after a query has been executed, otherwise
no Data is available for retrieval.
******************************************************************************/
function NextRow()
{
$iRet = true;
if( $this->iNumRows )
{ $this->arRow = mysql_fetch_array( $this->iResultId );
if( $this->arRow )
$this->iCurrentRow++;
else
$iRet = false;
}
else
{
$iRet = false;
}
return $iRet;
}
/******************************************************************************
Function: Close
**************
Parameters:
None
Return:
true on OK else false.
What it's for:
Close a Databse Connection.
Carefull here, if use initialised the Class with the function ReUSeConn.
All query on this database connection will fail. This also counts for
other instanceses of this Class.
******************************************************************************/
function Close()
{
return mysql_close( $this->iConnectId );
}
}
$database_inc_php3 = 1;
?>
|
|
| Powerful php/mysql Pagination for up to 6 URL Params Categories : PHP, PHP Classes, Databases, MySQL, Navigation | | | Password reminder Categories : PHP, PHP Classes, Databases, MySQL, Mail | | | usercounter class Categories : PHP, PHP Classes, Databases, MySQL, Environment Variables | | | MySQL Handler Categories : PHP, Databases, MySQL, Classes and Objects, PHP Classes | | | PostGreSQL and MySQL 2 in 1 db Manager Categories : PHP, PHP Classes, Databases, PostgreSQL, MySQL | | | Simple Mini Poll class library (SimPoll) Categories : PHP, PHP Classes, Databases, MySQL, Complete Programs | | | Online Automatic Class Generator for MySQL Tables Categories : PHP, PHP Classes, Classes and Objects, Databases, MySQL | | | Specify your connection settings and create a link to a MySQL database. Categories : PHP, PHP Classes, Databases, MySQL, Beginner Guides | | | Simple database class Categories : PHP, PHP Classes, MySQL, Databases | | | Simple usersOnline class - keep track of how many users are online on your site Categories : PHP, PHP Classes, Databases, MySQL | | | Setting up InnoDB on MySQL and using Transactions Begin, Commit, Rollback in PHP. Categories : PHP Classes, Databases, PHP, MySQL, InnoDB | | | Ajax PHP Tree (Left and Right) with MySQL Categories : PHP, Databases, MySQL, AJAX, PHP Classes | | | YellowPages Content Grabber (PHP5 +) Categories : PHP, PHP Classes, Regexps, Databases, MySQL | | | This program allows you to upload an ODBC ressource - i.e. an MS-Access database to a MySQL server. Categories : Databases, MySQL, Complete Programs, PHP, Databases | | | Convert SQL from oracle,mysql,mssql,sqlite and odbc to SQL compatible Categories : PHP, PHP Classes, Databases, MySQL, MS SQL Server | |
|
|
|