分类 "PHP" 下的文章

问题:php7.4一直报错Uncaught Error: Undefined class constant 'MYSQL_ATTR_INIT_COMMAND'

方法:

vim /etc/php/7.4/fpm/php.ini
打开下面配置,没有添加
extension=mysqlnd
extension=pdo
extension=pdo_mysql
注:确保已经安装php7.4-mysql

修改完后重启php

sudo systemctl restart php7.4-fpm
sudo systemctl status php7.4-fpm

问题:重新安装php7.4-fpm时报错
Not replacing deleted config file /etc/php/7.4/fpm/php.ini
Failed to start The PHP 7.4 FastCGI Process Manager.
ERROR: failed to open configuration file '/etc/php/7.4/fpm/php-fpm.conf': No such file or directory

解决:这是因为卸载的不干净,所以无法安装

方法:

重新卸载
sudo apt remove php7.4-fpm
sudo dpkg -P php7.4-fpm
再次安装
sudo apt install php7.4-fpm

阅读全文

问题:Moodle in English: Found more than one record in fetch()

解决:可能是网络问题,数据库表grade_categories产生了一条重复数据,导致课程无法删除、无法添加内容、无法查看成绩

方法:

查找数据表中课程id=77的grade_categories
select * from mdl_grade_categories where course_id=77;
删除重复的数据,只保留一条
delete from mdl_grade_categories where id=75;
这样就可以在网站操作此课程了

问题:ajax请求报错:Uncaught SyntaxError: expected expression, got '<'

解决:因为返回的不是json格式,可以去除dataType,然后console.log返回值进行查看错误

方法:
1、去除 dataType: 'json'

2、增加 console.log(data);

3、解决后台bug

问题:如何重启php7服务?

解决:因为没有service,所以需要使用进程重启

方法:

INT, TERM 立刻终止
QUIT 平滑终止
USR1 重新打开日志文件
USR2 平滑重载所有 worker 进程并重新载入配置和二进制模块

阅读全文