插入数据库失败,错误代码为1048

时间:2012-02-09 09:28:35

标签: php codeigniter

   <?=form_open('forums/register');?>
            <table>
                <tr>
                    <td><label for="register_name">Username : </label></td>
                    <td><input type="text" name="register_name" disabled="disabled" value="<?=$_POST['username']?>"/></td>                    
                </tr>
                <tr>
                    <td><label for="register_email">Email:</label></td>
                    <td><input type="text" name="register_email" disabled="disabled" value="<?=$_POST['email']?>"/></td>                
                </tr>                
                <tr>
                    <td><label for="register_password">Password:</label></td>
                    <td><input type="password" name="register_password" disabled="disabled" value="<?=$_POST['password']?>"/></td>                
                </tr>               
                <tr>
                    <td></td>
                    <td><input type="submit" value="Register" onclick="return true;"/></td>
                </tr>
                <tr>
                    <td></td>
                    <td><input type="submit" value="Edit" onclick="window.location.replace('forums/index.php');return true;"></td>                    
                </tr>
            </table>
        <?=form_close()?>

在将用户信息保存到mysql表之前,这是我的确认公司。但我有这个错误我不知道为什么,因为它适用于密码和激活密钥,但用户名和电子邮件地址都是空的。

Column 'name' cannot be null

INSERT INTO `membertb` (`name`, `email`, `pass`, `activation`) VALUES (NULL, NULL, 'd41d8cd98f00b204e9800998ecf8427e', '034db1787db6b3d72365507fcb2d1ca0')

和成员数据如下所示

$member_data=array
        (
            'name'=> $p['register_name'],
            'email'=> $p['register_email'],
            'pass'=> md5($p['register_password']),
            'activation' => md5(uniqid(rand(),true))
        );

这个初始化工作正常,就像我最近解决的问题一样。 感谢您提供任何有用的更正..

1 个答案:

答案 0 :(得分:0)

您的register_name字段在HTML表单中被禁用。所以它不会发送到服务器。所以$ p [&#39; register_name&#39;]为空,我想你的姓名&#39;字段不是NULL。

尝试在HTML表单中使用readonly而不是disabled。