通知设置 新通知
设置路由后及后台菜单点击问题
BUG反馈 • dolphinphp 回复了问题 • 2 人关注 • 1 个回复 • 5420 次浏览 • 2017-04-21 22:10
addUeditor
提问交流 • dolphinphp 回复了问题 • 2 人关注 • 1 个回复 • 1092 次浏览 • 2017-04-21 21:38
内容无法保存,提示服务器错误
BUG反馈 • whhy 回复了问题 • 2 人关注 • 3 个回复 • 2296 次浏览 • 2017-04-20 10:49
1.0.2发布的模块与插件
功能建议 • dolphinphp 回复了问题 • 4 人关注 • 1 个回复 • 2380 次浏览 • 2017-04-19 15:29
最新版安装到step2会返回第一步
BUG反馈 • a814515181 回复了问题 • 2 人关注 • 1 个回复 • 2003 次浏览 • 2017-04-19 13:47
get_thumb 函数增加 返回完整域名 参数
经验分享 • momo 发表了文章 • 0 个评论 • 2001 次浏览 • 2017-04-17 10:25
自己加了一个$domain参数,给需要的人
application\common.php
if (!function_exists('get_thumb')) {
/**
* 获取图片缩略图路径
* @param int $id 附件id
* @author 蔡伟明 <314013107@qq.com>
* @return string
*/
function get_thumb($id = 0,$domain=true)
{
$path = model('admin/attachment')->getThumbPath($id);
if (!$path) {
return config('public_static_path').'admin/img/none.png';
}
if($domain){
if(empty($_SERVER['HTTPS']))
$pre="http://";
else
$pre="https://";
return $pre.$_SERVER['HTTP_HOST'].PUBLIC_PATH. $path;
}
else {
return PUBLIC_PATH. $path;
}
}
} 查看全部
有的时候我们希望获取图片路径的时候带上完整的域名,官方的get_thumb函数没有提供,
自己加了一个$domain参数,给需要的人
application\common.php
if (!function_exists('get_thumb')) {
/**
* 获取图片缩略图路径
* @param int $id 附件id
* @author 蔡伟明 <314013107@qq.com>
* @return string
*/
function get_thumb($id = 0,$domain=true)
{
$path = model('admin/attachment')->getThumbPath($id);
if (!$path) {
return config('public_static_path').'admin/img/none.png';
}
if($domain){
if(empty($_SERVER['HTTPS']))
$pre="http://";
else
$pre="https://";
return $pre.$_SERVER['HTTP_HOST'].PUBLIC_PATH. $path;
}
else {
return PUBLIC_PATH. $path;
}
}
}
关于 联动菜单和快速联动问题?
提问交流 • dolphinphp 回复了问题 • 2 人关注 • 1 个回复 • 2361 次浏览 • 2017-04-17 01:23
导航管理如果填写分类列表和分类重复,提示菜单标题为空
功能建议 • dolphinphp 回复了问题 • 2 人关注 • 1 个回复 • 2922 次浏览 • 2017-04-17 01:16
请问一下 多表查询 怎么设置 数据库
提问交流 • dolphinphp 回复了问题 • 2 人关注 • 1 个回复 • 2278 次浏览 • 2017-04-17 01:04
能不能增加一个关联的字段类型
提问交流 • dolphinphp 回复了问题 • 2 人关注 • 1 个回复 • 1921 次浏览 • 2017-04-17 01:01
权限BUG
BUG反馈 • dolphinphp 回复了问题 • 1 人关注 • 1 个回复 • 1831 次浏览 • 2017-04-17 00:57
DolphinPHP1.0.2发布
框架发布 • dolphinphp 发表了文章 • 4 个评论 • 3926 次浏览 • 2017-04-16 22:52
修复:一处单词拼写错误
修复:检查新版本时,普通用户会报节点不存在的问题(感谢网友:天天 的反馈)
修复:发送ajax时,有时候会报“未定义变量:_top_menus”或者“未定义变量:_location”的问题
修复:某些情况下,找不到模板的问题
修复:表格构建器中,如果数据没有主键时会报错的问题
修复:单文件上传、多文件上传、单图片上传、多图片上传在触发器中切换会报错的问题
改进:快速联动支持简单布局
改进:安装框架不再检查是否有mysql密码
改进:登录后台默认不启用验证码
改进:框架安装完毕,显示默认管理员账号和密码
改进:后台配置模型的getConfig方法不采用静态方式
改进:框架安装模块中,url使用兼容模式,以免未启用pathinfo时无法安装的问题
新增:支持在添加表单项时设置布局参数(表单布局)
新增:表单的addBtn方法支持重复调用(添加按钮)
新增:表单新增addButton方法,可以在表单内添加自定义按钮(按钮)
新增:数据授权页面,增加全选和反选功能
新增:表格每列增加一个class名,名称为“column-列名”,方便用css设置列样式(添加一列)
新增:在表格构建器中,可以使用“__字段名__”来获取原数据,要注意使用顺序
新增:cms模块的导航演示
【更新指导】
注意:更新前,请注意备份文件和数据库。
第一步:执行以下Sql语句,如果表前缀不是“dp_”,请修改为自己的表前缀。INSERT INTO `dp_admin_menu` VALUES (NULL, '70', 'admin', '检查版本更新', '', 'module', 'admin/index/checkupdate', '_self', '0', '1490588610', '1490588610', '100', '0', '1');
-- 以下是cms模块相关的sql,如果没有安装cms模块,请忽略
ALTER TABLE `dp_cms_nav` ADD COLUMN `tag` varchar(32) NOT NULL DEFAULT '' COMMENT '导航标识' AFTER `id`;
INSERT INTO `dp_cms_nav` VALUES (NULL, 'main_nav', '顶部导航', '1492345083', '1492345083', '1');
INSERT INTO `dp_cms_nav` VALUES (NULL, 'about_nav', '底部关于', '1492346685', '1492346685', '1');
INSERT INTO `dp_cms_nav` VALUES (NULL, 'support_nav', '服务与支持', '1492346715', '1492346715', '1');
INSERT INTO `dp_cms_menu` VALUES (NULL, '1', '0', '0', '0', '2', '首页', 'cms/index/index', '', '', '_self', '1492345605', '1492345605', '100', '1');
INSERT INTO `dp_cms_menu` VALUES (NULL, '2', '0', '0', '0', '2', '关于我们', 'http://www.dolphinphp.com', '', '', '_self', '1492346763', '1492346763', '100', '1');
INSERT INTO `dp_cms_menu` VALUES (NULL, '3', '0', '0', '0', '2', '开发文档', 'http://www.kancloud.cn/ming5112/dolphinphp', '', '', '_self', '1492346812', '1492346812', '100', '1');
INSERT INTO `dp_cms_menu` VALUES (NULL, '3', '0', '0', '0', '2', '开发者社区', 'http://bbs.dolphinphp.com/', '', '', '_self', '1492346832', '1492346832', '100', '1');
INSERT INTO `dp_cms_menu` VALUES (NULL, '1', '0', '0', '0', '2', '二级菜单', 'http://www.dolphinphp.com', '', '', '_self', '1492347372', '1492347510', '100', '1');
INSERT INTO `dp_cms_menu` VALUES (NULL, '1', '5', '0', '0', '2', '子菜单', 'http://www.dolphinphp.com', '', '', '_self', '1492347388', '1492347520', '100', '1');
第二步:覆盖补丁
【提示】
这个版本中,可以在建立表格的时候,可以使用“__字段名__”来获取原数据,比如:// 使用ZBuilder构建数据表格
return ZBuilder::make('table')
->addColumns([ // 批量添加列
['id', 'ID'],
['username', '用户名'],
['nickname', '昵称'],
['email', '邮箱'],
['mobile', '手机号'],
['status', '状态', 'yesno'],
['create_time', '创建时间', 'datetime']
])
->fetch();在上面的例子中,status的值原本是1和0,因为指定了类型为“yesno”,显示效果是图标,那么以后我们想再使用status的值时,status的值已经不是原来的1和0,而是经过处理后的html代码了。那么可以用下面的方法来获取原来的字段值。// 使用ZBuilder构建数据表格
return ZBuilder::make('table')
->addColumns([ // 批量添加列
['id', 'ID'],
['username', '用户名'],
['nickname', '昵称'],
['email', '邮箱'],
['mobile', '手机号'],
['status', '状态', 'yesno'],
['__status__', '状态原值'],
['create_time', '创建时间', 'datetime']
])
->fetch();使用“__字段名__”可以获取原字段值,同样支持在“__data__”使用,比如:// 使用ZBuilder构建数据表格
return ZBuilder::make('table')
->addColumns([ // 批量添加列
['id', 'ID'],
['username', '用户名'],
['nickname', '昵称'],
['email', '邮箱'],
['mobile', '手机号'],
['status', '状态', 'yesno'],
['status', '状态原值', 'callback', function($value, $data){
return $data['__status__']; // 获取status的原值,而不是处理过的值
}, '__data__'],
['create_time', '创建时间', 'datetime']
])
->fetch();
【下载】
官网下载:http://www.dolphinphp.com/download.html
Coding.net仓库:https://coding.net/u/LoopMing/p/DolphinPHP/git
GitHub仓库:https://github.com/caiweiming/DolphinPHP.git
码云仓库:https://git.oschina.net/caiweiming/DolphinPHP.git
【补丁】
http://www.dolphinphp.com/patch.html 查看全部
修复:一处单词拼写错误
修复:检查新版本时,普通用户会报节点不存在的问题(感谢网友:天天 的反馈)
修复:发送ajax时,有时候会报“未定义变量:_top_menus”或者“未定义变量:_location”的问题
修复:某些情况下,找不到模板的问题
修复:表格构建器中,如果数据没有主键时会报错的问题
修复:单文件上传、多文件上传、单图片上传、多图片上传在触发器中切换会报错的问题
改进:快速联动支持简单布局
改进:安装框架不再检查是否有mysql密码
改进:登录后台默认不启用验证码
改进:框架安装完毕,显示默认管理员账号和密码
改进:后台配置模型的getConfig方法不采用静态方式
改进:框架安装模块中,url使用兼容模式,以免未启用pathinfo时无法安装的问题
新增:支持在添加表单项时设置布局参数(表单布局)
新增:表单的addBtn方法支持重复调用(添加按钮)
新增:表单新增addButton方法,可以在表单内添加自定义按钮(按钮)
新增:数据授权页面,增加全选和反选功能
新增:表格每列增加一个class名,名称为“column-列名”,方便用css设置列样式(添加一列)
新增:在表格构建器中,可以使用“__字段名__”来获取原数据,要注意使用顺序
新增:cms模块的导航演示
【更新指导】
注意:更新前,请注意备份文件和数据库。
第一步:执行以下Sql语句,如果表前缀不是“dp_”,请修改为自己的表前缀。
INSERT INTO `dp_admin_menu` VALUES (NULL, '70', 'admin', '检查版本更新', '', 'module', 'admin/index/checkupdate', '_self', '0', '1490588610', '1490588610', '100', '0', '1');
-- 以下是cms模块相关的sql,如果没有安装cms模块,请忽略
ALTER TABLE `dp_cms_nav` ADD COLUMN `tag` varchar(32) NOT NULL DEFAULT '' COMMENT '导航标识' AFTER `id`;
INSERT INTO `dp_cms_nav` VALUES (NULL, 'main_nav', '顶部导航', '1492345083', '1492345083', '1');
INSERT INTO `dp_cms_nav` VALUES (NULL, 'about_nav', '底部关于', '1492346685', '1492346685', '1');
INSERT INTO `dp_cms_nav` VALUES (NULL, 'support_nav', '服务与支持', '1492346715', '1492346715', '1');
INSERT INTO `dp_cms_menu` VALUES (NULL, '1', '0', '0', '0', '2', '首页', 'cms/index/index', '', '', '_self', '1492345605', '1492345605', '100', '1');
INSERT INTO `dp_cms_menu` VALUES (NULL, '2', '0', '0', '0', '2', '关于我们', 'http://www.dolphinphp.com', '', '', '_self', '1492346763', '1492346763', '100', '1');
INSERT INTO `dp_cms_menu` VALUES (NULL, '3', '0', '0', '0', '2', '开发文档', 'http://www.kancloud.cn/ming5112/dolphinphp', '', '', '_self', '1492346812', '1492346812', '100', '1');
INSERT INTO `dp_cms_menu` VALUES (NULL, '3', '0', '0', '0', '2', '开发者社区', 'http://bbs.dolphinphp.com/', '', '', '_self', '1492346832', '1492346832', '100', '1');
INSERT INTO `dp_cms_menu` VALUES (NULL, '1', '0', '0', '0', '2', '二级菜单', 'http://www.dolphinphp.com', '', '', '_self', '1492347372', '1492347510', '100', '1');
INSERT INTO `dp_cms_menu` VALUES (NULL, '1', '5', '0', '0', '2', '子菜单', 'http://www.dolphinphp.com', '', '', '_self', '1492347388', '1492347520', '100', '1');
第二步:覆盖补丁
【提示】
这个版本中,可以在建立表格的时候,可以使用“__字段名__”来获取原数据,比如:
// 使用ZBuilder构建数据表格在上面的例子中,status的值原本是1和0,因为指定了类型为“yesno”,显示效果是图标,那么以后我们想再使用status的值时,status的值已经不是原来的1和0,而是经过处理后的html代码了。那么可以用下面的方法来获取原来的字段值。
return ZBuilder::make('table')
->addColumns([ // 批量添加列
['id', 'ID'],
['username', '用户名'],
['nickname', '昵称'],
['email', '邮箱'],
['mobile', '手机号'],
['status', '状态', 'yesno'],
['create_time', '创建时间', 'datetime']
])
->fetch();
// 使用ZBuilder构建数据表格使用“__字段名__”可以获取原字段值,同样支持在“__data__”使用,比如:
return ZBuilder::make('table')
->addColumns([ // 批量添加列
['id', 'ID'],
['username', '用户名'],
['nickname', '昵称'],
['email', '邮箱'],
['mobile', '手机号'],
['status', '状态', 'yesno'],
['__status__', '状态原值'],
['create_time', '创建时间', 'datetime']
])
->fetch();
// 使用ZBuilder构建数据表格
return ZBuilder::make('table')
->addColumns([ // 批量添加列
['id', 'ID'],
['username', '用户名'],
['nickname', '昵称'],
['email', '邮箱'],
['mobile', '手机号'],
['status', '状态', 'yesno'],
['status', '状态原值', 'callback', function($value, $data){
return $data['__status__']; // 获取status的原值,而不是处理过的值
}, '__data__'],
['create_time', '创建时间', 'datetime']
])
->fetch();
【下载】
官网下载:http://www.dolphinphp.com/download.html
Coding.net仓库:https://coding.net/u/LoopMing/p/DolphinPHP/git
GitHub仓库:https://github.com/caiweiming/DolphinPHP.git
码云仓库:https://git.oschina.net/caiweiming/DolphinPHP.git
【补丁】
http://www.dolphinphp.com/patch.html
时间段筛选和搜索参数并存
功能建议 • richaim 回复了问题 • 2 人关注 • 2 个回复 • 2234 次浏览 • 2017-04-14 14:05
使用ZBuilder快速创建数据表格时如何使用函数
提问交流 • tlerbao 回复了问题 • 3 人关注 • 2 个回复 • 4722 次浏览 • 2017-04-14 08:55
dophinphp 不支持nginx服务器 这是一个大问题啊
提问交流 • gipqggtfnq 回复了问题 • 3 人关注 • 2 个回复 • 2497 次浏览 • 2017-04-14 00:51
PHP 5.5.32正常。php7.1.2也正常。php 5.6和php5.6.30和php7.1.3和
回复提问交流 • jiankian 发起了问题 • 1 人关注 • 0 个回复 • 2378 次浏览 • 2017-04-12 07:35
微信小程序登录插件,换取session-key和openid
模块&插件 • jiankian 发表了文章 • 0 个评论 • 3611 次浏览 • 2017-04-12 07:14
微信小程序代码:
wx.login({
success: function(res){
// success
console.log("wx.login成功")
console.log(res)
wx.request({
url: '服务器地址/index.php/前台控制器地址。。。',
data: {
js_code:res.code
},
method: 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
// header: {}, // 设置请求的 header
success: function(res){
// success
console.log("服务器返回:")
console.log(res)
var login_session = JSON.parse(res.data)
if (login_session.session_key){
wx.getUserInfo({
success: function(res){
// success
console.log("获取用户信息成功")
console.log(res)
wx.request({
url: '服务器地址/index.php/customer/index/decrypt前台控制器地址',
data: {
sessionKey:login_session.session_key,
encryptedData:res.encryptedData,
iv:res.iv
},
method: 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
// header: {}, // 设置请求的 header
success: function(res){
// success
console.log("服务器解密成功")
console.log(res)
},
fail: function(res) {
// fail
},
complete: function(res) {
// complete
}
})
},
fail: function(res) {
// fail
},
complete: function(res) {
// complete
}
})
}
},
fail: function(res) {
// fail
},
complete: function(res) {
// complete
}
})
},
fail: function(res) {
// fail
},
complete: function(res) {
// complete
}
})因为,系统自动返回的是 html数据头,如果小程序端收到的不是json对象而是json字符串请用配置在服务器端直接配置默认的返回数据为json HTTP头。或者小程序本地 用 JSON.parse('json字符串')来解析json对象。。
查看全部
微信小程序代码:
wx.login({因为,系统自动返回的是 html数据头,如果小程序端收到的不是json对象而是json字符串请用配置在服务器端直接配置默认的返回数据为json HTTP头。或者小程序本地 用 JSON.parse('json字符串')来解析json对象。。
success: function(res){
// success
console.log("wx.login成功")
console.log(res)
wx.request({
url: '服务器地址/index.php/前台控制器地址。。。',
data: {
js_code:res.code
},
method: 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
// header: {}, // 设置请求的 header
success: function(res){
// success
console.log("服务器返回:")
console.log(res)
var login_session = JSON.parse(res.data)
if (login_session.session_key){
wx.getUserInfo({
success: function(res){
// success
console.log("获取用户信息成功")
console.log(res)
wx.request({
url: '服务器地址/index.php/customer/index/decrypt前台控制器地址',
data: {
sessionKey:login_session.session_key,
encryptedData:res.encryptedData,
iv:res.iv
},
method: 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
// header: {}, // 设置请求的 header
success: function(res){
// success
console.log("服务器解密成功")
console.log(res)
},
fail: function(res) {
// fail
},
complete: function(res) {
// complete
}
})
},
fail: function(res) {
// fail
},
complete: function(res) {
// complete
}
})
}
},
fail: function(res) {
// fail
},
complete: function(res) {
// complete
}
})
},
fail: function(res) {
// fail
},
complete: function(res) {
// complete
}
})