php - 仅在某些条件下将行插入 MYSQL 数据库

标签 php html mysql insert

在阅读之前,请注意我对 PHP 和 MYSQL 都很陌生。我已经在 MYSQL 数据库中创建了一个表。我现在想通过 PHP 将此表“吐出”到页面上。这部分我觉得还可以。将表数据输出到 HTML 表后,我想将 HTML 表单输出到我的页面上。所以,我现在有一个表格,后面跟着一个表格。该表单将包含一些文本框,提交后,这些文本框将发布用于将新行插入到上述预先存在的表中的数据。

以上所有代码当前都位于名为“display.php”的 PHP 文件中。

我的问题:

如果上述表单在插入新行并显示新表信息后回发到我的“display.php”文件,那么是什么阻止我的代码插入另一个充满 NULL 数据的新行?我确信我在解释这种情况方面做得不太好,所以我将发布一些代码。

HTML/PHP

<html>
<head> 
    <title>Html and PHP</title>
</head>

<body>

<!-- Form -->
<form action="insertdata.php" method="post">
Username: <input type="text" name="username" >
Hardware ID: <input type="text" name="hardwareid" >
<input type="submit" >
</form>

<?php

// Connect to MYSQL
$con = mysql_connect("localhost","blah","private");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

// Select database
mysql_select_db("dbname", $con);

// Insert posted data into table
$sql="INSERT INTO tablename(
Username,
HardwareID)

VALUES
('$_POST[username]','$_POST[hardwareid]')";

if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }
echo "1 record successfully added...";

mysql_close($con)
?>

</body>
</html>

再说一次,我是一个完全的初学者 - 我理解这一点。我想知道,上面代码的不同部分必须放在多个文件中吗?我不想去一个新地址,这就是为什么这给我带来了如此多的困惑。

最佳答案

尝试这样的事情,

连接.php 文件

    // Connect to MYSQL
$con = mysql_connect("localhost","blah","private");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

// Select database
mysql_select_db("dbname", $con);

显示.php 文件

    <html>
<head> 
    <title>Html and PHP</title>
</head>

<body>

<!-- Form -->
<form action="process.php" method="post">
Username: <input type="text" name="username" >
Hardware ID: <input type="text" name="hardwareid" >
<input type="submit" >
</form>

</body>
</html>

process.php 文件

    include_once("ur_file_dir/connection.php");

    if ((isset($_POST['username']) && isset($_POST['hardwareid'])) {

      $sql="INSERT INTO tablename(
         Username,
         HardwareID)

         VALUES
            ($_POST['username'],$_POST['hardwareid'])";
      if (!mysql_query($sql,$con))
      {
          die('Error: ' . mysql_error());
      }
      echo "1 record successfully added...";

      mysql_close($con)

}

关于php - 仅在某些条件下将行插入 MYSQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7143080/

相关文章:

php - MYSQL左连接A.table和b.table,同时保留a.table id

html - Chrome 中从本地主机到在线的 CSS 样式呈现不同

javascript - 如何获取html标签的属性?

html - 如何从第一个元素中删除伪元素样式?

mysql - 查询之间有什么区别吗,因为我看到输出有所不同

mysql - 找到一个点的 x 距离附近有多少(googlemap)多边形

javascript - 在提交表单之前使用 jquery 检查 $_POST 数据

php - 在 cakephp 3 中获取安全盐

php - Cakephp Web 服务问题 "add"

php - 在 wordpress 中使用 htaccess 更改查询字符串 url