dedecms 问答系统如何取消积分与用户登陆验证

 更新时间:2016年11月25日 17:40  点击:1956

/*
现在我要用dedecms来做一个问答功能,功能是不需要用户登陆并可以提问,因为问题时需要积分所以我把登际与积分都取消了。
找到
post.php教程文件打开并找到

 代码如下 复制代码
if(!isset($action)) $action = '';
if(empty($uid) && $action != 'rate')
{
 showmsgs('no_login','../member/login.php?gourl=../ask/');
 exit;
}


代码过滤掉,这是就是登陆验证,这样提问就不要登陆了,下面取消积分
找到

 代码如下 复制代码
 $needscore = $anonymous * 10 + $reward;
 if($scores < $needscore)
 {
  showmsgs('noscore','-1');
 }

删除就ok了,这样你的dedecms可登陆也可以以直接发布哦。

本站原创教程转载注明来源于www.111cn.net

  ◆ mysql数据库教程默认的编码是utf8,如果这种编码与你的php网页不一致,可能就会造成mysql乱码;

  ◆ mysql中创建表时会让你选择一种编码,如果这种编码与你的网页编码不一致,也可能造成mysql乱码;

  ◆ mysql创建表时添加字段是可以选择编码的,如果这种编码与你的网页编码不一致,也可能造成mysql乱码;

  ◆ 用户提交页面的编码与显示数据的页面编码不一致,就肯定会造成php页面乱码;

  ◆ 如用户输入资料的页面是big5码, 显示用户输入的页面却是gb2312,这种100%会造成php页面乱码;

  ◆ php页面字符集不正确;

  ◆ php连接mysql数据库语句指定的编码不正确。


  注意:

  很多人都怀疑mysql版本不一致会导致乱码,相信看了本说明你就不会这样认为了。

  平时你在某些网站看到的文字可能有几种编码, 如你看到一个繁体字,它有可能是big5编码,也有 可能是utf-8编码的,更有可能是gb码的,没错,也就是说有简体编码的繁体字,也有繁体编码的简体字,一定要了解这一点。

  如果你是做一个简体编码的网页,编码定为gb2312,如果有香港和台湾地区的访客提交繁体的信息,就可能会造成乱码,解决方法:

  将网站编码设为 utf-8,这样可以兼容世界上所有字符。

  如果网站已经运作了好久,已有很多旧数据,不能再更改简体中文的设定,那么建议将页面的编码设为 gbk, gbk与gb2312的区别就在于:gbk能比gb2312显示更多的字符,要显示简体码的繁体字,就只能用gbk。

  使用mysql+php产生乱码的原因都了解得很清楚了,那么解决就不困难了。

  mysql+php产生乱码的解决办法:

  如果安装mysql的编码已不能更改,很多朋友是购买虚拟主机建立网站,无权更改mysql的安装编码,这一关我们可以跳过,因为只要后面的步聚正确,一样能解决乱码问题。

  修改数据库编码,如果是数据库编码不正确,可以在phpmyadmin 执行如下命令:

sql代码
   
01.alter database 'test' default character set utf8 collate utf8_bin 
  以上命令就是将test数据库的编码设为utf8。


  修改表的编码:

sql代码
   
01.alter table 'category' default character set utf8 collate utf8_bin 
 以上命令就是将一个表category的编码改为utf8。

  修改字段的编码:

sql代码
   
01.alter table 'test' change 'dd' 'dd' varchar( 45 ) character  
   
02.set utf8 collate utf8_bin not null 
 以上命令就是将test表中dd的字段编码改为utf8。

  如果是这种情况容易解决,只需检查下页面,修改源文件的charset即可。

  这种情况也是修改页面charset即可。

  在连接数据库的语句中。

sql代码
   
01.mysql_connect('localhost','user','password');  
   
02.mysql_select_db('my_db');  
   
03.mysql_query("set names utf8;");     //select 数据库之后加多这一句 
 为了避免php页面乱码的发生,php页面开始第一句

 

php代码
   
01.header("content-type:text/html; charset=utf-8"); // 
强行指定页面的编码,以避免乱码

  注意:照以上方法修改以后只能保证你新插入的数据不会乱码,举个例:如果你用户已提交的数据是big5,你却想通过以上方法改为可以在gb2312的网页正确显示是不可能的, 这种文字内码的变换只能通过另写程序来解决。

//将要处理的汉字,先由UTF8的汉字转成html实体形式再使用.

//示例代码:

 代码如下 复制代码
//ini_set('JIS-mapped Japanese Font Support',false);
$pic=imagecreate(250,30);
$black=imagecolorallocate($pic,0,0,0);
$white=imagecolorallocate($pic,255,255,255);
$font="C://WINDOWS//Fonts//simhei.ttf";

$str = '中华人民共和国';
$str = mb_convert_encoding($str, "html-entities","utf-8" );//结果:&#21738;&#19968;&#38431;&#20248;&#20808;&#24320;&#29699;

 代码如下 复制代码

imagettftext($pic,10,0,10,20,$white,$font,$str);

header("Content-type: image/jpeg");
$filename='./photo.jpg';
$im=imagecreatefromjpeg($filename);
imagecopymerge($im,$pic,0,0,0,0,250,30,50);
imagejpeg($im);


//pChart 示例代码:

/*
     Example14: A smooth flat pie graph
*/

办法直接去 include/common.inc.php教程中将

----
//禁止 session.auto_start
if ( ini_get('session.auto_start') != 0 )
{
    exit('php.ini session.auto_start must is 0 ! ');
}
----
删除.

==================
这个删除后,再往下找。。。
还有一处有
if ( ini_get('register_globals') )
{
    exit('php.ini register_globals must is Off! ');
}

删除后可完美解决。

 

需要删除的部分为:
1. 第10-20行
//开启register_globals会有诸多不安全可能性,因此强制要求关闭register_globals
if ( ini_get('register_globals') )
{
    exit('php.ini register_globals must is Off! ');
}

//禁止 session.auto_start
if ( ini_get('session.auto_start') != 0 )
{
    exit('php.ini session.auto_start must is 0 ! ');
}

2.第72到75行
if ( ini_get('register_globals') )
{
    exit('php.ini register_globals must is Off! ');
}

以上两处删除即可完美解决!

在apche的php.ini中 搜索这一项,你们的应该是register_globals = on 修改为register_globals = off   保存 重启服务器环境  比如重启apche

 

早上更新主要是对register_globals以及session.auto_start进行严格过滤
如果是独立服务器的用户可以修改php配置文件中的php.ini,将register_globals=On改为register_globals=Off
同时把session.auto_start=1改成session.auto_start=0,然后重启Apache.
如果是虚拟主机的用户,尽可能的通知空间商让其对配置进行修改,或者可以尝试ini_set('session.auto_start',0)来.
如果实在不行,那只有采用最后的办法直接去include/common.inc.php中将

----
//禁止 session.auto_start
if ( ini_get('session.auto_start') != 0 )
{
    exit('php.ini session.auto_start must is 0 ! ');
}

Linux下安装MySql+Apache2+PHP5.3.1教程

请先下载下面三个安装必要的软件

 

  • 01-04php-5.3.1.tar.gz.html">php-5.3.1.tar.gz安装包下载
  • 01-04httpd-2.2.14.tar.gz 安装包下载
  • 01-04mysql-5.1.42-linux-i686-glibc23.tar.gz.html">mysql-5.1.42-linux-i686-glibc2

     


    一、安装apache2————————————————————————————————–

    1、tar -zvxf httpd-2.2.14.tar.gz
    2、cd httpd-2.2.14
    3、./configure –enable-modules=so –enable-rewrite
    4、make
    5、make install
    6、/usr/local/apache2/bin/apachectl -k start //启动apahce
    用浏览器查看[url]http://localhost[/url],得到it works,说明apache已经配置成功了.
    7、/usr/local/apache2/bin/apachectl -k stop //停止apache
    8、apache安装成功并启动后,重启机器后并不会自动启动apache,需要手动启动,要设置随机启动执行指令:echo “/usr/local/apache2/bin/apachectl” >>/etc/rc.d/rc.local,指令的意思是把”/usr/local/apache2/bin/apachectl” 这个字串附到rc.local这个文件的最后一行,rc.local是一个在linux启动成功后要去执行的一个scripts file。
    9、安装apache2修改/usr/local/apache/conf/httpd.conf发现不会生效,这很可能是系统使用了默认的安装httpd(默认httpd的配置文件在:/etc/httpd/conf/httpd.conf)。要卸载系统默认安装的httpd执行指令:rpm -e httpd。 如果有依赖关系卸载不了 后面加参数 — nodeps。
    指令:

    rpm -e httpd --nodeps(如要卸载系统的httpd,则执行)
    tar -zvxf httpd-2.2.14.tar.gz
    cd httpd-2.2.14
    ./configure --enable-modules=so --enable-rewrite
    make
    make install 
    /usr/local/apache2/bin/apachectl  start
    echo "/usr/local/apache2/bin/apachectl" >>/etc/rc.d/rc.local


    二、安装MySql————————————————————————————————–

    1、解压 mysql-5.1.42-linux-i686-glibc23.tar.gz 文件(i686是32位操作系统,glibc23是编译好的二进制文件,解压即可使用),将产生的文件夹拷贝到 /usr/local/mysql,并切换到该目录下
    2、sudo groupadd mysql –> 创建mysql用户组
    3、sudo useradd -g mysql mysql –> 创建mysql用户,并添加到mysql用户组中
    4、sudo chown -R mysql . –> 将mysql下所有文件的所有人设置为mysql用户、sudo chgrp -R mysql . –> 将mysql下所有文件的所有组设置为mysql用户组(注意做完该步后,进去data目录,用”ll”指令查看所有文件的owner以及group,如果有不属于mysql的,在data目录重复执行该步骤指令)
    6、执行 scripts/mysql_install_db –> 创建MySQL数据库实例
    7、将/usr/local/mysql/support-files/下的mysql.server 拷贝到/etc/init.d/下,命名为 mysqld
    8、将/usr/local/mysql/support-files/下的my-medium.cnf 拷贝到/etc/下,命名为 my.cnf
    9、此时可以用service mysqld start 来启动mysql服务,启动后,通过 netstat -atln命令能看到3306端口被占用
    10、MySQL的root用户默认没有密码,可以通过 /usr/local/mysql/bin/mysqladmin -u root password “新的密码” 来设置初始密码。
    指令:

    tar -zxvf mysql-5.1.42-linux-i686-glibc23.tar.gz
    cp -a mysql-5.1.42-linux-i686-glibc23 /usr/local/mysql
    cd /usr/local/mysql
    groupadd mysql
    useradd -g mysql mysql 
    chown -R mysql .
    chgrp -R mysql .
    scripts/mysql_install_db
    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld 
    cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
    service mysqld start
    netstat -atln
    /usr/local/mysql/bin/mysqladmin -u root password "1q2w3e"


    三、安装PHP5.3.1————————————————————————————————–

    1、tar -zvxf php-5.3.1.tar.gz 解压
    2、cd php-5.3.1 切换目录
    3、./configure –with-apxs2=/usr/local/apache2/bin/apxs –with-mysql=/usr/local/mysql
    4、make
    5、make install
    6、cp php.ini-development /usr/local/php5/lib/php.ini
    指令:

    tar -zvxf php-5.3.1.tar.gz
    cd php-5.3.1
    ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql
    make
    make install
    cp php.ini-development /usr/local/lib/php.ini
    四、重新配置apache2让他支持php————————————————————————————————–

    cd /usr/local/apache2/conf
    vim httpd.conf
    添加LoadModule php5_module modules/libphp5.so
    添加AddType application/x-httpd-php .php
    或者

    <FilesMatch .php$>
        SetHandler application/x-httpd-php
    </FilesMatch>

     

  • [!--infotagslink--]

    相关文章

    • php 获取用户IP与IE信息程序

      php 获取用户IP与IE信息程序 function onlineip() { global $_SERVER; if(getenv('HTTP_CLIENT_IP')) { $onlineip = getenv('HTTP_CLIENT_IP');...2016-11-25
    • php简单用户登陆程序代码

      php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p>&nbsp;</p> <p>&nbsp;</p> <form name="form1...2016-11-25
    • php根据用户语言跳转相应网页

      当来访者浏览器语言是中文就进入中文版面,国外的用户默认浏览器不是中文的就跳转英文页面。 <&#63;php $lan = substr(&#8194;$HTTP_ACCEPT_LANGUAGE,0,5); if ($lan == "zh-cn") print("<meta http-equiv='refresh' c...2015-11-08
    • php有效防止同一用户多次登录

      【问题描述】:同一用户在同一时间多次登录如果不能检测出来,是危险的。因为,你无法知道是否有其他用户在登录你的账户。如何禁止同一用户多次登录呢? 【解决方案】 (1) 每次登录,身份认证成功后,重新产生一个session_id。 s...2015-11-24
    • php ajax注册验证用户名是否存在代码

      这是注册程序是一款当用户输入完用户名是,就会自动去数据库中查询用户要注册的用户名是否己经被注册了,如果是返回提示否则提示可以注册。 conn.php文件 代...2016-11-25
    • js检测用户输入密码强度

      一个用Javascript检测用户输入密码强度的效果代码,以下代码主要是从以下四个方面检测用户输入的密码的强度的,有兴趣的朋友可以自己添加或修改成自己想要的形式! 1. 如果输入的密码位数少于5位,那么就判定为弱。 2. 如果...2015-10-23
    • 微信小程序用户授权最佳实践指南

      这篇文章主要给大家介绍了关于微信小程序用户授权最佳实践的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-05-08
    • 简单php cookie用户登录实例

      cookie 的用途之一是存储用户在特定网站上的密码和 id。另外,也用于存储起始页的首选项。在提供个人化查看的网站上,将要求阁下的网络浏览器利用阁下计算机硬驱上的少量...2016-11-25
    • MySQL验证用户权限的方法

      知识归纳因为MySQL是使用User和Host两个字段来确定用户身份的,这样就带来一个问题,就是一个客户端到底属于哪个host。 如果一个客户端同时匹配几个Host,对用户的确定将按照下面的优先级来排 基本观点越精确的匹配越优先...2015-11-08
    • sqlserver添加sa用户和密码的实现

      这篇文章主要介绍了sqlserver添加sa用户和密码的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-05-07
    • 在C#中使用二叉树实时计算海量用户积分排名的实现详解

      这篇文章主要介绍了在C#中使用二叉树实时计算海量用户积分排名的实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
    • mysql误删root用户恢复方法

      装完数据库清理一些默认账号的时候不小心把root删除了,flush privileges 之后的新 root 忘了grant任何权限,查看mysqld选项里面有个 &#8722;&#8722;skip-grant-tables复制代码 代码如下: #/usr/libexec/mysqld --verbos...2015-03-15
    • Win2012服务器 远程桌面帐户允许多用户同时登录的配置方法

      这篇文章主要介绍了Win2012服务器 远程桌面帐户允许多用户同时登录的配置方法,需要的朋友可以参考下...2016-11-01
    • 如何有效提高网站的用户回头率

      第一,网站的内容;请各位站长朋友不要一天到晚只想着出什么好的绝招来推广网站,却忽略了网站的内容;其实网站的内容是极为重要的,因为这是你的本,你的根!网站的内容只有不断...2017-07-06
    • 关于JSP用户登录连接数据库详情

      这篇文章主要介绍了关于JSP用户登录连接数据库的相关资料,需要的朋友可以参考下面文章内容...2021-09-07
    • 超详细的php用户注册页面填写信息完整实例(附源码)

      注册页面是大多数网站必备的页面,所以很有必要对自己的注册页面做些精心的设计。下面三张图,第一张是注册的展示页面,第二张思维导图就一个简单的逻辑,第三张是通过firebug查看调用的JS文件。 一、给每个输入框写下说明在...2015-11-24
    • 如何判断用户是否访问过某个网址

      一位站长译的一个国外的如何判断用户是否访问过某个网址文章,个人感觉写得非常不错,下面分享一下。 我们经常有这样的需求:想知道用户之前有没有访问过某个网址。有...2016-09-20
    • Oracle用户自定义异常实现过程解析

      这篇文章主要介绍了Oracle用户自定义异常实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-09-29
    • php 用户登录代码

      代码如下 复制代码 <? error_reporting(0); if(isset($_post['post']) && $_post['post']=="1"){ $mysql教程_servername = "localhost";...2016-11-25
    • sqlserver 普通用户运行错误解决方法补充

      本方法作为Windows2003服务器安装及设置教程——MSSQL安全篇一(将MS SQL SERVER运行于普通用户下)的补充,成功解决了不能将sqlserver运行在普通用户的权限下的问题。...2016-01-27