WordPress修改评论者网址、邮箱等个人信息的教程
不知道大家是否遇到过有读者要求修改他的网址或邮箱地址等个人信息的情况?这个一般都是发生在用户更换了他个人博客网站的域名之后,对于这种情况,很多人都觉得无从下手或要操作数据库太过复杂,所以就直接拒绝了。其实,对于修改评论者网址、邮箱等个人信息还是比较简单的,今天就跟大家分享一下。
想要修改评论者网址、邮箱等个人信息有两种方法可以实现:
1、通过phpmyadmin修改:这个一般能够在主机空间那里找到phpmyadmin,然后点击输入数据库帐号密码登入,找到我们的网站所用的数据库,点击数据库表“wp_comments”(其中wp是默认,如果建站的时候修改过表前缀,那么这个也会跟着变哦),找到字段名称comment_author_url(评论者网址)和comment_author_email(评论者邮箱),直接双击输入评论者新的网址或邮箱回车即可成功修改。
PS:一般要求修改这个网址或邮箱的评论者都是我们的忠实用户,所以关于他的评论会有很多条,如果是一条条修改就太过悲催了,我们必须通过数据库的SQL语句来操作,具体的SQL语句如下:
-
UPDATE wp_ comments SET comment_author_url = \’新网址\’ WHERE comment_author_url = \’旧网址\’;
-
UPDATE wp_ comments SET comment_author_email = \’新邮箱\’ WHERE comment_author_email = \’旧邮箱\’;
2、通过functions.php文件修改:将下面的代码添加到您的主题 functions.php文件,然后刷新一下我们的站点就可以了。
-
global $wpdb;
-
$wpdb->query( \”
-
UPDATE wp_ comments
-
SET comment_author_url = \’新网址\’
-
WHERE comment_author_url = \’旧网址\’;
-
\” );
-
global $wpdb;
-
$wpdb->query( \”
-
UPDATE wp_ comments
-
SET comment_author_email = \’新邮箱\’
-
WHERE comment_author_email = \’旧邮箱\’;
-
\” );
温馨提示:
-
修改完成后没有必要把这些代码留在主题中,建议大家用后即删。
-
修改网址时,建议先看看该用户评论时所输入的网址是什么,然后在修改时一定全部输入才行。。
-
我操作的时候是先修改网址再修改邮箱,感觉这样可能比较好。
-
我当初操作的时候没有备份数据库,为了安全起见,建议大家在操作数据前最好备份一下数据库比较好。
php.ini配置文件的语法及其使用
关于php.ini
这个文件必须命名为\’php.ini\’并放置在httpd.conf中的PHPIniDir指令指定的目录中。
空白字符和以分号开始的行被简单地忽略。
章节标题(例如: [php])也被简单地忽略, 即使将来它们可能有某种意义。
设置指令的格式如下:
directive = value
指令名(directive)是大小写敏感的!所以\”foo=bar\”不同于\”FOO=bar\”。
值(value)可以是:
1. 用引号界定的字符串(如:\”foo\”),也可以不用引号
2. 一个数字(整数或浮点数,如:0, 1, 34, -1, 33.55)
3. 一个php常量(如:E_ALL, M_PI)
4. 一个ini常量(On, Off, none)
5. 一个表达式(如:E_ALL & ~E_NOTICE)
ini文件中的表达式仅使用:位运算符、逻辑非、圆括号:
| 位或
& 位与
~ 位非
! 逻辑非
布尔标志用 on 表示打开,用 off 表示关闭。
一个空字符串可以用在等号后不写任何东西表示,或者用 none 关键字:
foo = ; 将foo设为空字符串,等同于foo = none;
foo = \”none\” ; 将foo设为字符串\’none\’
如果你在指令值中使用动态扩展(PHP扩展或Zend扩展)中的常量, 那么你只能在加载这些动态扩展的指令行之后使用这些常量。
include_path
设置PHP的搜索路径, 这一参数可以接收系列的目录。当PHP遇到没有路径的文件提示时, 它将会自动检测这些目录,
需要注意的是, 当某些选项允许多个值(多个路径), 应使用系统列表分隔符, 在Windows下使用分号\”;\”, 在Linux下使用冒号\”:\”
; Windows: \”\\path1;\\path2\”
;include_path = \”.;c:\\php\\includes\”
; UNIX: \”/path1:/path2\”
;include_path = \”.:/php/includes\”
注意:
首先你要知道include_path的特点, 它和windows系统下面的环境变量path类似, 可以设置多个,路径与路径之间使用分号;
(windows下,使用分号\”;\” , linux下则使用冒号\”:\”)。
include_path = \”.;c:\\php\\includes\”
这句的意思是在include_path中设置了两个路径, 一个是\”.\” 即当前路径; 另一个则是\”c:\\php\\includes\”(当前网页路径)。
PHP配置open_basedir
将 PHP 所能打开的文件限制在指定的目录树, 包括文件本身。本指令不受安全模式打开或者关闭的影响。
当一个脚本试图用例如 fopen() 或者 gzopen() 打开一个文件时, 该文件的位置将被检查。当文件在指定的目录树之外时 PHP 将拒绝打开它。
open_basedir 可将用户访问文件的活动范围限制在指定的区域, 通常是其家目录的路径, 也可用符号 \”.\” 来代表当前目录。
open_basedir 也可以同时设置多个目录, 在 Windows 中用分号(;)分隔目录, 在任何其它系统中用冒号(:)分隔目录。
当其作用于 Apache 模块时, 父目录中的 open_basedir 路径自动被继承。
方法一:在 php.ini 里配置
open_basedir = .:/tmp/
方法二:在 Apache 配置的 VirtualHost 里设置
php_admin_value open_basedir .:/tmp/
php_admin_value open_basedir /usr/local/apache/htdocs/
设置多个目录可以参考如下:
php_admin_value open_basedir /var/www/html/:/var/tmp/
方法三:在 Apache 配置的 Direcotry 里设置
php_admin_value open_basedir .:/tmp/
php_admin_value open_basedir /usr/local/apache/htdocs/
设置多个目录可以参考如下:
php_admin_value open_basedir /usr/local/apache/htdocs/:/tmp/
A、方法二的优先级高于方法一, 也就是说方法二会覆盖方法一, 方法三的优先级高于方法二, 也就是说方法三会覆盖方法二;
B、配置目录里加了\”/tmp/\”是因为 php 默认的临时文件(如上传的文件、session 等)会放在该目录, 所以一般需要添加该目录, 否则部分功能将无法使用;
C、配置目录里加了\”.\”是指运行 php 文件的当前目录, 这样做可以避免每个站点一个一个设置;
D、如果站点还使用了站点目录外的文件, 需要单独在对应 VirtualHost 设置该目录;
在 php.ini 中设置, 所有站点都会继承 php.ini 的 open_basedir 设置值, 这样可以避免逐个站点设置, 有多个站点的时候, 就不用一个个设置那么麻烦了。
例如: 可以在 php.ini 中设置 open_basedir = .:/tmp/, 这个设置表示允许访问当前目录(即 PHP 脚本文件所在之目录)和 /tmp/ 目录。
如果在 VirtualHost 中设置了 open_basedir 之后, 这个站点就不会再自动继承 php.ini 中的 open_basedir 设置值了, 这就难以达到灵活的配置措施, 所以建议您不要在 VirtualHost 中设置此项限制。
请注意:若在 php.ini 所设置的上传文件临时目录为 /tmp/, 那么设置 open_basedir 时就必须包含 /tmp/, 否则会导致上传失败。
include_path和open_basedir的区别
include_path用于限制inclde加载文件语句, open_basedir用于设置open等文件读写函数
string ini_set ( string $varname , string $newvalue )
设置指定配置选项的值。这个选项会在脚本运行时保持新的值,并在脚本结束时恢复。
ini_set(\”error_reporting\”, \”E_ALL&~(E_WARNING|E_NOTICE)\”); //只对当前的网页有效
ini_set(\”display_errors\”, \”off\”);
ini_set(\”error_log\”, \”syslog\”);
ini_set(\”MAX_FILEUPLOAD\”, 200000000);
如何获取配置文件的值?
ini_get() 获取配置的当前值, 该值可以在代码中使用 ini_set 进行修改
get_cfg_var() 获取配置文件中的值
如何让PHP脚本文件执行更长的时间:
ini_set(\”max_execution_time\”, 0); //开始
/*
* php脚本文件
*/
ini_set(\”max_execution_time\”, 60); //结尾
max_input_vars = 1000
Linux下如何查找php.ini安装路径
php -i | grep php.ini
如何查询PHP extension_dir 目录
/usr/local/php/bin/php -i |grep \’extension_dir\’
PHP文件系统,创建、读写、移动、拷贝和删除文件(笔记17)
网络安全自学笔记17
继续学习PHP
我们可以通过鼠标右键删除文件、ctrl+c(或右键)复制、粘贴文件,新建一些文件,检测这个文件是不是只读文件。通过 PHP,我们可以在代码里面,轻松进行这些操作
1、readfile读取文件
功能:传入一个文件路径,输出一个文件
任意目录下(本文设置在C:\\phpStudy\\WWW),新建test.txt测试文件,输入任意内容,保存
test.txt
输入内容并保存
test.php输入以下代码,输出
test.php
输出
代码中windows的斜线是两个斜线\\\\,是为了避免转义掉
输入一个斜线\\,会输出以下结果
转义后输出错误
2、file_get_contents打开文件
file_get_contents
输出
3、fopen、fread、fclose操作读取文件
resource fopen ( string $文件名, string 模式)
string fread ( resource $操作资源, int 读取长度)
bool fclose ( resource $操作资源 )
下面是fopen的模式
例:php.test输入以下代码,输出
输出
打开C:\\phpStudy\\WWW,会发现已创建test2.txt文件
test2.txt
1、file_put_contents写入文件
int file_put_contents ( string $文件路径, string $写入数据])
功能:向指定的文件当中写入一个字符串,如果文件不存在则创建文件
file_put_contents
输出
可以打开test.txt文件验证(原内容被覆盖了)
test.txt
2、fwrite配合fopen进行写入操作
例:
写入
输出
可以打开test.txt文件验证(原内容被覆盖了)
test.txt
注意:
文件不存在会创建
不论有没有新建都会打开文件重新写入
原有的文件内容会被覆盖掉
创建临时文件的好处:文完后即删除,不需要去维护这个文件
创建临时文件
输出
关闭临时文件,文件即被删除
1、重命名文件
bool rename($旧名,$新名)
rename
输出
查看文件test.txt,发现已重命名为test.txt.old
test.txt.old
2、复制文件
bool copy(源文件,目标文件)
功能:将指定路径的源文件,复制一份到目标文件的位置
copy
输出
查看test.txt.old文件,发现下面已复制出一份test.txt.old_new文件
test.txt.old_new
3、删除文件
直接删除某个文件,不到回收站
bool unlink(指定路径的文件)
unlink
输出
发现test.txt.old_new文件已经被删除
文件已经被删除
总结:
1、继续学习PHP语言
2、学习PHP文件系统,创建、读写、移动、拷贝和删除文件
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。