• Main Page
  • Data Structures
  • Files
  • File List

mssqlResultset.php

Go to the documentation of this file.
00001 <?php
00002 
00003 /**
00004  * SQL Server query resultset class
00005  *
00006  * @package objSQL
00007  * @version 2.1.0
00008  * @author MT Jordan <mtjo62@gmail.com>
00009  * @link http://objsql.sourceforge.net
00010  * @copyright 2004-2010 openSource Partners
00011  * @license LGPL
00012  * @revision $Id: mssqlResultset.php,v 1.7 2008-01-19 21:28:19-05 mt_jordan Exp $
00013  */
00014 
00015 class mssqlResultset
00016 {
00017     /**********************************************
00018      * Internal variables
00019      *********************************************/
00020 
00021     /**
00022      * Database connection object
00023      *
00024      * @access private
00025      * @var    mixed
00026      */
00027     private $objConnection;
00028 
00029     /**
00030      * Query record
00031      *
00032      * @access private
00033      * @var    array
00034      */
00035     private $objRecord = array();
00036 
00037     /**
00038      * Query resultset object
00039      *
00040      * @access private
00041      * @var    mixed
00042      */
00043     private $objResult;
00044 
00045     /**********************************************
00046      * Class methods
00047      *********************************************/
00048 
00049     /**
00050      * Constructor
00051      *
00052      * @access public
00053      * @param  mixed $result
00054      * @param  mixed $connection
00055      */
00056     public function __construct( $result, $connection )
00057     {
00058         $this->objConnection = $connection;
00059         $this->objResult     = $result;
00060     }
00061 
00062     /**
00063      * Return num of affected rows from insert/delete/update query
00064      *
00065      * @access public
00066      * @return int
00067      */
00068     public function affected_rows()
00069     {
00070         if ( $this->objResult )
00071             return mssql_rows_affected( $this->objConnection );
00072     }
00073 
00074     /**
00075      * Return resultset as assoc array
00076      *
00077      * @access public
00078      * @return mixed
00079      */
00080     public function fetch_array()
00081     {
00082         if ( $this->objResult )
00083         {
00084             $this->objRecord = mssql_fetch_assoc( $this->objResult );
00085             return ( $this->objRecord !== false );
00086         }
00087     }
00088 
00089     /**
00090      * Return resultset as object
00091      *
00092      * @access public
00093      * @return mixed
00094      */
00095     public function fetch_object()
00096     {
00097         if ( $this->objResult )
00098             return mssql_fetch_object( $this->objResult );
00099     }
00100 
00101     /**
00102      * Return resultset as numeric array
00103      *
00104      * @access public
00105      * @return mixed
00106      */
00107     public function fetch_row()
00108     {
00109         if ( $this->objResult )
00110         {
00111             $this->objRecord = mssql_fetch_row( $this->objResult );
00112             return ( $this->objRecord !== false );
00113         }
00114     }
00115 
00116     /**
00117      * Return record from select query
00118      *
00119      * @access public
00120      * @param  mixed $field
00121      * @return mixed
00122      */
00123     public function field( $field )
00124     {
00125         if ( $this->objResult )
00126         {
00127             if ( get_magic_quotes_runtime() )
00128                 return stripslashes( $this->objRecord[$field] );
00129             else
00130                 return $this->objRecord[$field];
00131         }
00132     }
00133 
00134     /**
00135      * Free resultset memory - destroy resultset object
00136      *
00137      * @access public
00138      */
00139     public function flush()
00140     {
00141         if ( $this->objResult )
00142         {
00143             mssql_free_result( $this->objResult );
00144             $this->objRecord = array();
00145             $this->objResult = null;
00146         }
00147     }
00148 
00149     /**
00150      * Return num fields from select query
00151      *
00152      * @access public
00153      * @return int
00154      */
00155     public  function num_fields()
00156     {
00157         if ( $this->objResult )
00158             return mssql_num_fields( $this->objResult );
00159     }
00160 
00161     /**
00162      * Return num rows from select query
00163      *
00164      * @access public
00165      * @return int
00166      */
00167     public function num_rows()
00168     {
00169         if ( $this->objResult )
00170             return mssql_num_rows( $this->objResult );
00171     }
00172 
00173     /**
00174      * Return resultset object
00175      *
00176      * @access public
00177      * @return mixed
00178      */
00179     public function result()
00180     {
00181         return $this->objResult;
00182     }
00183 }
00184 
00185 ?>

Generated on Sat Jul 10 2010 15:14:38 for objSQL 2.1.0 by  doxygen 1.7.1