框架发布

框架发布

最新版本发布信息
提问交流

提问交流

使用问题咨询
经验分享

经验分享

开发经验交流分享
功能建议

功能建议

官方开发功能建议
BUG反馈

BUG反馈

使用BUG反馈
模块&插件&数据包

模块&插件&数据包

模块插件数据包分享

设置路由后及后台菜单点击问题

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 • 来自相关话题

登录后台时服务器错误

回复

提问交流Am 回复了问题 • 0 人关注 • 1 个回复 • 2485 次浏览 • 2017-04-18 10:23 • 来自相关话题

get_thumb 函数增加 返回完整域名 参数

经验分享momo 发表了文章 • 0 个评论 • 2001 次浏览 • 2017-04-17 10:25 • 来自相关话题

有的时候我们希望获取图片路径的时候带上完整的域名,官方的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;
}
}
} 查看全部
有的时候我们希望获取图片路径的时候带上完整的域名,官方的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构建数据表格
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

时间段筛选和搜索参数并存

功能建议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 • 来自相关话题

图片上传问题

提问交流richaim 回复了问题 • 2 人关注 • 2 个回复 • 1957 次浏览 • 2017-04-13 11:56 • 来自相关话题

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 • 来自相关话题

微信小程序用户信息解密插件

回复

模块&插件jiankian 发起了问题 • 2 人关注 • 0 个回复 • 3744 次浏览 • 2017-04-12 07:20 • 来自相关话题

微信小程序登录插件,换取session-key和openid

模块&插件jiankian 发表了文章 • 0 个评论 • 3611 次浏览 • 2017-04-12 07:14 • 来自相关话题

微信小程序登录换取openid和session_key插件。。
微信小程序代码:
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对象。。
  查看全部
微信小程序登录换取openid和session_key插件。。
微信小程序代码:
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对象。。