mySQLからデータを返すAPIを構築しようとしています。 PDOを初めて使用しています。オブジェクトに一致させようとすると、PDO列のマッピングが機能しない
私が以下のことを行うと、IDだけがマップされ、それ以外は何も得られません。私はこれを初めて使ったので、どこを見るか分からない。また、私はこれをローカルで実行することができませんでしたので、Liveサイトに対して実行されているため、デバッグする方法を考えることはできません。
クエリの結果は、私はそれらの値のための鍵は、内のキーを変更するには、SQLクエリのように$row['tblcemetery.fldcemetery']
使用する必要があります考えて、この
{ ID: "18", Name: null, Country: null }
class cemetery{
// database connection and table name
private $conn;
// object properties
public $id;
public $fldcemetery;
public $fldcountry;
public function __construct($db){
$this->conn = $db;
}
public function readOne(){
// query to read single record
$query = "select tblcemetery.id, tblcemetery.tblcountry_ID, tblcemetery.fldcemetery, tblcountry.fldcountry from tblcemetery
left join tblcountry on
tblcemetery.tblcountry_ID = tblcountry.ID
WHERE
id = ?
ORDER BY
fldcemetery
LIMIT 0,1";
// prepare query statement
$stmt = $this->conn->prepare($query);
// bind id of product to be updated
$stmt->bindParam(1, $this->id);
// execute query
$stmt->execute();
// get retrieved row
$row = $stmt->fetch(PDO::FETCH_ASSOC);
// set values to object properties
$this->fldcemetery = $row['fldcemetery'];
$this->fldcountry = $row['fldcountry'];
}
}
// get database connection
$database = new Database();
$db = $database->getConnection();
// prepare cemetery object
$cemetery = new cemetery($db);
// set ID property of record to read
$cemetery->id = isset($_GET['id']) ? $_GET['id'] : die();
// read the details of cemetery to be edited
$cemetery->readOne();
// create array
$cemetery_arr = array(
"ID" => $cemetery->id,
"Name" => $cemetery->fldcemetery,
"Country" => $cemetery->fldcountry
);
// make it json format
print_r(json_encode($cemetery_arr));
されている必要があり、あなたが戻って行を取得できますか?同じデータを '返し –
はい、{ ID: "18"、 名:ヌル、 国:ヌル }' –
ただ明確化のために、私は、MySQL Workbenchを、phpMyAdminのなど –