连接 PHP 源代码并提交表单到 MySQL 数据库

Posted

技术标签:

【中文标题】连接 PHP 源代码并提交表单到 MySQL 数据库【英文标题】:Connecting PHP source code and submit form to MySQL Database 【发布时间】:2014-08-06 07:24:03 【问题描述】:

我正在尝试学习 php,并且正在尝试将 mysql 数据库与我的 PHP 代码连接起来,以制作一个提交表单,让我可以将数据输入到数据库中。我的问题是源代码正在连接,但 html 没有将变量发布到 PHP 文件。我真的需要一些帮助。

这是我的 HTML 源代码

<html>

<head>
<title>Form Input Data</title>
</head>

<body>

<table border="1">
  <tr>
    <td align="center">Form Input Employees Data</td>
  </tr>
  <tr>
  <td>
  <table>
    <form action="input.php" method="POST">
    <tr>
      <td>Name</td>
      <td><input type="text" name="name" size="20">
      </td>
    </tr>
    <tr>
      <td>Address</td>
      <td><input type="text" name="address" size="40">
      </td>
    </tr>
    <tr>
      <td></td>
      <td align="right"><input type="submit" 
      name="submit" value="Sent"></td>
    </tr>
    </table>
  </td>
</tr>
</table>

这是我的 PHP 源代码

<?php

$user_name = "fees0_14446440";
$password = "********";
$database = "fees0_14446440_addressbook";
$server = "sql107.0fees.net";

mysql_connect("$server","$user_name","$password");

mysql_select_db("$database");


$order = "INSERT INTO Trial

        (name, address)

        VALUES

        ('$name',

        '$address')";


$result = mysql_query($order);

if($result)

    echo("<br>Input data is succeed");

 else

    echo("<br>Input data is fail");


?>

【问题讨论】:

对于任何带有 [php] 和 [mysql] 标签的问题,这应该是强制性的:***.com/questions/60174/… 警告您的代码容易受到 sql 注入攻击! 您没有使用任何 POST 变量。 【参考方案1】:

尝试以下方法:

<?php

$user_name = "fees0_14446440";
$password = "********";
$database = "fees0_14446440_addressbook";
$server = "sql107.0fees.net";

mysql_connect("$server","$user_name","$password");

mysql_select_db("$database");

if (isset($_POST['submit'])) 
$name = $_POST['name'];
$address = $_POST['address'];

$order = mysql_query("INSERT INTO Trial (name, address) VALUES ('$name', '$address')");

if ($order) 
    echo '<br>Input data is successful';
 else 
    echo '<br>Input data is not valid';


?>

【讨论】:

【参考方案2】:

将 POST 值放入变量中

$name=$_POST['name'];
$address=$_POST['address'];

sql查询前 并将sql查询编写为

$order = "插入试用版

    (name, address)

    VALUES

    ('".$name."',

    '".$address."')";

【讨论】:

【参考方案3】:

您可以在 PHP 的 $_POST 变量中找到 POST 数据。它应该包含通过 POST 方法传递的所有值。

$name = $_POST["name"];

【讨论】:

不客气。 vhu 在对原始问题的评论中发布的 SO 问题也绝对是一本好书。 @user3717206 仅供参考,您仍然需要清理您的数据!【参考方案4】:

试试这个

<html>

<head>
<title>Form Input Data</title>
</head>

<body>
<form action="input.php" method="POST">
<table border="1">
  <tr>
    <td align="center">Form Input Employees Data</td>
  </tr>
  <tr>
  <td>
  <table>

    <tr>
      <td>Name</td>
      <td><input type="text" name="name" size="20">
      </td>
    </tr>
    <tr>
      <td>Address</td>
      <td><input type="text" name="address" size="40">
      </td>
    </tr>
    <tr>
      <td></td>
      <td align="right"><input type="submit" 
      name="submit" value="Sent"></td>
    </tr>
    </table>
  </td>
</tr>
</table>
</form>

在 PHP 代码中

$order = "INSERT INTO Trial

        (name, address)

        VALUES

        ('$_POST["name"]',

        '$_POST["address"]')";

【讨论】:

以上是关于连接 PHP 源代码并提交表单到 MySQL 数据库的主要内容,如果未能解决你的问题,请参考以下文章

MySQL / PHP 数据库连接以从 Web 表单输入文本

将 PHP 表单提交到 XAMPP MySQL 数据库

如何在php网页中通过一个表单让使用者输入数据提交后把输入的数据传递到mysql数据库中?

使用 Ajax、PHP、MYSQL 更新表单

php 如何在页面刷新时不重复操作数据库?

php代码 potst 提交的问题?