host = $host; $this->dbUser = $dbUser; $this->dbPass = $dbPass; $this->dbName = $dbName; $this->connectToDb(); } /** * Establishes connection to MySQL and selects a database * @return void * @access private */ function connectToDb() { // Make connection to MySQL server if (!$this->dbConn = @mysql_connect($this->host, $this->dbUser, $this->dbPass)) { trigger_error('Could not connect to server'); $this->connectError = true; // Select database } else if (!@mysql_select_db($this->dbName,$this->dbConn)) { trigger_error('Could not select database'); $this->connectError = true; } } /** * Checks for MySQL errors * @return boolean * @access public */ function isError() { if ($this->connectError) { return true; } $error = mysql_error($this->dbConn); if (empty($error)) { return false; } else { return true; } } /** * Returns an instance of MySQLResult to fetch rows with * @param $sql string the database query to run * @return MySQLResult * @access public */ function &query($sql) { if (!$queryResource = mysql_query($sql, $this->dbConn)) { trigger_error('Query failed: ' . mysql_error($this->dbConn) . ' SQL: ' . $sql); } else { return new MySQLResult($this, $queryResource); } } } /** * MySQLResult Data Fetching Class * @access public * @package SPLIB */ class MySQLResult { /** * Instance of MySQL providing database connection * @access private * @var MySQL */ var $mysql; /** * Query resource * @access private * @var resource */ var $query; /** * MySQLResult constructor * @param object mysql (instance of MySQL class) * @param resource query (MySQL query resource) * @access public */ function MySQLResult(&$mysql, $query) { $this->mysql = &$mysql; $this->query = $query; } /** * Fetches a row from the result * @return array * @access public */ function fetch() { if ($row = mysql_fetch_array($this->query, MYSQL_ASSOC)) { return $row; } else if ( $this->size() > 0 ) { mysql_data_seek($this->query, 0); return false; } else { return false; } } /** * Returns the number of rows selected * @return int * @access public */ function size () { return mysql_num_rows($this->query); } /** * Returns the ID of the last row inserted * @return int * @access public */ function insertID () { return mysql_insert_id($this->mysql->dbConn); } /** * Checks for MySQL errors * @return boolean * @access public */ function isError() { return $this->mysql->isError(); } /** * Returns an instance of MySQLResult to fetch rows with * @param $sql string the database query to run * @return MySQLResult * @access public */ } ?> Privacy Policy - Birmingham Museums & Art Gallery Information Centre
             
Museums Home BMAGiC Home Search Browse BMAGiC Help About BMAGiC Contact Us
           

BMAGiC Privacy Policy

Who we are

In this privacy policy references to "we", "us" and "our" are to Birmingham Museums & Art Gallery. References to "our Website" or "the Website" are to www.bmagic.org.uk.

What information we collect and how

The information we collect via the Website may include:

  1. Any personal details you knowingly provide us with through forms and our email, such as name, address, telephone number etc.
  2. Your IP Address, this is a string of numbers unique to your computer that is recorded by our web server when you request any page or component on the Website. This information is used to monitor your usage of the Website.
  3. Data recorded by the Website which allows us to recognise you and your preferred settings, this saves you from re-entering information on return visits to the site. Such data is recorded locally on you computer through the use of cookies. Most browsers can be programmed to reject, or warn you before downloading cookies, information regarding this may be found in your browsers ‘help' facility.

What we do with your information

Any personal information we collect from this website will be used in accordance with the Data Protection Act 1998 and other applicable laws.

We may need to pass the information we collect to other companies for administrative purposes. We may use third parties to carry out certain activities, such as processing and sorting data, monitoring how customers use the Website and issuing our e-mails for us. Third parties will not be allowed to use your personal information for their own purposes.

Your Rights

You have the right to request a copy of any information that we currently hold about you.

Other Websites

This privacy policy only covers this website. Any other websites which may be linked to by our website are subject to their own policy, which may differ from ours.