При разработке сайта мне потребовалось получить из таблице content число строк где user_id = $ _SESSION[‘user_id’]. Я знаю как выглядит запрос при использовании mysqli_query
$ db_con = @new mysqli( 'localhost', 'root', '', 'ImgBox_db' ); $ user_id = $ _SESSION['user_id']; $ user_content_id = "SELECT COUNT(user_id) FROM content WHERE user_id = '$ user_id'"; $ count = mysqli_query( $ db_con, $ user_content_id );
но я не понимаю как сделать такое же на PDO. нагуглил вот что
$ count=$ dbh->query("SELECT COUNT(user_id) FROM content WHERE user_id = '$ user_id'")->fetchColumn();
но как я понял что в переменную $ dbh прописано подключение к бд. у меня оно осуществляется вот так.
public function connectdb($ db_name, $ db_user, $ db_pass, $ db_host = "localhost") { try { $ this->db = new \pdo("mysql:host=$ db_host;dbname=$ db_name", $ db_user, $ db_pass); } catch (\pdoexception $ e) { echo "database error: " . $ e->getmessage(); die(); } $ this->db->query('set names utf8'); return $ this; }
и я не понимаю что писать в место $ dbh. если что то не так я понял прошу исправить меня.
P.s : код не мой. взят с этого сайта Клик