如何使用 sql 数据库 table link 一个 html 表单?
How do I link a html form with a sql databse table?
我有XAMPP运行。我有一个接受用户输入的 HTML 表单页面(此文件在 htdocs 中以 .php 扩展名保存)。单击提交后,我希望将表单中的所有数据保存在我在 mySQL 中创建的 table 中(我正在使用 phpmyadmin)。我该怎么做呢?
直接回答,没有 api 与 phpmyadmin 一样可以使用。
那么你是怎么做到的,
首先你需要制作一个表格,对应数据库中的所有数据字段,post对应PHP文件。完成后,您将拥有一个前端表单,您可以使用它来接收来自用户的数据。现在是您实际将数据输入数据库的部分。
使用 $_POST 变量遍历 PHP 脚本中的表单数据,并使用 PHP 中的 PDO 驱动程序连接到 MYSQL 数据库。现在您可以从 PHP 编写 mysql 查询。基于来自 $_POST 的数据,创建一个您可以使用的插入查询,并用数据填充它并执行查询。现在 PHP 脚本将连接到数据库并从表单中插入数据。然后数据也会在 Phpmyadmin 中可见。
备注
虽然我很确定 Phpmyadmin 有一个 api 用于插入数据,但不推荐这样做,因为这会将您的整个数据库打开到 public。 Phpmyadmin 非常强大,也可以用来删除整个数据库
创建一个新页面process.php
将 html 表单动作属性设为 process.php
<form action="process.php" method="post">
在process.php
$field1 = $_POST['field1'];
$field2 = $_POST['field2'];
对所有表单域重复此操作,然后使用 sql 将数据保存到 table
mysqli_connect('host','username','password','databasename');
$sql = sprintf("INSERT INTO table_name VALUES ('%s','%s',...)",$field1,$field2,...);
%s 和变量编号和位置都匹配。
mysqli_query($sql);
应该可以...
if(isset($_POST['formSubmit'])){
$cardNO= $_POST['cardNO'];
$employeeNO= $_POST['employeeNO'];
$employeename= $_POST['employeename'];
$nationality= $_POST['nationality'];
$profession= $_POST['profession'];
$DOB= $_POST['DOB'];
$DOJ= $_POST['DOJ'];
$DOA= $_POST['DOA'];
$companycode = $_POST['companycode'];
$sponsorcode= $_POST['sponsorcode'];
$visatype= $_POST['visatype'];
$status= $_POST['status'];
mysqli_connect('host','username','password','databasename');
$sql = sprintf("INSERT INTO table_name(col1,col2,col3,...) VALUES ('','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')",$cardNO,$employeeNO,$employeename,$nationality,$profession,$DOB,$DOJ,$DOA,$companycode,$sponsorcode,$visatype,$status);
mysqli_query($sql);
}
process.php
代码
抱歉延迟重播
<html>
<body>
<form name="EmployeeDatabase" action="Employee.php" method="post">
<link rel="stylesheet" href="css.css">
<h1>EMPLOYEE DATABASE</h1>
Employe Card NO: <input type="text" name="cardNO" ><br><br>
Employee NO: <input type="text" name="employeeNO" ><br><br>
Employee Name: <input type="text" name="employeename"><br><br>
Nationality: <input type="text" name="nationality"><br><br>
Profession: <input type="text" name="profession"><br><br>
DOB: <input type="text" name="DOB"><br><br>
DOJ: <input type="text" name="DOJ"><br><br>
DOA(VisitVisa): <input type="text" name="DOA"><br><br>
Company Code: <input type="text" name="companycode"><br><br>
Sponsor Code: <input type="text" name="sponsorcode"><br><br>
Visa Type: <input type="text" name="visatype"><br><br>
Status: <input type="text" name="status"><br><br>
<input type="submit" name="formSubmit" value="Submit">
<?php
?>
</form>
</body>
</html>
我有XAMPP运行。我有一个接受用户输入的 HTML 表单页面(此文件在 htdocs 中以 .php 扩展名保存)。单击提交后,我希望将表单中的所有数据保存在我在 mySQL 中创建的 table 中(我正在使用 phpmyadmin)。我该怎么做呢?
直接回答,没有 api 与 phpmyadmin 一样可以使用。 那么你是怎么做到的,
首先你需要制作一个表格,对应数据库中的所有数据字段,post对应PHP文件。完成后,您将拥有一个前端表单,您可以使用它来接收来自用户的数据。现在是您实际将数据输入数据库的部分。
使用 $_POST 变量遍历 PHP 脚本中的表单数据,并使用 PHP 中的 PDO 驱动程序连接到 MYSQL 数据库。现在您可以从 PHP 编写 mysql 查询。基于来自 $_POST 的数据,创建一个您可以使用的插入查询,并用数据填充它并执行查询。现在 PHP 脚本将连接到数据库并从表单中插入数据。然后数据也会在 Phpmyadmin 中可见。
备注
虽然我很确定 Phpmyadmin 有一个 api 用于插入数据,但不推荐这样做,因为这会将您的整个数据库打开到 public。 Phpmyadmin 非常强大,也可以用来删除整个数据库
创建一个新页面process.php 将 html 表单动作属性设为 process.php
<form action="process.php" method="post">
在process.php
$field1 = $_POST['field1'];
$field2 = $_POST['field2'];
对所有表单域重复此操作,然后使用 sql 将数据保存到 table
mysqli_connect('host','username','password','databasename');
$sql = sprintf("INSERT INTO table_name VALUES ('%s','%s',...)",$field1,$field2,...);
%s 和变量编号和位置都匹配。
mysqli_query($sql);
应该可以...
if(isset($_POST['formSubmit'])){
$cardNO= $_POST['cardNO'];
$employeeNO= $_POST['employeeNO'];
$employeename= $_POST['employeename'];
$nationality= $_POST['nationality'];
$profession= $_POST['profession'];
$DOB= $_POST['DOB'];
$DOJ= $_POST['DOJ'];
$DOA= $_POST['DOA'];
$companycode = $_POST['companycode'];
$sponsorcode= $_POST['sponsorcode'];
$visatype= $_POST['visatype'];
$status= $_POST['status'];
mysqli_connect('host','username','password','databasename');
$sql = sprintf("INSERT INTO table_name(col1,col2,col3,...) VALUES ('','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')",$cardNO,$employeeNO,$employeename,$nationality,$profession,$DOB,$DOJ,$DOA,$companycode,$sponsorcode,$visatype,$status);
mysqli_query($sql);
}
process.php
代码抱歉延迟重播
<html>
<body>
<form name="EmployeeDatabase" action="Employee.php" method="post">
<link rel="stylesheet" href="css.css">
<h1>EMPLOYEE DATABASE</h1>
Employe Card NO: <input type="text" name="cardNO" ><br><br>
Employee NO: <input type="text" name="employeeNO" ><br><br>
Employee Name: <input type="text" name="employeename"><br><br>
Nationality: <input type="text" name="nationality"><br><br>
Profession: <input type="text" name="profession"><br><br>
DOB: <input type="text" name="DOB"><br><br>
DOJ: <input type="text" name="DOJ"><br><br>
DOA(VisitVisa): <input type="text" name="DOA"><br><br>
Company Code: <input type="text" name="companycode"><br><br>
Sponsor Code: <input type="text" name="sponsorcode"><br><br>
Visa Type: <input type="text" name="visatype"><br><br>
Status: <input type="text" name="status"><br><br>
<input type="submit" name="formSubmit" value="Submit">
<?php
?>
</form>
</body>
</html>