语法错误,意外T_ENCAPSED_AND_WHITESPACE,期待T_STRING或T_VARIABLE或T_NUM_STRING

时间:2016-11-05 06:16:40

标签: php html sql database

我不知道我的代码有什么问题。它在$ sqlUPDATEUsername之前的第11行说。我正在做更改用户名和密码的事情。

$errorEmessage = '&nbsp';
        $NEWusername = $_POST['Nusername'];
        $CONusername = $_POST['Conusername'];
        $NEWpassword = $_POST['Npassword'];
        $CONpassword = $_POST['Conpassword'];

        $sqlUPDATEUsername = "UPDATE user_accounts SET USERNAME = '$NEWusername' WHERE EMPOYEE_ID = $_SESSION['ID']";
        $sqlCheckUsername = "SELECT * FROM user_accounts WHERE userID('EMPOYEE_ID') = $_SESSION['ID']";
        $RunSqlCU = mysql_query($sqlCheckUsername);
        $row =  mysql_fetch_array($RunSqlCU);

1 个答案:

答案 0 :(得分:-1)

您需要清理用户输入。  无论何时在外部代码中嵌入字符串,都必须根据该语言的规则对其进行转义。例如,如果在某些SQL目标MySql中嵌入一个字符串,则必须为此目的使用MySql函数转义该字符串(mysql_real_escape_string)

使用

$NEWusername = mysql_real_escape_string($_POST['Nusername']);

另一个例子是HTML:如果在HTML标记中嵌入字符串,则必须使用htmlspecialchars对其进行转义。这意味着每个echo或print语句都应使用htmlspecialchars