1.下载:
https://github.com/bcit-ci/CodeIgniter/archive/3.1.0.zip
解压到根目录
2.创建Controller
application/controller/User.php
目标URL
http://financeapi.applinzi.com/index.php/user/login/
3.接收openid参数
使用input类,更安全
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class User extends CI_Controller {
public function login() {
echo $this->input->post('openid');
}
}
4.建表
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`openid` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`accessToken` char(32) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `username` (`username`),
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
5.查询数据库,该用户是否存在。如存在,则返回用户信息供小程序本地storage保存;若不存在,则先新建一个用户。
加载数据库类:
autoload.php 第61行
$autoload['libraries'] = array('database');
配置数据库连接
database.php
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => '',
'password' => '',
'database' => '',
);
数据库类:http://codeigniter.org.cn/user_guide/database/results.html#id5
查询代码:
public function login() {
header("Content-type: application/json");
$openid = $this->input->post('openid');
$query = $this->db->query("select * from user where openid = '" . $openid . "'");
if ($query->num_rows() > 0) {
$user = $query->first_row();
echo json_encode($user);
return;
}
}
新建代码:
$user = array(
'username' => $openid,
'openid' => $openid,
'accessToken' => md5(time().'mysalt')
);
$this->db->insert('user', $user);
echo json_encode($user);
return;
源码下载:https://my.oschina.net/huangxiujie/blog/761636