2017-05-13 65 views
-1

在數據庫中login替換爲xyz其中username=$usrPHP SQL更新失敗

這就是我想創造的(至少我希望你明白我的意思)。

我的代碼,現在的問題是:

<?php 
session_start(); 
$servernaam = "server"; 
$susr = "user"; 
$spswd = "password"; 
$sdbnaam = "database name"; 
$usr = $_SESSION['usr']; 
$qa = "1"; 
$conn = mysqli_connect($servernaam, $susr, $spswd, $sdbnaam); 
$sql = "UPDATE login SET qa='$qa' WHERE username=$usr"; 
header("Location: Page_1.php"); 
?> 

問題

在數據庫中,未發生任何變化。我想要更改的單元格保持原先的值。

在此先感謝!

+3

so..what's wrong?你有問題嗎? –

+1

您的代碼易受SQL注入攻擊。請學習使用[預先準備的語句](https://www.youtube.com/watch?v=nLinqtCfhKY)。 –

+0

@vkp對不起,我完全忘了提起它.. 在數據庫中沒有任何變化。我希望改變它的單元格的前面的聲明... – Niels

回答

1

在問了一個有很多php和sql知識的人之後,我就得到了這個awnser!
此:

$sql = "UPDATE login SET qa='$qa' WHERE username=$usr"; 

應該已經
此:

$sql = "UPDATE `login` SET `qa`='$qa' WHERE `username`='$usr'"; 

而且我沒加
此:

$result = $conn->query($sql); 

至極實際運行的SQL腳本。