I am learning PDO and i want to retrieve data from my database. If i use constans in my query like:
SELECT * FROM `megoszt` INNER JOIN felhasznalok
ON megoszt.f_id=felhasznalok.f_id
INNER JOIN megosztas
ON megoszt.m_id=megosztas.m_id WHERE nev LIKE 'exxor'
This works fine, but if i try with $var
i didnt get result. What's wrong with this?
Index.php
<?php
require_once 'database.php';
$db = new Database("localhost","root","","teszt");
$posztolo = $_SESSION['nev'];
$dataSet = $db->getFelhasznalo("SELECT * FROM `megoszt` INNER JOIN felhasznalok ON megoszt.f_id=felhasznalok.f_id INNER JOIN megosztas ON megoszt.m_id=megosztas.m_id where nev LIKE :posztolo");
if($dataSet) {
foreach($dataSet as $data) { ?>
<label>Megosztó</label> <?php echo ": ".$data->getFelhasznaloNev()."<br />[ ".$data->getMegosztasDatum()." ]"; ?><br />
<label>Üzenet:</label><br /><?php echo $data->getFelhasznaloUzenet(); ?><br />
<label>Megjelőlve:</label> <?php echo $data->getFelhasznaloTaguser(); ?><br />
<?php echo "#".$data->getFelhasznaloTag(); ?> <p>
<?php
}
} else {
echo "Nincsenek megosztásaid!";
}
?>
database.php
<?php
require("ki.php");
class Database {
private $con;
public function __construct($host,$username,$password,$database) {
$this->con = new PDO("mysql:host=".$host.";dbname=".$database,$username,$password);
}
public function getFelhasznalo($sql) {
$statement = $this->con->prepare($sql);
$statement->bindParam(":posztolo", $nev, PDO::PARAM_STR);
$statement->execute();
while($row = $statement->fetch()) {
$dataSet[] = new FelhasznaloAdat($row);
}
if(!empty($dataSet)) {
return $dataSet;
} else {
return null;
}
}
}
?>
ki.php
<?php
class FelhasznaloAdat {
private $nev, $uzenet, $tag, $tag_user, $datum;
public function __construct($dbRows) {
$this->nev = $dbRows['nev'];
$this->uzenet = $dbRows['uzenet'];
$this->tag = $dbRows['tag'];
$this->tag_user = $dbRows['tag_user'];
$this->datum = $dbRows['datum'];
}
public function getFelhasznaloNev() {
return $this->nev;
}
public function getFelhasznaloUzenet() {
return $this->uzenet;
}
public function getFelhasznaloTag() {
return $this->tag;
}
public function getFelhasznaloTagUser() {
return $this->tag_user;
}
public function getMegosztasDatum() {
return $this->datum;
}
}
?>