Advertisement
Guest User

Untitled

a guest
Aug 8th, 2016
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.75 KB | None | 0 0
  1. <?php
  2. /**
  3. * Database
  4. *
  5. * Class for handling database connections
  6. *
  7. *
  8. * @category Global Class
  9. * @copyright ---
  10. * @license ---
  11. * @version 1.0
  12. * @link ---
  13. * @since File available since Release 1.0
  14. * @created ---
  15. * @modified ---
  16. * @author Original Author <--->
  17. * @author Future Author <--->
  18. */
  19.  
  20. class Database
  21. {
  22. private $database_connection = null;
  23.  
  24. public function __construct( $database_id )
  25. {
  26. $database_host = '';
  27. $database_name = '';
  28. $database_username = '';
  29. $database_password = '';
  30.  
  31. switch ( $database_id ) {
  32. case 'db1':
  33. $database_host = 'host';
  34. $database_name = 'name';
  35. $database_username = 'user';
  36. $database_password = 'pass';
  37. break;
  38. case 'db2':
  39. $database_host = 'host';
  40. $database_name = 'name';
  41. $database_username = 'user';
  42. $database_password = 'pass';
  43. break;
  44. default:
  45. trigger_error( 'Undefined database id', E_USER_ERROR );
  46. }
  47.  
  48. try {
  49. $this->database_connection = new PDO( "mysql:host={$database_host};
  50. dbname={$database_name}",
  51. $database_username,
  52. $database_password );
  53.  
  54. $this->database_connection->setAttribute( PDO::ATTR_ERRMODE,
  55. PDO::ERRMODE_EXCEPTION );
  56. } catch ( PDOException $pdo_exception ) {
  57. trigger_error( $pdo_exception, E_USER_ERROR );
  58. }
  59.  
  60. if ( empty( $this->database_connection ) ) {
  61. trigger_error( 'Undefined database connection', E_USER_ERROR );
  62. }
  63. }
  64.  
  65. public function execute_query( $query, $statement_id, $values )
  66. {
  67. $statement = $this->database_connection->prepare( $query );
  68.  
  69. if ( $statement_id == 'db1' ) {
  70. $statement->bindParam( ':id', $values[ 0 ] );
  71. } else if ( $statement_id == 'db2' ) {
  72. $statement->bindParam( ':id1', $values[ 0 ] );
  73. $statement->bindParam( ':id2', $values[ 1 ] );
  74. } else {
  75. trigger_error( 'Undefined statement id', E_USER_ERROR );
  76. }
  77.  
  78. $statement->execute();
  79.  
  80. return $statement;
  81. }
  82. }
  83.  
  84. <?php
  85. require once( "database.php" );
  86.  
  87. $database_1 = new Database( "db1" );
  88. $database_2 = new Database( "db2" );
  89.  
  90. $database_1->execute_query( "SELECT * FROM user WHERE id = :id", "db1", array( 0 ) );
  91. $database_2->execute_query( "SELECT * FROM user WHERE id = :id1 AND id2 = :id2", "db2", array( 0, 1 ) );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement