MySQLi Insert无法插入数据

时间:2017-03-13 20:03:01

标签: php database mysqli

我对PHP几乎一无所知,大部分代码都是我的导师教我的。我正在使用正在运行的vertrigo服务器,但是当我提交数据时它说“未插入”时,我迷路了,我应该在代码中更改什么?或者我错误地设置了数据库?请帮忙。

<html>
<head>

<title></title>
</head>

<body>

<form name="employees" action="" method="POST">
<table border="1" align="center">
<tr>
<td> Employee ID </td>
<td> <input type="text" name="id">
</td>
</tr>
<tr>
<td> Status </td>
<td> Senior Manager <input type="radio" name="stat" value="Senior Manager">Manager<input type="radio" name="stat" value="Manager"> Senior Executive<input type="radio" name="stat" value="Senior Executive" >
</td>
</tr>
<tr>
<td> Salary </td>
<td> <select name="salary"> <option value="below 20,000">below 20,000</option> <option value="20,000-40,000">20,000-40,000</option> <option value="above 40,000">above 40,000</option> </select>
</td>
</tr>
<tr>
<td> Gender </td>
<td> Male <input type="radio" name="gender" value="Male"> Female <input type="radio" name="gender" value="Female">
</td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="submit" value="Enter Record">
</td>
</tr>
</table>
</form>
</body>
</html>

<?php
$con = mysqli_connect("localhost", "root", "vertrigo", "employeedb");

if (isset($_POST['submit']))
    {
    $id = $_POST['id'];
    $stat = $_POST['stat'];
    $salary = $_POST['salary'];
    $gender = $_POST['gender'];
    $sql = "INSERT INTO employeetb(EmployeeID,Status,Salary,Gender)VALUES('$id','$stat','$salary','$gender')";
    $query = mysqli_query($con, $sql);
    if (!$query)
        {
        echo 'not inserted';
        }
      else
        {
        echo 'inserted';
        }
    }

?>

2 个答案:

答案 0 :(得分:0)

也许你可以在插入数据库之前尝试在$ _POST值中使用mysqli_real_escape_string。类似的东西: -

    $salary= mysqli_real_escape_string($con, $_POST['salary']);

查看此docx

答案 1 :(得分:-1)

在你的sql行中添加一些空格

你有这个

$sql="INSERT INTO employeetb(EmployeeID,Status,Salary,Gender)VALUES('$id','$stat','$salary','$gender')";

试试这个

$sql="INSERT INTO employeetb (EmployeeID,Status,Salary,Gender) VALUES ('$id','$stat','$salary','$gender')";