PDO ステートメントから返される値で問題が発生しています。
これは私のコードです:
//Execute test
$this->checkConnect();
$stmt = $this->dbh->prepare("SELECT p_id FROM People WHERE lastName = :param1 AND firstName = :param2");
$stmt->bindParam(':param1', $this->lName);
$stmt->bindParam(':param2', $this->fName);
$stmt->execute();
$count = $stmt->rowCount();
//Determine value of test
if($count == FALSE)
{
return FALSE;
}
else
{
$dummyvar = $stmt->fetch();
$this->p_id = implode($dummyvar);
}
データベース レコードを調べていたときに、特定の値が入力した値からずれていることに気付きました。p_id
クエリを実行すると、 from the tableの値を取得することになっていますPeople
。十分に単純です。ただし、何が起こるかというと、数値がそれ自体に 2 回追加されます。たとえば、p_id
1this->p_id
に等しいとします。11 に等しくなります。またはp_id
、2 に等しい場合、出力は 22 になります。MySQL 内でこのクエリを実行しましたが、値は正しいです。私のphpコードで何が起こっているのかわかりません。もしかして内破とか関係あるの?わからない。
どんな洞察も高く評価されます。
追加: が一意であることも述べておく必要p_id
があるため、返される値は 1 つだけです。