我有一個選擇值「後」,當有人想從未解改變後的狀態,以解決他們必須選擇一個職位恩比點擊「更改爲解決」帖子沒有完全貼PHP
的問題是當我點擊按鈕時,它不會改變,因爲PHP不需要整個帖子的標題。所以當我的帖子被稱爲'Photoshop崩潰'時,它只發送'Photoshop'。這就是爲什麼它不在我的數據庫中更新,查詢無法找到正確的帖子,當帖子的標題只有1個字,我的表得到更新。
<?php
if (isset($_POST['btnSolved']))
{
// wanneer er op de knop geklikt is proberen we user te saven in de databank
if (!empty($_POST['btnSolved']))
{
$solved = $_POST['unsolved'];
$conn = new mysqli("localhost","root","root","PhpProject");
if ($conn -> connect_errno) {
throw new Exception("No connection with database!");
} else {
$sql = "UPDATE Posts SET status = 'Solved' WHERE post='".$solved."'";
}
}
$conn->query($sql);
}
?>
在我的身上:
<h3>Change status</h3>
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
<?php
if(mysqli_num_rows($showBugs) > 0)
{
echo "<select name= unsolved>";
while ($row = mysqli_fetch_assoc($showBugs))
{
echo "<option value=" . $row['subject'] . ">" . $row['subject'] . "</option>";
}
echo "</select>";
}
?>
<br />
<input class="btn btn-info dropdown-toggle" type="submit" name="btnSolved" value="Change to solved" />
</form>
這是我所得到的,當我做了$ sql中的打印
UPDATE Posts SET status = 'Solved' WHERE post='Photoshop'
有人不知道爲什麼PHP可以發佈1個字,但不是整個標題?這可能是愚蠢的,但我不知道如何解決這個問題。
您的瀏覽器具有「查看源」功能(通常通過按Ctrl + U來達到)。用它來找出你的''
這和打印一樣。 我該如何改變它?把id而不是主題? – Lupicora
@Lupicora - 你需要把你的價值放在單引號中。檢查我的答案。 – Rikesh