I've just started to practice coding in OOP and just wanted to ask if my code's pattern is correct. I need your comments or suggestions so I can improve it.
sample_class.php:
<?php
$host = 'localhost';
$db = 'sample_db';
$user = 'sample_user';
$pass = 'sample_password';
$conn = new PDO("mysql:host=$host;dbname=$db", $user, $pass);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$conn->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
Class MySearchClass {
public function __construct(PDO $conn) {
$this->pdo=$conn;
}
public function search_name($keyword){
$query = "SELECT * FROM table WHERE name = '$keyword'";
$result = $this->pdo->prepare($query);
$result ->execute();
return $result;
}
public function view_all(){
$query = "SELECT * FROM table";
$result = $this->pdo->prepare($query);
$result ->execute();
return $result;
}
}
search_form.php:
<?php
include('sample_class.php');
$search= new MySeachClass($database_connection);
if (isset($_POST['submit'])){
$keyword = $_POST['keyword'];
$go_search = $search->search_name($keyword);
$data = $go_search->fetchAll(PDO::FETCH_ASSOC);
foreach($data as $row){
echo $row['name'];
echo other rows....
}
}else{
$view = $search->view_all();
$data = $view->fetchAll(PDO::FETCH_ASSOC);
foreach($data as $row){
echo $row['name'];
echo other rows....
}
}
<form action="" method="POST">
<input type="text" name="keyword">
<input type="submit" name="search">
</form>