为了账号安全,请及时绑定邮箱和手机立即绑定
mysql_connect('127.0.0.1', 'code1', '');
mysql_select_db('code1');
mysql_query("set names 'utf8'");
//已知的数据变量有
$name = '李四';
$age = 18;
$class = '高三一班';
$array=array($name,$age,$class);
function insert($i){
    $keys=join(",",array_keys($i));
    $vals="'".join("','",array_values($i))."'";
    $sql="insert into user ($keys) values ($vals)";
    mysql_query($sql);
    $id=mysql_insert_id();
    return $id;
    }
$id=insert($array)||exit("添加记录失败");
function scan_noce($where){
    $sql="select * from user where id=$where";
    $res=mysql_query($sql);
    $res=mysql_fetch_array($res,MYSQL_ASSOC);
    print_r($res);
}
scan_once($id);

老师,为什么提示添加记录失败呢?排查了好久,问题似乎出在insert()函数的$sql语句中!


正在回答

2 回答

 我猜你的字段名是name、age、class吧,但 $keys=join(",",array_keys($i)); 得到的是数组下标0,1,2 

可以这样定义数组:$array = array('name' => $name, 'age' => $age, 'class' => $class);

1 回复 有任何疑惑可以回复我~

你试着把insert函数中的$sql="insert into user ($keys) values ($vals)";这个打印出来,然后把打印的insert语句粘贴到数据库里面执行一下,看看是否能插入数据,如果能正常插入数据到数据库,那么这个语句就没有问题,如果不能插入数据到数据库,那么看看报错休息,修改insert语句的语法再试试看。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信