2016-02-09 127 views
0
<?php 
    $connection = mysqli_connect("localhost","root","","loginapp"); 
     if(!$connection){ 
      echo "Connection Failed."; 
     } 
    $query = "SELECT * FROM users"; 
    $result = mysqli_query($connection,$query); 
     if(!$result){ 
      die("Query dismissed".mysqli_error($connection)); 
     } 

    if(isset($_POST['submit'])){ 
     $username = $_POST['name']; 
     $password = $_POST['password']; 
     $id = $_POST['id']; 
    $query = "UPDATE users SET username = '$username' password = '$password' WHERE id = $id "; 

    $result = mysqli_query($connection, $query); 
    if(!$result){ 
      die("Query FAILED" . mysqli_error($connection)); 
     } 
    } 
?> 
<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Document</title> 
    </head> 
<body> 
    <form action = "Update.php" method = "post"> 
    <input type = "name" name = "name" placeholder = "Type your name"> 
    <input type = "password" name = "password" placeholder = "Type your password"><br> 
    <select name="id" id=""> 
     <?php 
     while($row = mysqli_fetch_assoc($result)){ 
      $id = $row["id"]; 
      echo "<option value='$id'>$id</option>"; 
     } 
     ?> 
    </select> 
    <input type = "submit" name = "submit" value = "Update"> 
    </form> 
</body> 
</html> 

输出结果:无法你的SQL语法有错误;检查对应于您MariaDB的服务器版本正确的语法手册

您的SQL语法错误;检查对应于您MariaDB的服务器版本正确的语法使用附近的手册“密码=‘FFFFFFFFFFFF’WHERE ID = 1”在行1

+3

查询用户名='$ username''后'缺少逗号。 – Qirel

+0

上面的这条评论是正确的。 – peixotorms

+2

[您的脚本存在SQL注入攻击的风险。](http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php)了解[prepared](http: //en.wikipedia.org/wiki/Prepared_statement)[MySQLi]的声明(http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)。 –

回答

4

它缺少一个逗号username = '$username'后。

查询应该是这样的:UPDATE users SET username = '$username', password = '$password' WHERE id = $id

相关问题