#267
展开↯#268
作者:广西桂林市七星区
15tvah0u4izss #,广西桂林市七星区,2021-08-05,20:10:42, 绝地求生登录钥匙:9b7805dbc6b34ba1a03c031889a5a540
文章:常用html、demo代码 发表时间:2021-08-05, 19:57:11
#269
作者:广西南宁市
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<p onclick="ky();">跨域</p>
<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js">
</script>
<script>
function ky(){
$.ajax({
type: "POST",
url:'http://group.jxttest.com/v1/articles/catsLists',
error: function(request) {
console.log('失败:'+request);
},
success: function(data) {
console.log('成功:'+data);
}
});
}
</script>Run code
Cut to clipboard
文章:常用html、demo代码 发表时间:2021-08-02, 18:33:14
#270
作者:广西南宁市青秀区
Docker启动不了,提示 Docker failed to initialize
将 C:\Users\Administrator\AppData\Roaming 目录下Docker目录改名为Docker_backup(实际上就是删除并备份),
启动 Docker for windows.exe,提示docker没有启动,
点击启动docker一切恢复如初,原来的容器和镜像都在。
将 C:\Users\Administrator\AppData\Roaming 目录下Docker目录改名为Docker_backup(实际上就是删除并备份),
启动 Docker for windows.exe,提示docker没有启动,
点击启动docker一切恢复如初,原来的容器和镜像都在。
文章:Docker PHP 例子 发表时间:2021-07-23, 18:10:44
#271
作者:广西南宁市
Navicat导入sql数据
mysql 报错[Err] [Dtf] 1292 - Incorrect datetime value: '0000-00-00 00:00:00' for column 'uploadtime' at row 9 With statement:......
搜索之后发现原来是因为 msyql5.7 及以上不允许时间戳字段插入 ‘0000-00-00’ 数据,
修复方法也比较简单,去掉sql_model 中的 NO_ZERO_DATE 配置即可
查看可以执行SQL

修改方法有好几个,
最简单的就是执行SQL
还有一个修改配置文件
保存退出后重启mysql #,广西南宁市,2021-07-21,17:28:26, mysql 高版本 sql_mode=only_full_group_by 问题解决方法
#,广西南宁市,2021-07-21,17:42:23, 完美解决方案
需修改mysql配置文件,
通过手动添加sql_mode的方式强制指定不需要ONLY_FULL_GROUP_BY属性,
my.cnf位于etc文件夹下,vim下光标移到最后,添加如下:
重启mysql服务
mysql 报错[Err] [Dtf] 1292 - Incorrect datetime value: '0000-00-00 00:00:00' for column 'uploadtime' at row 9 With statement:......
搜索之后发现原来是因为 msyql5.7 及以上不允许时间戳字段插入 ‘0000-00-00’ 数据,
修复方法也比较简单,去掉sql_model 中的 NO_ZERO_DATE 配置即可
查看可以执行SQL
select @@global.sql_mode;Run code
Cut to clipboard
修改方法有好几个,
最简单的就是执行SQL
set @@global.sql_mode = 'STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';Run code
Cut to clipboard
还有一个修改配置文件
vim /etc/my.cf
//添加这条数据
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIONRun code
Cut to clipboard
保存退出后重启mysql
set @@GLOBAL.sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION;Run code
Cut to clipboard
需修改mysql配置文件,
通过手动添加sql_mode的方式强制指定不需要ONLY_FULL_GROUP_BY属性,
my.cnf位于etc文件夹下,vim下光标移到最后,添加如下:
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIONRun code
Cut to clipboard
重启mysql服务
文章:Docker PHP 例子 发表时间:2021-07-21, 17:20:12
#272
作者:广西南宁市
SQLSTATE[HY000] [2002] Connection refused
使用docker搭建lnmp环境,使用的是分容器的搭建方案
框架使用thinkphp,想要连接数据MySQL,一直显示“SQLSTATE[HY000] [2002] Connection refused”
数据库配置host填的是localhost,后面改成了127.0.0.1,都是连接不了
还以为是数据库用户权限问题,
新建了一个用户,刷新了权限,结果还是不行
想了好久,原来都是分容器的问题,
由于采用了分容器的搭建方案,
在php的容器内连接127.0.0.1或者localhost,肯定是连接不了数据库MySQL的
应该把数据库配置host填成MySQL容器名称,
我本地的MySQL容器名称为mysql,
改成这样就可以连接
<?php
return [
// 数据库类型
'type' => 'mysql',
// 服务器地址
'hostname' => 'mysql',
// 数据库名
'database' => 'jxt',
// 用户名
'username' => 'root',
// 密码
'password' => '123456',
// 端口
'hostport' => '3306',Run code
Cut to clipboard
文章:Docker PHP 例子 发表时间:2021-07-21, 17:26:29
#273
作者:广西南宁市
宝塔 thinkPHP5 nginx 站点配置 伪静态
tp3.2 nginx 伪静态
#,广西南宁市,2021-07-21,17:22:50,
location / {
if (!-e $request_filename){
rewrite ^(.*)$ /index.php?s=$1 last; break;
}
}Run code
Cut to clipboard
tp3.2 nginx 伪静态
location / {
if (!-e $request_filename) {
rewrite ^/index.php(.*)$ /index.php?s=$1 last;
rewrite ^(.*)$ /index.php?s=$1 last;
#rewrite ^(.*)$ /index.php$1 break;
break;
}
}Run code
Cut to clipboard
server {
listen 80;
server_name tp tp.com tp.net tp.org www.tp.com www.tp.net www.tp.org;
root /www/root/develop/tp/Public;
charset UTF-8;
location / {
if (!-e $request_filename){
rewrite ^/(.*)$ /index.php?s=/$1 last;
}
index index.php;
}
include php;
include error;
}Run code
Cut to clipboard
文章:nginx docker 代理 发表时间:2021-07-21, 17:21:37
#274
作者:广西南宁市
Docker
进入数据库内部
,我这里数据库名为book
查看当前字符集
#,广西南宁市,2021-07-21,17:17:03, Mysql:[Err] 1292 - Incorrect datetime value: .date(Y-m-d h:i:s)...解决方案
解决方法:
修改my.ini配置文件
my.ini中查找sql-mode
我的MySQL版本为Server version: 5.6.47 MySQL Community Server (GPL)
默认为:sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
将STRICT_TRANS_TABLES,删掉保存重启mysql
如果版本高的话默认可能是:
sql_mode="STRICT_ALL_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_DATE,NO_ZERO_IN_DATE,NO_AUTO_CREATE_USER
将NO_ZERO_DATE,NO_ZERO_IN_DATE,删掉保存重启mysql即可
进入数据库内部
mysql -u root -p bookRun code
Cut to clipboard
查看当前字符集
show variables like '%character%';Run code
Cut to clipboard
解决方法:
修改my.ini配置文件
my.ini中查找sql-mode
我的MySQL版本为Server version: 5.6.47 MySQL Community Server (GPL)
默认为:sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
将STRICT_TRANS_TABLES,删掉保存重启mysql
如果版本高的话默认可能是:
sql_mode="STRICT_ALL_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_DATE,NO_ZERO_IN_DATE,NO_AUTO_CREATE_USER
将NO_ZERO_DATE,NO_ZERO_IN_DATE,删掉保存重启mysql即可
文章:Docker PHP 例子 发表时间:2021-07-21, 17:14:43
#275
作者:广西南宁市
异常:在执行一段SQL时出现以下问题
[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column ‘information_schema.PROFILING.SEQ’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
分析:
根据异常信息分析能发现,这个问题主要是由于sql_mode引起,所以先查看sql_mode后修改即可,主要是去除only_full_group_by
解决方案:
方案一:只修改当前数据库的SQL_MODE
-- 查看SQL_MODE
-- 修改SQL_MODE
方案二:修改配置文件my.ini
-- 查看数据库的存储地址

打开对应的地址,找到my.ini,添加

[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column ‘information_schema.PROFILING.SEQ’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
分析:
根据异常信息分析能发现,这个问题主要是由于sql_mode引起,所以先查看sql_mode后修改即可,主要是去除only_full_group_by
解决方案:
方案一:只修改当前数据库的SQL_MODE
-- 查看SQL_MODE
SELECT @@sql_mode;Run code
Cut to clipboard
-- 修改SQL_MODE
SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));Run code
Cut to clipboard
方案二:修改配置文件my.ini
-- 查看数据库的存储地址
SELECT @@datadir
-- D:\MySQL\mysql-5.7.17-winx64\data\Run code
Cut to clipboard
打开对应的地址,找到my.ini,添加
[mysql]
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIONRun code
Cut to clipboard
文章:Mysql8.0及以上 only_full_group_by以及其他关于sql_mode原因报错详细解决方案 发表时间:2021-07-21, 17:07:46
#276
作者:广西南宁市
【PhpStorm】为不同的项目启用不同的Code Style配置
因为公司不同项目采用了不同的代码规范,而且彼此不兼容,为了方便同事开发,
将不同项目的PhpStorm Code Style配置以文件方式落地存储并提交代码库,方便共享和维护。
操作方式:
PhpStorm Menu > Preferences... > Editor > Code Style,
右侧 Scheme选择Project,这时可以点击右侧的Set from...引入现成的配置,也可以手动调整配置,完成后退出
将项目根目录下的 .idea/codeStyleSettings.xml文件提交到代码库即可
以上两步重复在不同的项目中操作,即可将不同项目配置分别提交到对应代码库,
同事拉去后即可在不同代码库启用不同的Code Style配置了
因为公司不同项目采用了不同的代码规范,而且彼此不兼容,为了方便同事开发,
将不同项目的PhpStorm Code Style配置以文件方式落地存储并提交代码库,方便共享和维护。
操作方式:
PhpStorm Menu > Preferences... > Editor > Code Style,
右侧 Scheme选择Project,这时可以点击右侧的Set from...引入现成的配置,也可以手动调整配置,完成后退出
将项目根目录下的 .idea/codeStyleSettings.xml文件提交到代码库即可
以上两步重复在不同的项目中操作,即可将不同项目配置分别提交到对应代码库,
同事拉去后即可在不同代码库启用不同的Code Style配置了
文章:VScode使用PHPStorm格式化代码 发表时间:2021-07-20, 17:08:46
#277
作者:广西南宁市
VSCode安装插件后VsCode和PHPStorm编辑器IDE只能用一个格式化代码 #,广西南宁市,2021-07-20,17:07:04,
Assignment sign on next line
PhpStorm在新行上禁用格式化数组初始化Run code
Cut to clipboard
文章:VScode使用PHPStorm格式化代码 发表时间:2021-07-20, 17:05:38
#278
作者:广西南宁市
Docker 安装 Nginx 并个性化挂载配置文件 nginx.conf
# 普通的挂载方式
docker run --name mynginx2 --mount source=/var/www,target==/usr/share/nginx/html,readonly \
--mount source=/var/nginx/conf,target=/etc/nginx/conf,readonly -p 80:80 -d nginxRun code
Cut to clipboard
文章:nginx docker 代理 发表时间:2021-07-19, 17:32:06
#279
作者:广西南宁市
Docker 部署Nginx 并且挂载默认请求路径和配置文件
镜像中nginx.conf配置文件路径
/etc/nginx/nginx.conf
default.conf配置文件的路径
/etc/nginx/conf.d/default.conf
默认首页文件夹html路径
/usr/share/nginx/html
日志文件路径
/var/log/nginxRun code
Cut to clipboard
文章:nginx docker 代理 发表时间:2021-07-19, 17:28:27
#281
作者:广西南宁市青秀区
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Folder\shell\CMD\command]
@="cmd.exe /k cd %l"Run code
Cut to clipboard
文章:Win10添加右键在此处打开命令行 发表时间:2021-07-14, 09:16:57
#282
作者:广西南宁市青秀区
Windows右键添加cmd命令提示符快捷方式的两种方法
第一种:shift+右键
这个最方便了,随时随地直接从当前目录进入cmd终端。
第二种:注册表方式添加
1、win+R进入运行终端
2、进入注册表
3、依次进入
4、在shell右键新建子项命名“命令提示符”(也可以其他名字)
5、在“命令提示符”右键新建子项“”
6、右边双击默认,在数值数据中输入保存,关闭注册表。
7、在文件夹上右键会出现命令提示符功能啦!
第一种:shift+右键
这个最方便了,随时随地直接从当前目录进入cmd终端。
第二种:注册表方式添加
1、win+R进入运行终端
2、
codeRun code
Cut to clipboard
3、依次进入
HKEY_CLASSES_ROOT\Folder\shellRun code
Cut to clipboard
4、在shell右键新建子项命名“命令提示符”(也可以其他名字)
5、在“命令提示符”右键新建子项“
commandRun code
Cut to clipboard
6、右边双击默认,在数值数据中输入
C:\Windows\System32\cmd.exe cd "%1"Run code
Cut to clipboard
7、在文件夹上右键会出现命令提示符功能啦!
文章:Win10添加右键在此处打开命令行 发表时间:2021-07-14, 09:15:45
#284
作者:广西-南宁-中国电信
php curl获取到json对象并转成数组array的方法
#,广西-南宁-中国电信,2021-07-04,07:02:01,
function objtoarr($obj){
$ret = array();
foreach($obj as $key =>$value){
if(gettype($value) == 'array' || gettype($value) == 'object'){
$ret[$key] = objtoarr($value);
}else{
$ret[$key] = $value;
}
}
return $ret;
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,'http://www.tudou.com/albumcover/albumdata/getAlbumItems.html?acode=pEFBZGfERLo&charset=utf-8');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_ENCODING, "gzip");
$output = curl_exec($ch);
curl_close($ch);
$content = json_decode($output);
$content_arr = objtoarr($content);
var_dump($content_arr);
Run code
Cut to clipboard
$content = json_decode($output);Run code
Cut to clipboard
文章:PHP根据经纬度,计算2点之间的距离的2种方法 发表时间:2021-07-04, 07:01:11
#285
作者:广西-南宁-中国电信
php代码将ipv6地址转为ipv4地址
$ipv6 = '2a01:4f8:190:4413::2';
$ipv4 = hexdec(substr($ipv6, 0, 2)). "." . hexdec(substr($ipv6, 2, 2)). "." . hexdec(substr($ipv6, 5, 2)). "." . hexdec(substr($ipv6, 7, 2));
echo $ipv4;Run code
Cut to clipboard
文章:PHP根据经纬度,计算2点之间的距离的2种方法 发表时间:2021-07-04, 07:01:34
ThinkPHP5有关联模型的操作,
但有部分初学者对数据表中常见的几种表与表的关系还存在着问题,
所以使用不好关联查询。
这里将hasOne、hasMany、belongsTo进行一个详细举例说明。
首先,这3个的大致中文意思:
hasOne:有一个,加上主谓语应该是 ,A 有一个 B hasMany:有很多,A 有很多 B belongsTo:属于, A 属于 B这里我们准备3张表来理解他们的关系:
user_group 用户分组表:id、title
user 用户表:id、user_group_id、username、password
profile 用户信息表:id、user_id、nickname、sex
1、user表需要关联user_group表,表示每一个 用户 需要知道该用户是 哪个用户分组的;
2、profile表 需要关联 用户表,表示该用户信息数据 是哪个用户的信息;
我们知道一个用户组下面可以有很多用户,
所以:user_group hasMany user;
一个用户 属于 一个用户组,
所以:user belongsTo user_group;
同样是user_group和user表,但我们出发点不同,关系也就不一样了。
每个用户都应该有唯一一条用户信息数据,
所以:user hasOne profile;
一条用户信息 属于 一个用户,
所以:profile belongsTo user
综上:
在User模型中,我们可以定义关联:
function user_group(){ return $this->belongsTo('UserGroup'); } function profile(){ return $this->hasOne('Profile'); }我们在查询中:
$user = model('User')->find(); $user = $user->user_group; //这样user中就可以包含当前数据对应的user_grou数据了 $user = $user->profile;//这样user中就可以包含当前数据对应的profile数据了在UserGroup模型中,我们可以定义关联:
function user(){ return $this->hasMany('User'); }在Profile模型中,我们可以定义关联:
function user(){ return $this->belongsTo('User'); }注:定义关联function的方法名可以随意定义,一般为表名或模型名;
我们定义的时候是function,但获取时理解为获取属性,所以不加();
很多人理解是我定义了一个profile的方法,
所以应该$user->profile(),这里要特别注意下。
这样我们在查询时,就方便了,不需要使用大量的join。