我用php做了一个系统,在那里我可以从数据库中的产品中更改价格的值。但是当我试图从被更改的产品接收数据时,我得到了一个错误 Unknown column 'F0445' in 'where clause'
我不知道为什么会这样?更改所选产品的代码工作得非常好,但是当我试图从我刚更改的产品中检索产品信息时,它会出错;
<?php
include "databaseconnectie4.php"
?>
<!DOCTYPE html>
<html>
<body>
<?php
$conn = getDatabaseConnection();
$query = "SELECT omschrijving,verkoopprijs,artikelnr FROM artikel";
?>
<h1>Prijs wijziging</h1>
<hr>
<p>Selecteer een artikel</p>
<form action="opdracht10.php" method="POST">
<select name="selectedOption" id="">
<?php foreach($conn->query($query) as $result): ?>
<option value="<?=$result['artikelnr'];?>"><?=$result['omschrijving'];?>, <?=$result['verkoopprijs'];?></option>
<?php endforeach; ?>
</select>
<p>Geef de nieuwe prijs:</p>
<input type="number" name="newValue"><br>
<br><input type="submit" name="submit" value="Voer wijziging door!">
</form>
</body>
</html>
<?php
if(isset($_POST["submit"])){
changePrice($conn);
}
function changePrice($conn) {
$price = $_POST['newValue'];
$optionChosen = $_POST['selectedOption'];
$data = [
'price' => $price,
'artikelnr' => $optionChosen,
];
$sql = "UPDATE artikel SET verkoopprijs=:price WHERE artikelnr=:artikelnr";
$stmt= $conn->prepare($sql);
$stmt->execute($data);
$selectChangedItem = "SELECT Artikelnr, omschrijving, verkoopprijs FROM artikel WHERE Artikelnr = $optionChosen";
$conn->query($selectChangedItem);
foreach($conn->query($selectChangedItem) as $result) {
echo $result['Artikelnr'];
}
}
表“artikel”的数据库设置如下所示:
- Artikelnr (This is the product number)
- Omschrijving (Description)
- Categorie (Category)
- Verkoopprijs (Price)
是什么原因造成的?
1条答案
按热度按时间fruv7luv1#
放
$optionChosen
在引号中: