/*$sql = "insert into kui3(username,password,createtime,createip)values('$username','$password',222,3333)";*/
用上面的代碼劃線部分改過(guò),可以成功寫(xiě)入
$sql = "insert into kui3(username,password,createtime,createip) values('" . $username . "','" . $password . "','" . $time . "','" . $ip . "')";
用課程中的代碼,也就是上面的代碼,寫(xiě)入一直是失敗,不知道什么問(wèn)題?
然后在插入的時(shí)候,將時(shí)間用引號(hào)括起來(lái),因?yàn)闀r(shí)間以字符串的形式存儲(chǔ),你的問(wèn)題中的$time和ip都應(yīng)該用括號(hào)括起來(lái)才對(duì)
`createtime` int(80) DEFAULT NULL,這個(gè)int(80)是不是有點(diǎn)嚇人?而且可以使用數(shù)據(jù)庫(kù)的date類(lèi)型呀
是要先在數(shù)據(jù)庫(kù)里建好表吧?也就是要先執(zhí)行表語(yǔ)句,才能連接成功:
CREATE TABLE `kui3` (
? `id` int(32) NOT NULL AUTO_INCREMENT,
? `username` varchar(30) DEFAULT NULL,
? `password` varchar(32) DEFAULT NULL,
? `createtime` int(80) DEFAULT NULL,
? `createip` varchar(60) DEFAULT NULL,
? PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 |
是么?
?成功代碼:
表語(yǔ)句如下:
CREATE TABLE `kui3` (
? `id` int(32) NOT NULL AUTO_INCREMENT,
? `username` varchar(30) DEFAULT NULL,
? `password` varchar(32) DEFAULT NULL,
? `createtime` int(80) DEFAULT NULL,
? `createip` varchar(60) DEFAULT NULL,
? PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 |
connect.php 文件 完整代碼如下:
<?php
if (trim($_POST['password']) != trim($_POST['repassword'])) {
? ?exit('兩次密碼不一致,請(qǐng)返回上一頁(yè)');
}
$username = trim($_POST['username']);
$password = md5(trim($_POST['password']));
$time = time();
$ip = $_SERVER["REMOTE_ADDR"];
$conn = mysqli_connect('localhost', 'root', 'root');
//如果有錯(cuò)誤,存在錯(cuò)誤號(hào)
if (mysqli_errno($conn)) {
? ?echo mysqli_error($conn);
? ?exit;
}
mysqli_select_db($conn, 'kui');
mysqli_set_charset($conn, 'utf8');
$sql = "insert into kui3(username,password,createtime,createip) values('" . $username . "','" . $password . "','" . $time . "','" . $ip . "')";
$result = mysqli_query($conn, $sql);
if ($result) {
? ?echo '成功';
} else {
? ?echo '失敗';
}
echo '當(dāng)前用戶(hù)插入的ID為' . mysqli_insert_id($conn);
mysqli_close($conn);
?>
CREATE TABLE IF NOT EXISTS user (
id int(11) NOT NULL,
username varchar(30) NOT NULL,
password char(32) NOT NULL,
createtime int(11) NOT NULL,
createip int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
這里有兩個(gè)問(wèn)題:
第一個(gè)這個(gè)應(yīng)該是,password varchar(32) not null;
第二個(gè),最后一個(gè)createip 這個(gè)類(lèi)型應(yīng)該設(shè)置為字符串,
修改后轉(zhuǎn)接OK了
成功當(dāng)前用戶(hù)插入的ID為13