PHP/MYSQL:更新数据不起作用请看一下[重复]

Posted

技术标签:

【中文标题】PHP/MYSQL:更新数据不起作用请看一下[重复]【英文标题】:PHP/MYSQL: updating data isn't working please have a look [duplicate] 【发布时间】:2017-04-21 20:12:45 【问题描述】:

好的,所以我想创建一个更新表单,基本上更新我的表中的记录,但我无法做到这一点。我收到类似:Undefined index Id and all.. 这是我的代码.. 我犯了什么错误

<?php

  // PHP code to update data from mysql database table

  if (isset($_POST['update'])) 

    $hostname = "localhost";
    $username = "root";
    $password = "";
    $databaseName = "winc sports";

    $connect = mysqli_connect($hostname, $username, $password, $databaseName);

    // get values form input text and number

    $id = $_POST['Id'];
    $fname = $_POST['Fname'];
    $lname = $_POST['Lname'];
    $age = $_POST['Age'];
    $country=$_POST['Nationality'];
    $phone=$_POST['PhoneNumber'];
    $email=$_POST['Email'];

    // mysql query to Update data
    $query = "UPDATE `students` SET `Fname`='" . $fname . "',`Lname`='" . $lname . "',`Nationality`='" . $country . "',`PhoneNumber`=" . $phone . ",`Email`='".$email."',`Age`= " . $age . " WHERE `Id` = '" . $id . "'";

    $result = mysqli_query($connect, $query);

    if($result) 
       echo 'Data Updated';
     else 
       echo 'Data Not Updated';
    
    mysqli_close($connect);
  
?>

<!DOCTYPE html>
<html>
  <head>
    <title>PHP INSERT DATA USING PDO</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
  </head>
  <body>
    <form action="updating.php" method="post">
      <input type="text" name="id"  placeholder="Enter new ID"><br><br>
      <input type="text" name="fname"  placeholder="Enter new First Name"><br><br>
      <input type="text" name="lname"  placeholder="Enter new Last Name"><br><br>
      <input type="number" name="age"  placeholder="Enter new age" min="13" max="90"><br><br>
      <input type="text" name="country"  placeholder="Enter new Nationality"><br><br>
      <input type="number" name="phone"  placeholder="Enter new Phone Number"><br><br>
      <input type="text" name="email"  placeholder="Enter new Email"><br><br>
      <input type="submit" name="update" value="update">
    </form>    
  </body>
</html>

【问题讨论】:

区分大小写的输入名称 【参考方案1】:

错误可能是说您的 POST 数据中没有名为“Id”的索引。

尝试 var_dump($_POST) 看看它实际包含什么。

【讨论】:

【参考方案2】:

您的表单正在发布id,而您的代码正在寻找Id;案件很重要。

【讨论】:

以上是关于PHP/MYSQL:更新数据不起作用请看一下[重复]的主要内容,如果未能解决你的问题,请参考以下文章

逗号分隔值在 PHP MYSQL 中不起作用 [重复]

PHP MySql PDO 多次插入不起作用

PHP / MySQL / AJAX - 更新多个数据

SQL更新否则插入不起作用[重复]

PHP、MySQL 验证故障和搜索不起作用?

Solr 重复数据删除不起作用