使用php将数据插入mysql表时的值为0

时间:2015-02-12 16:26:49

标签: php mysql

我是php和mysql的新手,在尝试将数据插入mysql表时似乎遇到了问题。

我有一个insert.php页面,其中包含以下内容

<?php
$db_host = 'hostname';
$db_user = 'username';
$db_pass = 'password';
$db_name = 'databasename';

 if (!empty($_POST))
{   
    $con = mysqli_connect($db_host, $db_user, $db_pass, $db_name);
    if ($con->connect_error)
        die('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());

    $sql = "INSERT INTO train2015 (emp_num, name, supervisor) VALUES (?,?,?)";
    if (!$stmt = $con->prepare($sql))
        die('Query failed: (' . $con->errno . ') ' . $con->error);

    if (!$stmt->bind_param('ssi',$_POST['emp_num'],$_POST['name'],$_POST['supervisor']))
        die('Bind Param failed: (' . $con->errno . ') ' . $con->error);

    if (!$stmt->execute())
            die('Insert Error ' . $con->error);

    echo "Record added";
    $stmt->close();
    $con->close();
}
?>

然后我有add.php页面

<?php
include('includes/insert.php');

?>

<html>
<body>
<form action="includes/insert.php" method="post">

Employee Number : <input type="text", name="emp_num"> </br>
Full Name : <input type="test" name="name"> </br>
Supervisor Name : <input type="text" name="supervisor"></br>

<input type="submit">

</form>
</body>
</html>

一切似乎工作正常,我点击提交按钮,我看到记录添加,去检查表,我看到emp_num很好,名称字段很好,但主管总是有一个0。我似乎错过了一些东西。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

根据要求:

主管最有可能是一个字符串,sss加上type="text",中的逗号除去它。

如果列类型为intvarchar,您还需要检查列的类型。

字符串为varchar。检查长度。