GitXplorerGitXplorer
r

MySQL-Wrapper-Class

public
6 stars
4 forks
0 issues

Commits

List of commits on branch master.
Unverified
3d0f1ee1829f168019de69f8381bdec7dbb2fabc

Update namespace

rrcastera committed 11 years ago
Unverified
767434f336e0e381cab9120fee97d85598dfd2df

Update for psr-0, add composer

rrcastera committed 11 years ago
Unverified
ac5963f49c2f9ab0202e037fdff93da434054ad1

Remove dsstore and add gitignore

rrcastera committed 13 years ago
Unverified
ee58e0d8d647dc5c7cfba8341f4c7ed495d55540

Partial rewrite to library, added examples

rrcastera committed 13 years ago
Unverified
70d4d94fa6d5af88c89a8e26dc7ca23233d4d69f

modify comments

rrcastera committed 14 years ago
Unverified
b52c25730c51e7e2afe9621185639abacbf1ff58

Update comments

rrcastera committed 14 years ago

README

The README file for this repository.

MySQL Abstraction Class

This is a class that I've used in some of my projects for years. It's a simple wrapper to MySQL written in PHP5 that allows you to connect, run queries and get results. It's been used in production sites for some time now and I've re-factored it several times.

Setup


Add a composer.json file to your project:

{
  "require": {
      "rcastera/mysql-wrapper": "v1.0.0"
  }
}

Then provided you have composer installed, you can run the following command:

$ composer.phar install

That will fetch the library and its dependencies inside your vendor folder. Then you can add the following to your .php files in order to use the library (if you don't already have one).

require 'vendor/autoload.php';

Then you need to use the relevant class, and instantiate the class. For example:

Getting Started


require 'vendor/autoload.php';

use rcastera\Database\Mysql\Mysql;

$db = new Mysql('localhost', 'DATABASE', 'USERNAME', 'PASSWORD');

Examples


Select all records from contacts table.
<?php
    require 'vendor/autoload.php';
    use rcastera\Database\Mysql\Mysql;
    $db = new Mysql('localhost', 'DATABASE', 'USERNAME', 'PASSWORD');
?>
<?php $contacts = $db->executeQuery('SELECT * FROM contacts')->asObject(); ?>
<?php if ($contacts): ?>
<ul>
    <?php foreach($contacts as $contact): ?>
    <li><?php echo $contact->first_name; ?> <?php echo $contact->last_name; ?></li>
    <?php endforeach; ?>
</ul>
<?php else: ?>
<p>No contacts found.</p>
<?php endif; ?>
<?php unset($db); ?>
Insert a record into the contacts table.
<?php
    require 'vendor/autoload.php';
    use rcastera\Database\Mysql\Mysql;
    $db = new Mysql('localhost', 'DATABASE', 'USERNAME', 'PASSWORD');
?>
<?php $inserted = $db->executeQuery('INSERT INTO contacts (first_name, last_name, email) VALUES ("Isabella", "Castera", "email@domain.com")')->wasInserted(); ?>
    <?php if ($inserted): ?>
    <p>Contact Isabella inserted with id, <?php echo $inserted; ?></p>
    <?php else: ?>
    <p>No contacts found.</p>
    <?php endif; ?>
<?php unset($db); ?>
Delete a record from the contacts table.
<?php
    require 'vendor/autoload.php';
    use rcastera\Database\Mysql\Mysql;
    $db = new Mysql('localhost', 'DATABASE', 'USERNAME', 'PASSWORD');
?>
<?php $deleted = $db->executeQuery('DELETE FROM contacts WHERE first_name = "Isabella"')->wasDeleted(); ?>
    <?php if ($deleted): ?>
    <p>Contact Isabella deleted.</p>
    <?php else: ?>
    <p>No contacts found.</p>
    <?php endif; ?>
<?php unset($db); ?>
Update a record in the contacts table.
<?php
    require 'vendor/autoload.php';
    use rcastera\Database\Mysql\Mysql;
    $db = new Mysql('localhost', 'DATABASE', 'USERNAME', 'PASSWORD');
?>
<?php $updated = $db->executeQuery('UPDATE contacts SET last_name = "Branson" WHERE first_name = "Richard"')->wasUpdated(); ?>
    <?php if ($updated): ?>
    <p>Contact Richard updated.</p>
    <?php else: ?>
    <p>No contacts found.</p>
    <?php endif; ?>
<?php unset($db); ?>

Contributing


  1. Fork it.
  2. Create a branch (git checkout -b my_branch)
  3. Commit your changes (git commit -am "Added something")
  4. Push to the branch (git push origin my_branch)
  5. Create an Issue with a link to your branch
  6. Enjoy a refreshing Coke and wait