Php 更新不适用于mysqli

Php 更新不适用于mysqli,php,mysqli,Php,Mysqli,我正在尝试获取表中要更新的信息。我花了好几个小时,一直在兜圈子。我认为问题出在代码末尾的查询部分。任何帮助都将不胜感激。谢谢 <?php require "connect.php"; ?> <?php session_start(); if(isset($_SESSION["ID"])){ }else{ header('Location:login.php'); } ?> <?php

我正在尝试获取表中要更新的信息。我花了好几个小时,一直在兜圈子。我认为问题出在代码末尾的查询部分。任何帮助都将不胜感激。谢谢

 <?php require "connect.php"; ?>

    <?php
    session_start();
    if(isset($_SESSION["ID"])){
    }else{
        header('Location:login.php');
    }
    ?>

    <?php

        $User = $_SESSION["ID"];
        $result = $con->query("select * from BD where ID='$User'");
        $row = $result->fetch_array(MYSQLI_BOTH);

        $_SESSION["FirstName"] = $row['FirstName'];
        $_SESSION["LastName"] = $row['LastName'];
        $_SESSION["Email"] = $row['Email'];
        $_SESSION["UserName"] = $row['UserName'];
        $_SESSION["Password"] = $row['Password'];
    ?>

    <?php
        if(isset($_Post['Update'])){
            $UpdateFName = $_Post['FirstName'];
            $UpdateLName = $_Post['LastName'];
            $UpdateEmail = $_Post['Email'];
            $UpdateUName = $_Post['UserName'];
            $UpdatePassword = $_Post['Password'];


           $sql = $con->query("UPDATE BD SET FirstName = '{$UpdateFName}', LastName = '{$UpdateLName}', Email = '{$UpdateEmail}', UserName = '{$UpdateUName}', Password = '{$UpdatePassword}' where ID= $User");


         header('Location: update.php');

         }

    ?>


首先,你应该包括你的错误,其次,你不必在查询中使用大括号,在没有大括号的情况下试一下。首先,你应该包括你的错误,其次,你不必在查询中使用大括号,在没有大括号的情况下试一下。

你错误地使用了post方法。您应该使用类似$\u post['']的post方法,而不是$\u post[''


您错误地使用了post方法。您应该使用类似$\u post['']的post方法,而不是$\u post[''


$\u POST
非$\u POST您的代码(以及所有答案中的代码)易受SQL注入攻击。您应该尽快解决这个关键的安全问题。它的
$\u POST
不是$\u POST您的代码(以及所有答案中的代码)易受SQL注入攻击。你应该尽快解决这个关键的安全问题。哇。这就是问题所在。非常感谢你!你为我节省了更多的时间。我真的很感激。虽然这回答了这个问题,但是警告SQL注入不会有什么坏处。哇。这就是问题所在。非常感谢你!你为我节省了更多的时间。我真的很感激。虽然这回答了问题,但是警告SQL注入不会有什么坏处。你是对的。我很抱歉。我没有收到错误。问题是我的表没有更新。原来问题是我用了$\u Post而不是$\u Post。谢谢你关于卷发牙套的建议。很高兴看到我能帮上忙,也谢谢你,兄弟!你说得对。我很抱歉。我没有收到错误。问题是我的表没有更新。原来问题是我用了$\u Post而不是$\u Post。谢谢你关于卷发牙套的建议。很高兴看到我能帮上忙,也谢谢你,兄弟!这个代码比我提交的更好吗?我从这种形式中学到了很多东西。谢谢这个代码比我提交的更好吗?我从这种形式中学到了很多东西。谢谢
if(isset($_POST['Update'])){
    $UpdateFName    = $_POST['FirstName'];
    $UpdateLName    = $_POST['LastName'];
    $UpdateEmail    = $_POST['Email'];
    $UpdateUName    = $_POST['UserName'];
    $UpdatePassword = $_POST['Password'];

    $sql = $con->query("
                 UPDATE BD SET 
                    FirstName = '$UpdateFName', 
                    LastName = '$UpdateLName', 
                    Email = '$UpdateEmail', 
                    UserName = '$UpdateUName', 
                    Password = '$UpdatePassword' 
                WHERE 
                    ID= '$User'"
                );
   header('Location: update.php');

}
<?php
    if (isset($_POST['Update'])) {
        $UpdateFName    = isset($_POST['FirstName']) ? $_POST['FirstName'] : '';
        $UpdateLName    = isset($_POST['LastName'])  ? $_POST['LastName']  : '';
        $UpdateEmail    = isset($_POST['Email'])     ? $_POST['Email']     : '';
        $UpdateUName    = isset($_POST['UserName'])  ? $_POST['UserName']  : '';
        $UpdatePassword = isset($_POST['Password'])  ? $_POST['Password']  : '';

        $sql = $con->query("UPDATE BD   SET 
                               `FirstName` = '$UpdateFName',
                               `LastName`  = '$UpdateLName', 
                               `Email`     = '$UpdateEmail', 
                               `UserName`  = '$UpdateUName', 
                               `Password`  = '$UpdatePassword'
                            WHERE 
                                `ID`      =  $User"
                );
        header('Location: update.php');
    }