[英]php prepared statement save result to array
我想將准備好的php語句的結果保存到數組中,然后將其寫出(回顯)
<?php
require_once "DBinit.php";
$vpisna=$_POST['vpisna'];
$dbh = DBInit::getInstance();
$stmt = $dbh->prepare("SELECT * FROM studenti");
$stmt->bindValue(':id_student', $id_student);
$stmt->bindValue(':ime', $ime);
$stmt->bindValue(':priimek', $priimek);
$stmt->bindValue(':naslov', $naslov);
$stmt->bindValue(':email', $email);
$stmt->bindValue(':vpisna', $vpisna);
$stmt->bindValue(':geslo', $geslo);
$stmt->bindValue(':status', $status);
$stmt->execute();
$result = $stmt->fetch(PDO::FETCH_ASSOC);
//$result = mysqli_query($con,"SELECT * FROM studenti");
echo "<table border='1' width='100%'>
<tr>
<th> Št.</th>
<th>Ime</th>
<th>Priimek</th>
<th>Naslov</th>
<th>Email</th>
<th>Vpisna številka</th>
<th>Geslo</th>
<th>Status</th>
</tr>";
while($row = mysqli_fetch_array($result)) {
echo "<tr>";
echo "<td>" . $row['id_student'] . "</td>";
echo "<td>" . $row['ime'] . "</td>";
echo "<td>" . $row['priimek'] . "</td>";
echo "<td>" . $row['naslov'] . "</td>";
echo "<td>" . $row['email'] . "</td>";
echo "<td>" . $row['vpisna'] . "</td>";
echo "<td>" . $row['geslo'] . "</td>";
echo "<td>" . $row['status'] . "</td>";
echo "</tr>";
}
echo "</table>";
?>
感謝您的幫助。
這應該寫出(到瀏覽器中)學生名單及其信息。
我無法弄清楚如何將stmt結果保存到數組中以使用$ row從中讀取。
首先,您必須使用INSERT語句插入新行...
$row = [
'ime' => 'Bob',
'email' => 'bob@example.com'
];
$sql = "INSERT INTO studenti SET ime=:ime, email=:email";
$dbh->prepare($sql)->execute($row);
...然后您可以選擇並輸出所有行:
$stmt = $dbh->query('SELECT * FROM studenti');
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo "<tr>";
echo "<td>" . htmlspecialchars($row['email'], ENT_QUOTES, 'UTF-8') . "</td>";
// ...
echo "</tr>";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.