2017-02-14 4 views
-2

Я создал класс здесь для получения данных, и он работает нормально, но я не знаю, это правильный код? Кто-нибудь может просто проверить код для меня?PHP PDO выбрать данные, используя класс

<?php 
class SingleData { 
    public $tbName; 
    public $id; 
    public $col; 
    public function viewData($tbName,$id,$col){ 
     $start = new PDO('mysql:host=localhost;dbname=user;charset=utf8mb4',"root","pass"); 
     $con = $start->prepare("SELECT $col FROM $tbName WHERE id=?"); 
     $con->bindValue(1, $id, PDO::PARAM_INT); 
     $con->execute(); 
     $result=$con->fetchColumn(); 
     return $result; 
    } 
} 
?> 

и это, как я называю данные

$data=new SingleData; 
echo $data->viewData('user',1,'FName'). " "; 
echo $data->viewData('user',1,'LName'). </br>; 
echo $data->viewData('user',1,'Job'). </br>; 

и результат будет:

John Smith 
Sales Manager 
+0

просто измените это значение $ data = new SingleData(); –

+0

остальное в порядке? –

+0

Да, я думаю, что отдых в порядке, попробуйте и дайте мне знать, если есть какая-либо проблема. –

ответ

-1

Лично я хотел бы сделать что-то вдоль линий этого:

class SingleData { 
    private $_db; 
    public $tbName, $id, $col; 

    public function __construct(){ 
     try{ 
      $this->_db = new PDO("mysql:host=localhost;dbname=user;charset=utf8mb4", "root", "pass"); 
     } catch(e){ 
      die($e->getMessage()); 
     } 
    } 

    public function viewData($tbName, $id, $col){ 
     $con = $this->_db->prepare("SELECT $col FROM $tbName WHERE id=?"); 
     $con->bindValue(1, $id, PDO::PARAM_INT); 
     $con->execute(); 

     $result=$con->fetchColumn(); 
     return $result; 
    } 
} 
+0

thx для коррекции –

 Смежные вопросы

  • Нет связанных вопросов^_^