/*$sql = "insert into kui3(username,password,createtime,createip)values#('$username','$password',222,3333)";*/
用上面的程式碼劃線部分改過,可以成功寫入
#$sql = "insert into kui3(username,password,createtime ,createip) values('" . $username . "','" . $password . "','" . $time . "','" . $ip . "')";
用課程中的程式碼,也就是上面的程式碼,寫入一直是失敗,不知道什麼問題?
卿立平2018-02-08 20:44:59
是要先在資料庫裡建好表吧?也就是要先執行表格語句,才能連線成功:
##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 |是麼?$邂♥逅♥愛♥~2018-02-05 23:20:45
成功程式碼:
表格語句如下:
##CREATE TABLE `kui3` ( `id` int(32) NOT NULL AUTO_INCREMENT , `username` varchar(30) DEFAULT## `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('兩次密碼不一致,請回上一頁');
}
$username = trim($_POST['username']);
#$password = md5(trim($_POST['password']));
$time = time();
$ip = $_SERVER["REMOTE_ADDR"];
$conn = mysqli_connect('localhost', 'root', 'root');
//如果有錯誤,有錯誤編號
##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 '目前使用者插入的ID為' . mysqli_insert_id($conn);mysqli_close($ conn);?>$邂♥逅♥愛♥~2018-02-05 23:14:22
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;
這裡有兩個問題:
第一個這個應該是,password varchar(32) not null;
第二個,最後一個createip 這個類型應該設定為字串,
#修改後轉接OK了
成功目前使用者插入的ID為13