php - 无法使用php更新mysql数据库

标签 php mysql

我正在尝试更新我的客户 mysql 表上的记录。但是我收到以下错误:

Notice: Undefined index: username in E:\EasyPHP-12.1\www\Register1.php on line 313

Notice: Undefined variable: db_password in E:\EasyPHP-12.1\www\Register1.php on line 315 error updating record

我看不出我的代码有什么问题。并且一直在看它几个小时,但没有运气。

<div class="footer">
  <img src="images/gardening5.jpg" alt="Image">
  <div>
    <h1>Tips of the Week</h1>
    <form method= "get">
      <form method="get">
      <p>Username:
        <input name="username" type="text">
        </p>
      </form>
      <p>
      <form method="get">
        <p>Password:
          <input name="password" type="password">
        </p>
        <p>First Name:
          <input name="first name" type="first name">
        </p>
        <p>Last Name:
           <input name="last name" type="last name">
        </p>
        <p>1st Line of Address:
          <input name="1st line of address" type="1st line of address">
        </p>
        <p>2nd Line of Address:
          <input name="2nd line of address" type"2nd line of address">
        </p>
        <p>Town:
           <input name="town" type"town">
        </p>
        <p>PostCode:
          <input name="postcode" type="postcode">
        </p>
        <p>Phone Number
          <input name="phone_number" type="phone_number">
        </p>
        <p>
          <input name="submit3" type="submit" value="update customer record">
        </p>
       </form>
     </form>
<?php
  $host="localhost"; // Host name
  $tbl_name="customer"; // Table name
  $db_user="root";
  $db_pass="";

  $connect = mysql_connect("$host", "$db_user", "$db_pass");
  $db_name="the_shop"; // Database name
  mysql_select_db("$db_name");

  if(isset($_GET['submit3'])){

    $db_username = $_GET['username'];

    $sql3 = "UPDATE `customer` SET `Password`='.$db_password.' WHERE `Username`='.$db_username.";
    $result3 = mysql_query($sql3);

    mysql_query($sql3) or die('error updating record');
    echo $sql3;
  }
?>

最佳答案

  1. HTML 中的 username 字段与提交按钮的形式不同,因此它不会与其他字段一起发送。

  2. 您没有$db_password 变量;你确实有一个$db_pass变量。这是你的意思吗?

  3. 对于修改数据的请求,您应该真正使用POST,而不是GET请求。

如评论中所述:

您应该使用 $db_password = $_GET['password'],并按照 peterm 和 Mehdi 的回答更正引号。

关于php - 无法使用php更新mysql数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16491487/

相关文章:

MYSQL COUNT 返回重复行

php - 如何构建一个查询,通过交易历史提取用户当前拥有的所有合约

php - 将php数组元素插入mysql数据库

php - Pusher 无法在 Laravel 5.8 中连接

php - 需要一个正则表达式来匹配重复的符号行(例如 : ------------- or *****************)

Mysql2::错误:不正确的字符串值:'\xE2\x80\xA8\x09

php - 统计连续访问次数

mysql - 自动计算表中的范围(mysql)

php - Laravel 5.1 Dynamic where/orWhere

php - 如何在 php 中检查当前 url