我无法将我的html表单链接到mysql表


I am unable to link my html forms to mysql table?

我创建了一个名为"employee.php"的表单页面,用于接收用户数据。此外,我还有另一个名为SQLConnectionProcess.php的文件,其中包含将employee.php中的表单链接到sql表的代码。数据库名称为"employee information",表名称为"employee info"。我使用phpmyadmin和XAMPP进行本地服务器测试。

employee.php代码:

<html>
<body>
<form name="EmployeeDatabase" action="SQLConnectionProcess.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">
</form>
</body>
</html>

SQLConnectionProcess.php代码:

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('localhost','root','password','employee information');
  $sql = sprintf("INSERT INTO table_employee info(Employee Card NO,Employee NO,Employee Name,Nationality,Profession,DOB,DOJ,DOA(VisitVisa),Company Code,Sponsor Code,Visa Type,Status) 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);

但是,当我从employee.php提交表单时,我会被重定向到一个新页面,该页面显示了SQLConnectionProcess.php中的所有代码。我无法找出编码错误。请帮我……

使用以下代码。

SQLConnectionProcess.php

<?php
if(isset($_POST['formSubmit'])){
  $cardNO= isset($_POST['cardNO']) ? $_POST['cardNO'] : 0;
  $employeeNO= isset($_POST['employeeNO']) ? $_POST['employeeNO'] : 0;
  $employeename= isset($_POST['employeename']) ? $_POST['employeename'] : "";
  $nationality= isset($_POST['nationality']) ? $_POST['nationality'] : "";
  $profession= isset($_POST['profession']) ? $_POST['profession'] : "";
  $DOB= isset($_POST['DOB']) ? $_POST['DOB'] : "";
  $DOJ= isset($_POST['DOJ']) ? $_POST['DOJ'] : "";
  $DOA= isset($_POST['DOA']) ? $_POST['DOA'] : "";
  $companycode = isset($_POST['companycode']) ? $_POST['companycode'] : 0;
  $sponsorcode= isset($_POST['sponsorcode']) ? $_POST['sponsorcode'] : 0;
  $visatype= isset($_POST['visatype']) ? $_POST['visatype'] : "";
  $status= isset($_POST['status']) ? $_POST['status'] : "";
  $con = mysqli_connect('localhost','root','','employee information');
  $sql = sprintf("INSERT INTO table_employee info(Employee Card NO,Employee NO,Employee Name,Nationality,Profession,DOB,DOJ,DOA(VisitVisa),Company Code,Sponsor Code,Visa Type,Status) 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($con,$sql);
}
?>
<?php 
if(isset($_POST['formSubmit'])){
echo '<pre>'.print_r($_POST,1).'</pre>';
}
?>

在提交后检查帖子是否工作良好

您的服务器没有解析PHP文件,而是提供文件"raw"。这就是你需要解决的问题。如果你在寻找这个问题,你可以在这里找到解决方案的建议:

XAMPP未解析PHP

顺便说一句,这可能很明显,但你有打开和关闭<?php标签吗?或者你发布的文本是整个文件

编辑:你需要像这样通过连接:

$connection = mysqli_connect('localhost','root','','employee information');
$sql = "...";
mysqli_query($connection, $sql);