Completed
Push — test ( d49b33...eefe29 )
by Temitope
02:38
created
src/Database/DatabaseHandler.php 2 patches
Indentation   +125 added lines, -125 removed lines patch added patch discarded remove patch
@@ -14,89 +14,89 @@  discard block
 block discarded – undo
14 14
 use Laztopaz\potatoORM\EmptyArrayException;
15 15
 
16 16
 class DatabaseHandler {
17
-    private $tableFields;
18
-    private $dbHelperInstance;
19
-    private $dbConnection;
20
-    private $model;
17
+	private $tableFields;
18
+	private $dbHelperInstance;
19
+	private $dbConnection;
20
+	private $model;
21 21
     
22
-    /**
23
-     * This is a constructor; a default method  that will be called automatically during class instantiation
24
-     */
25
-     public function __construct($modelClassName, $dbConn = Null)
26
-     {
27
-     	if (is_null($dbConn)) {
28
-     		$this->dbConnection = new DatabaseConnection();
29
-     	} else {
30
-     	    $this->dbConnection = $dbConn;
31
-     	}
32
-     	$this->model = $modelClassName;
33
-     }
22
+	/**
23
+	 * This is a constructor; a default method  that will be called automatically during class instantiation
24
+	 */
25
+	 public function __construct($modelClassName, $dbConn = Null)
26
+	 {
27
+	 	if (is_null($dbConn)) {
28
+	 		$this->dbConnection = new DatabaseConnection();
29
+	 	} else {
30
+	 		$this->dbConnection = $dbConn;
31
+	 	}
32
+	 	$this->model = $modelClassName;
33
+	 }
34 34
      
35
-    /**
36
-     * This method create a record and store it in a table row
37
-     * @params associative array, string tablename
38
-     * @return boolean true or false
39
-     */
40
-    public function create($associative1DArray, $tableName, $dbConn = Null)
41
-    {
42
-    	$tableFields = $this->getColumnNames($this->model, $this->dbConnection);
43
-    	$unexpectedFields = self::checkIfMagicSetterContainsIsSameAsClassModel($tableFields,$associative1DArray);
44
-    	if (count($unexpectedFields) > 0) {
45
-    	    throw TableFieldUndefinedException::reportUnknownTableField($unexpectedFields,"needs to be created as table field");
46
-    	}
47
-      unset($associative1DArray[0]);
48
-    	if (is_null($dbConn)) {
49
-    	    $dbConn = $this->dbConnection;
50
-    	}
51
-    	  return $this->insertRecord($dbConn, $tableName, $associative1DArray);
52
-    }
35
+	/**
36
+	 * This method create a record and store it in a table row
37
+	 * @params associative array, string tablename
38
+	 * @return boolean true or false
39
+	 */
40
+	public function create($associative1DArray, $tableName, $dbConn = Null)
41
+	{
42
+		$tableFields = $this->getColumnNames($this->model, $this->dbConnection);
43
+		$unexpectedFields = self::checkIfMagicSetterContainsIsSameAsClassModel($tableFields,$associative1DArray);
44
+		if (count($unexpectedFields) > 0) {
45
+			throw TableFieldUndefinedException::reportUnknownTableField($unexpectedFields,"needs to be created as table field");
46
+		}
47
+	  unset($associative1DArray[0]);
48
+		if (is_null($dbConn)) {
49
+			$dbConn = $this->dbConnection;
50
+		}
51
+		  return $this->insertRecord($dbConn, $tableName, $associative1DArray);
52
+	}
53 53
     
54
-    private function  insertRecord($dbConn, $tableName, $associative1DArray) 
55
-    {
56
-    	$insertQuery = 'INSERT INTO '.$tableName;
57
-    	$TableValues = implode(',',array_keys($associative1DArray));
58
-    	foreach ($associative1DArray as $field => $value) {
59
-    	    $FormValues[] = "'".trim(addslashes($value))."'";
60
-    	}
61
-    	$splittedTableValues = implode(',', $FormValues);
62
-    	$insertQuery.= ' ('.$TableValues.')';
63
-    	$insertQuery.= ' VALUES ('.$splittedTableValues.')';
64
-    	$executeQuery = $dbConn->exec($insertQuery);
65
-    	return $executeQuery ? : false;
54
+	private function  insertRecord($dbConn, $tableName, $associative1DArray) 
55
+	{
56
+		$insertQuery = 'INSERT INTO '.$tableName;
57
+		$TableValues = implode(',',array_keys($associative1DArray));
58
+		foreach ($associative1DArray as $field => $value) {
59
+			$FormValues[] = "'".trim(addslashes($value))."'";
60
+		}
61
+		$splittedTableValues = implode(',', $FormValues);
62
+		$insertQuery.= ' ('.$TableValues.')';
63
+		$insertQuery.= ' VALUES ('.$splittedTableValues.')';
64
+		$executeQuery = $dbConn->exec($insertQuery);
65
+		return $executeQuery ? : false;
66 66
     	
67 67
 	}
68 68
 
69
-    /**
70
-     * This method updates any table by supplying 3 parameter
71
-     * @params: $updateParams, $tableName, $associative1DArray
72
-     * @return boolean true or false
73
-     */
74
-    public function update(array $updateParams, $tableName, $associative1DArray, $dbConn = Null)
75
-    {
76
-    	$sql = "";
77
-    	if (is_null($dbConn)) {
78
-    	    $dbConn = $this->dbConnection;
79
-    	}
80
-    	$updateSql = "UPDATE `$tableName` SET ";
81
-    	unset($associative1DArray['id']);
82
-    	$unexpectedFields = self::checkIfMagicSetterContainsIsSameAsClassModel($this->getColumnNames($this->model, $this->dbConnection),$associative1DArray);
69
+	/**
70
+	 * This method updates any table by supplying 3 parameter
71
+	 * @params: $updateParams, $tableName, $associative1DArray
72
+	 * @return boolean true or false
73
+	 */
74
+	public function update(array $updateParams, $tableName, $associative1DArray, $dbConn = Null)
75
+	{
76
+		$sql = "";
77
+		if (is_null($dbConn)) {
78
+			$dbConn = $this->dbConnection;
79
+		}
80
+		$updateSql = "UPDATE `$tableName` SET ";
81
+		unset($associative1DArray['id']);
82
+		$unexpectedFields = self::checkIfMagicSetterContainsIsSameAsClassModel($this->getColumnNames($this->model, $this->dbConnection),$associative1DArray);
83 83
   
84
-    	if (count($unexpectedFields) > 0) {
85
-    		throw TableFieldUndefinedException::reportUnknownTableField($unexpectedFields, "needs to be created as table field");
86
-    	}
87
-    	foreach($associative1DArray as $field => $value) {
88
-    	    $sql .= "`$field` = '$value'".",";
89
-    	}
84
+		if (count($unexpectedFields) > 0) {
85
+			throw TableFieldUndefinedException::reportUnknownTableField($unexpectedFields, "needs to be created as table field");
86
+		}
87
+		foreach($associative1DArray as $field => $value) {
88
+			$sql .= "`$field` = '$value'".",";
89
+		}
90 90
     	
91
-    	$updateSql .= $this->prepareUpdateQuery($sql);
91
+		$updateSql .= $this->prepareUpdateQuery($sql);
92 92
     	
93
-    	foreach ($updateParams as $key => $val) {
94
-    	    $updateSql .= " WHERE $key = $val";
95
-    	}
96
-    	$stmt = $dbConn->prepare($updateSql);
97
-    	$boolResponse = $stmt->execute();
98
-    	return $boolResponse ?  : false;
99
-    }
93
+		foreach ($updateParams as $key => $val) {
94
+			$updateSql .= " WHERE $key = $val";
95
+		}
96
+		$stmt = $dbConn->prepare($updateSql);
97
+		$boolResponse = $stmt->execute();
98
+		return $boolResponse ?  : false;
99
+	}
100 100
     
101 101
   /**
102 102
    * This method retrieves record from a table
@@ -108,22 +108,22 @@  discard block
 block discarded – undo
108 108
    	$tableData = [];
109 109
    	
110 110
    	if (is_null($dbConn)) {
111
-   	    $dbConn = new DatabaseConnection();
111
+   		$dbConn = new DatabaseConnection();
112 112
    	}
113 113
    	$sql = $id  ? 'SELECT * FROM '.$tableName.' WHERE id = '.$id : 'SELECT * FROM '.$tableName;
114 114
    	
115 115
    	try {
116
-   	    $stmt = $dbConn->prepare($sql);
117
-   	    $stmt->bindValue(':table', $tableName);
118
-   	    $stmt->bindValue(':id', $id);
119
-   	    $stmt->execute();
116
+   		$stmt = $dbConn->prepare($sql);
117
+   		$stmt->bindValue(':table', $tableName);
118
+   		$stmt->bindValue(':id', $id);
119
+   		$stmt->execute();
120 120
    	} catch (PDOException $e) {
121
-   	    return  $e->getMessage();
121
+   		return  $e->getMessage();
122 122
    	}
123 123
    	$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
124 124
    	
125 125
    	foreach($results as $result) {
126
-   	    array_push($tableData, $result);
126
+   		array_push($tableData, $result);
127 127
    	}
128 128
    	return $tableData;
129 129
    }
@@ -135,13 +135,13 @@  discard block
 block discarded – undo
135 135
    */
136 136
   public static function delete($id, $tableName, $dbConn = Null)
137 137
   {
138
-      if (is_null($dbConn)) {
139
-          $dbConn = new DatabaseConnection();
140
-      }
138
+	  if (is_null($dbConn)) {
139
+		  $dbConn = new DatabaseConnection();
140
+	  }
141 141
       
142
-      $sql = 'DELETE FROM '.$tableName.' WHERE id = '.$id;
143
-      $boolResponse = $dbConn->exec($sql);
144
-      return $boolResponse ? : false;
142
+	  $sql = 'DELETE FROM '.$tableName.' WHERE id = '.$id;
143
+	  $boolResponse = $dbConn->exec($sql);
144
+	  return $boolResponse ? : false;
145 145
   }
146 146
   
147 147
   /**
@@ -152,13 +152,13 @@  discard block
 block discarded – undo
152 152
    */
153 153
   public static function checkIfMagicSetterContainsIsSameAsClassModel(array $tableColumn, array $userSetterArray)
154 154
   {
155
-      $unexpectedFields = [];
156
-      foreach ($userSetterArray as $key => $val) {
157
-          if (!in_array($key,$tableColumn)) {
158
-              $unexpectedFields[] = $key;
159
-          }
160
-      }
161
-      return $unexpectedFields;
155
+	  $unexpectedFields = [];
156
+	  foreach ($userSetterArray as $key => $val) {
157
+		  if (!in_array($key,$tableColumn)) {
158
+			  $unexpectedFields[] = $key;
159
+		  }
160
+	  }
161
+	  return $unexpectedFields;
162 162
   }
163 163
   
164 164
   /**
@@ -168,10 +168,10 @@  discard block
 block discarded – undo
168 168
    */
169 169
   public function prepareUpdateQuery($sql)
170 170
   {
171
-      $splittedQuery = explode(",",$sql);
172
-      array_pop($splittedQuery);
173
-      $mergeData = implode(",",$splittedQuery);
174
-      return $mergeData;
171
+	  $splittedQuery = explode(",",$sql);
172
+	  array_pop($splittedQuery);
173
+	  $mergeData = implode(",",$splittedQuery);
174
+	  return $mergeData;
175 175
   }
176 176
   
177 177
   /**
@@ -183,21 +183,21 @@  discard block
 block discarded – undo
183 183
    */
184 184
   public function findAndWhere($params, $tableName, $dbConn = Null)
185 185
   {
186
-      if (is_null($dbConn)) {
187
-          $dbConn = $this->dbConnection;
188
-      }
189
-      if (is_array($params) && !empty($params)) {
190
-          $sql = "SELECT * FROM ".$tableName;
191
-          foreach ($params as $key => $val) {
192
-              $sql .= " WHERE `$key` = '$val'";
193
-          }
194
-          $statement = $dbConn->prepare($sql);
195
-          $statement->execute();
196
-          $returnedRowNumbers = $statement->rowCount();
186
+	  if (is_null($dbConn)) {
187
+		  $dbConn = $this->dbConnection;
188
+	  }
189
+	  if (is_array($params) && !empty($params)) {
190
+		  $sql = "SELECT * FROM ".$tableName;
191
+		  foreach ($params as $key => $val) {
192
+			  $sql .= " WHERE `$key` = '$val'";
193
+		  }
194
+		  $statement = $dbConn->prepare($sql);
195
+		  $statement->execute();
196
+		  $returnedRowNumbers = $statement->rowCount();
197 197
           
198
-          return $returnedRowNumbers  ? true : false;
199
-      }
200
-      throw EmptyArrayException::checkEmptyArrayException("Array Expected: parameter passed to this function is not an array");
198
+		  return $returnedRowNumbers  ? true : false;
199
+	  }
200
+	  throw EmptyArrayException::checkEmptyArrayException("Array Expected: parameter passed to this function is not an array");
201 201
   }
202 202
   
203 203
   /**
@@ -207,22 +207,22 @@  discard block
 block discarded – undo
207 207
    * @return array
208 208
    */
209 209
  public function getColumnNames($table, $dbConn = Null) {
210
-     $tableFields = [];
210
+	 $tableFields = [];
211 211
      
212
-     if (is_null($dbConn)) {
213
-         $dbConn = $this->dbConnection;
214
-     }
215
-     $sql = "SHOW COLUMNS FROM ".$table;
212
+	 if (is_null($dbConn)) {
213
+		 $dbConn = $this->dbConnection;
214
+	 }
215
+	 $sql = "SHOW COLUMNS FROM ".$table;
216 216
      
217
-     $stmt = $dbConn->prepare($sql);
218
-     $stmt->bindValue(':table', $table, PDO::PARAM_STR);
219
-     $stmt->execute();
220
-     $results = $stmt->fetchAll(PDO::FETCH_ASSOC);
217
+	 $stmt = $dbConn->prepare($sql);
218
+	 $stmt->bindValue(':table', $table, PDO::PARAM_STR);
219
+	 $stmt->execute();
220
+	 $results = $stmt->fetchAll(PDO::FETCH_ASSOC);
221 221
      
222
-     foreach($results as $result) {
223
-         array_push($tableFields, $result['Field']);
224
-     }
225
-     return $tableFields;
222
+	 foreach($results as $result) {
223
+		 array_push($tableFields, $result['Field']);
224
+	 }
225
+	 return $tableFields;
226 226
  }
227 227
 
228 228
 }
Please login to merge, or discard this patch.
Spacing   +17 added lines, -17 removed lines patch added patch discarded remove patch
@@ -40,9 +40,9 @@  discard block
 block discarded – undo
40 40
     public function create($associative1DArray, $tableName, $dbConn = Null)
41 41
     {
42 42
     	$tableFields = $this->getColumnNames($this->model, $this->dbConnection);
43
-    	$unexpectedFields = self::checkIfMagicSetterContainsIsSameAsClassModel($tableFields,$associative1DArray);
43
+    	$unexpectedFields = self::checkIfMagicSetterContainsIsSameAsClassModel($tableFields, $associative1DArray);
44 44
     	if (count($unexpectedFields) > 0) {
45
-    	    throw TableFieldUndefinedException::reportUnknownTableField($unexpectedFields,"needs to be created as table field");
45
+    	    throw TableFieldUndefinedException::reportUnknownTableField($unexpectedFields, "needs to be created as table field");
46 46
     	}
47 47
       unset($associative1DArray[0]);
48 48
     	if (is_null($dbConn)) {
@@ -54,15 +54,15 @@  discard block
 block discarded – undo
54 54
     private function  insertRecord($dbConn, $tableName, $associative1DArray) 
55 55
     {
56 56
     	$insertQuery = 'INSERT INTO '.$tableName;
57
-    	$TableValues = implode(',',array_keys($associative1DArray));
57
+    	$TableValues = implode(',', array_keys($associative1DArray));
58 58
     	foreach ($associative1DArray as $field => $value) {
59 59
     	    $FormValues[] = "'".trim(addslashes($value))."'";
60 60
     	}
61 61
     	$splittedTableValues = implode(',', $FormValues);
62
-    	$insertQuery.= ' ('.$TableValues.')';
63
-    	$insertQuery.= ' VALUES ('.$splittedTableValues.')';
62
+    	$insertQuery .= ' ('.$TableValues.')';
63
+    	$insertQuery .= ' VALUES ('.$splittedTableValues.')';
64 64
     	$executeQuery = $dbConn->exec($insertQuery);
65
-    	return $executeQuery ? : false;
65
+    	return $executeQuery ?: false;
66 66
     	
67 67
 	}
68 68
 
@@ -79,12 +79,12 @@  discard block
 block discarded – undo
79 79
     	}
80 80
     	$updateSql = "UPDATE `$tableName` SET ";
81 81
     	unset($associative1DArray['id']);
82
-    	$unexpectedFields = self::checkIfMagicSetterContainsIsSameAsClassModel($this->getColumnNames($this->model, $this->dbConnection),$associative1DArray);
82
+    	$unexpectedFields = self::checkIfMagicSetterContainsIsSameAsClassModel($this->getColumnNames($this->model, $this->dbConnection), $associative1DArray);
83 83
   
84 84
     	if (count($unexpectedFields) > 0) {
85 85
     		throw TableFieldUndefinedException::reportUnknownTableField($unexpectedFields, "needs to be created as table field");
86 86
     	}
87
-    	foreach($associative1DArray as $field => $value) {
87
+    	foreach ($associative1DArray as $field => $value) {
88 88
     	    $sql .= "`$field` = '$value'".",";
89 89
     	}
90 90
     	
@@ -95,7 +95,7 @@  discard block
 block discarded – undo
95 95
     	}
96 96
     	$stmt = $dbConn->prepare($updateSql);
97 97
     	$boolResponse = $stmt->execute();
98
-    	return $boolResponse ?  : false;
98
+    	return $boolResponse ?: false;
99 99
     }
100 100
     
101 101
   /**
@@ -110,7 +110,7 @@  discard block
 block discarded – undo
110 110
    	if (is_null($dbConn)) {
111 111
    	    $dbConn = new DatabaseConnection();
112 112
    	}
113
-   	$sql = $id  ? 'SELECT * FROM '.$tableName.' WHERE id = '.$id : 'SELECT * FROM '.$tableName;
113
+   	$sql = $id ? 'SELECT * FROM '.$tableName.' WHERE id = '.$id : 'SELECT * FROM '.$tableName;
114 114
    	
115 115
    	try {
116 116
    	    $stmt = $dbConn->prepare($sql);
@@ -122,7 +122,7 @@  discard block
 block discarded – undo
122 122
    	}
123 123
    	$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
124 124
    	
125
-   	foreach($results as $result) {
125
+   	foreach ($results as $result) {
126 126
    	    array_push($tableData, $result);
127 127
    	}
128 128
    	return $tableData;
@@ -141,7 +141,7 @@  discard block
 block discarded – undo
141 141
       
142 142
       $sql = 'DELETE FROM '.$tableName.' WHERE id = '.$id;
143 143
       $boolResponse = $dbConn->exec($sql);
144
-      return $boolResponse ? : false;
144
+      return $boolResponse ?: false;
145 145
   }
146 146
   
147 147
   /**
@@ -154,7 +154,7 @@  discard block
 block discarded – undo
154 154
   {
155 155
       $unexpectedFields = [];
156 156
       foreach ($userSetterArray as $key => $val) {
157
-          if (!in_array($key,$tableColumn)) {
157
+          if (!in_array($key, $tableColumn)) {
158 158
               $unexpectedFields[] = $key;
159 159
           }
160 160
       }
@@ -168,9 +168,9 @@  discard block
 block discarded – undo
168 168
    */
169 169
   public function prepareUpdateQuery($sql)
170 170
   {
171
-      $splittedQuery = explode(",",$sql);
171
+      $splittedQuery = explode(",", $sql);
172 172
       array_pop($splittedQuery);
173
-      $mergeData = implode(",",$splittedQuery);
173
+      $mergeData = implode(",", $splittedQuery);
174 174
       return $mergeData;
175 175
   }
176 176
   
@@ -195,7 +195,7 @@  discard block
 block discarded – undo
195 195
           $statement->execute();
196 196
           $returnedRowNumbers = $statement->rowCount();
197 197
           
198
-          return $returnedRowNumbers  ? true : false;
198
+          return $returnedRowNumbers ? true : false;
199 199
       }
200 200
       throw EmptyArrayException::checkEmptyArrayException("Array Expected: parameter passed to this function is not an array");
201 201
   }
@@ -219,7 +219,7 @@  discard block
 block discarded – undo
219 219
      $stmt->execute();
220 220
      $results = $stmt->fetchAll(PDO::FETCH_ASSOC);
221 221
      
222
-     foreach($results as $result) {
222
+     foreach ($results as $result) {
223 223
          array_push($tableFields, $result['Field']);
224 224
      }
225 225
      return $tableFields;
Please login to merge, or discard this patch.
src/Exceptions/TableFieldUndefinedException.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -14,7 +14,7 @@
 block discarded – undo
14 14
 
15 15
 	public static function reportUnknownTableField($unExpectedFields, $message)
16 16
 	{
17
-		$fields = implode(", ",$unExpectedFields);
17
+		$fields = implode(", ", $unExpectedFields);
18 18
 
19 19
 		//var_dump($fields);
20 20
 
Please login to merge, or discard this patch.