php - How to use PDO prepare more than oncee in a class -
class dbconnection { function connect(){ try{ $this->db_conn = new pdo("mysql:host=$this->db_host;dbname=$this->db_name", $this->db_user, $this->db_pass); return $this->db_conn; } catch(pdoexception $e) { return $e->getmessage(); } } } class student{ public $link; public function __construct(){ $db_connection = new dbconnection(); $this->link = $db_connection->connect(); return $this->link; } public function checklogin($username,$password){ $query = $this->link->prepare("select * studentprofiles username = :uname , logpassword = (select md5(:upassword));"); $query->execute(array(':uname' => $username, ':upassword' => $password)); $count = $query->rowcount(); if($count === 1){ $this->setsession($username); } return $count; $query = null; } public static function display(){ $query = $this->link->prepare("select forename, surname studentprofiles username = :uname;"); //getting error here: fatal error: using $this when not in object context $query->execute(array(':uname' => self::getsession())); while($row = $query->fetch(pdo::fetch_assoc)) { printf (" <span id='welcomename'> welcome: %s %s\n </span>",$row[0],$row[1]); } $query = null; } }
error using $this again prepare select statement, how use again function in same class? thank you
appreciate help, stuck on problem
hi can check code , prefer asign in value conection example
$conn = new pdo('mysql:host=localhost;dbname=mydatabase', $username, $password); $conn->setattribute(pdo::attr_errmode, pdo::errmode_exception);
and in function make 1 how this
function connect(){ try{ $conn = new pdo('mysql:host=localhost;dbname=mydatabase', $username, $password); $conn->setattribute(pdo::attr_errmode, pdo::errmode_exception); return $conn; } catch(pdoexception $e) { return $e->getmessage(); } }
in complete example this:
$id = 5; try { $conn = new pdo('mysql:host=localhost;dbname=mydatabase', $username, $password); $conn->setattribute(pdo::attr_errmode, pdo::errmode_exception); $stmt = $conn->prepare('select * mytable id = :id'); $stmt->execute(array('id' => $id)); while($row = $stmt->fetch()) { print_r($row); } } catch(pdoexception $e) { echo 'error: ' . $e->getmessage(); }
please try , luck
Comments
Post a Comment