mysql
コンソールにはこれがあります
mysql> SELECT `name`, `lastname` FROM `tblStudents` WHERE `idStudent`='2';
+--------------+-----------------+
| name | lastname |
+--------------+-----------------+
| Lucio | Martínez |
+--------------+-----------------+
1 row in set (0.00 sec)
そこで、PHP の準備済みステートメントを使用して、この学生の名前と姓を取得したいと考えています。
これはコードです:
$mysqli = $this->ConnectLowPrivileges();
echo 'Connected<br>';
$stmt = $mysqli->prepare("SELECT `name`, `lastname` FROM `tblStudents` WHERE `idStudent`=?");
if (false==$stmt){
die('prepare() failed: ' . htmlspecialchars($mysqli->error));
}
$id = 2;
if ($rc = $stmt->execute(array($id))){
if ($row = $stmt->fetch()){
echo "Name: {$row[0]}.<br>Last name: {$row[1]}.<br>";
echo 'Another way:'.print_r($row);
}
}
if (false==$rc){
die('execute() failed: ' . htmlspecialchars($stmt->error));
}
echo 'done';
mysqli_close($mysqli);
return true;
2 番目の条件は false を返し、得られる出力は次のとおりです。
Connected
execute() failed:
PHP は問題なくデータベースに接続できます。
$stmt->error
何も返さないため、正確なエラーを知ることはできません。