登陆

我的总是插入不了数据,不知哪里出错了

<?php


//  判断重复密码

if(trim($_POST['pwd']) != trim($_POST['rpwd'])){

exit('两次密码不一致,请返回上一页');

}


//  准备好写入的数据

$username = trim($_POST['username']);  //  可见数据

$password = md5($_POST['pwd']);       //  可见数据,md5是密码加密的一种方式


$time = time();                        //  不可见数据,返回unix时间戳,用户的注册时间

$ip = $_SERVER['REMOTE_ADDR'];         //  不可见数据,返回IP地址,用户的注册IP,我们可以用ip2long将其转为整型存储


//  连接数据库服务器、判断错误、选择数据库和设置字符集

$conn = mysqli_connect('localhost', 'root', '123');


if(mysqli_errno($conn)){

echo mysqli_error($conn);

exit;

}


mysqli_select_db($conn, 'user');   

mysqli_set_charset($conn, 'utf8');


//  组合SQL语句

$sql = "insert into user(username, password, createtime, createip) values('" . $username ."', '" . $password . "', '" . $time . "', '" . $time . "', '" . $ip . "')";


//  发送语句,判断状态

$result = mysqli_query($conn, $sql);


if($result){

echo '成功' . "<br />";

}else{

echo '失败' . "<br />";

}


//  用mysqli_insert_id()把自增的主键ID打印出来

echo '当前用户插入的ID为:' . mysqli_insert_id($conn);


//  关闭数据库连接

mysqli_close($conn);


?>

QQ截图20170708175015.png

# PHP
Ftd2014Ftd20141570 天前1167 次浏览

全部回复(2)我要回复

  • 一个点线面

    一个点线面2017-07-11 14:50:17

    php代码没什么问题,你可以依次打印输出表单提交的数据是否存在,再测试$result值是否存在来查找错误,还有你的数据库表是否真的设置了ID自增呢?反正我是成功了的,哈哈

    运行结果:

    微信截图_20170711144846.png

    回复
    0
  • Ftd2014

    我....终于....找到.....错误点了,在 $sql = "insert into user(username, password, createtime, createip) values('" . $username ."', '" . $password . "', '" . $time . "', '" . $time . "', '" . $ip . "')"; 这句多写了个 '" . $time . "' ,估计当时瞌睡多写了这个....谢谢你了!

    Ftd2014 · 2017-07-12 13:59:11
  • 小皮

    小皮2017-07-09 12:46:33

    执行结果是?


    回复
    0
  • Ftd2014

    老师,执行结果就是:“失败,当前用户插入的ID为:0”

    Ftd2014 · 2017-07-09 21:09:28
    Ftd2014

    老师,我找到错误点了,低级错误,在 $sql = "insert into user(username, password, createtime, createip) values('" . $username ."', '" . $password . "', '" . $time . "', '" . $time . "', '" . $ip . "')"; 这句多写了个 '" . $time . "' ,谢谢老师!

    Ftd2014 · 2017-07-12 14:01:11
  • 取消回复发送