為什么添加失敗,數據卻已經添加進去了,求助啊
/**
* 添加管理員
* @return string
*/
function addAdmin(){
? $arr=$_POST;
? $arr['password']=md5($_POST['password']);
? if(insert("imooc_admin",$arr)){//imooc_admin是要插入數據的數據庫名
? ? ?$mes="添加成功!<br/><a href='../admin/addAdmin.php'>繼續添加</a>|<a href='listAdmin.php'>查看管理員列表</a>";
? }else{
? ? ?$mes="添加失敗!<br/><a href='../admin/addAdmin.php'>重新添加</a>";
? }
? return $mes;
}
有錯??
mysql.func.php里的:
/**
* 完成記錄插入的操作
* @param string $table
* @param array $array
* @return number
*/
function insert($table,$array){
? $keys=join(",",array_keys($array));
? $vals="'".join("','",array_values($array))."'";
? $sql="insert {$table}($keys) values({$vals})";
? mysqli_query(connect(),$sql);
? return mysqli_insert_id(connect());
}
我承認我是渣渣了,會不會是mysqli的問題
2017-08-20
高手啊 ?我也一直在糾結 ?怎么加link
2017-07-16
insert方法里面,不應該直接用connect,而是用$link來代替。因為你每次使用mysql相關函數的時候都使用了新的連接,那么mysqli_insert_id返回的就可能是0。
修改的地方有好幾處哦
①insert方法修改為
②addAdmin()修改為
③那么,$link哪里來呢?就是在include.php的最后面。之前老師不是在include.php里面寫了個?connect();嗎?
改成?$link = connect(); 就可以了,這樣每包含這個文件就可以使用$link。