展BOM

准备用QUERY展BOM,然后在report script里面写出展BOM的逻辑

写了两天都没写出来

决定回上海后,写个.NET程序,一定要把展BOM解决了。

竟然又被挂马

真是无语了

健身网竟然被挂马

而且是几乎每个文件都被挂了

真不知道该怎么弄了

mysql常用命令

由于种种原因,最近准备换PHP的系统,研究一下DEDE和DISCUZ,结果发现环境很难搭建,最后找了个EXP,才终于搭建成功。装了个MYSQL,结果发现没有图形化界面,只好BAIDU了一些资料,也为正在准备换PHP的朋友参考一下。

一、连接MySQL。

格式: mysql -h主机地址 -u用户名 -p用户密码

1、例1:连接到本机上的MYSQL。

  首先在打开 DOS 窗口,然后进入目录 mysqlbin,再键入命令mysql -u root -p,回车后提示你输密码,如果刚安装好 MySQL,超级用户 root 是没有密码的,故直接回车即可进入到 MySQL 中了,MySQL 的提示符是:mysql>

2、例2:连接到远程主机上的 MySQL。

  假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:

mysql -h 110.110.110.110 -u root -p abcd123

(注:u与root可以不用加空格,其它也一样)

3、退出 MySQL 命令: quit 或 exit (回车)

二、修改密码。

格式:mysqladmin -u用户名 -p password 新密码

1、例1:给root加个密码ab12。首先在DOS下进入目录mysqlbin,然后键入以下命令

mysqladmin -u root -password ab12

注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。

2、例2:再将root的密码改为djg345。

mysqladmin -u root -p password djg345

三、增加新用户。

(注意:和上面不同,下面的因为是 MySQL 环境中的命令,所以后面都带一个分号作为命令结束符)

格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码"

例1、增加一个用户 test1 密码为 abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以 root 用户连入 MySQL,然后键入以下命令:

grant select, insert, update, delete on *.* to test1@"%" Identified by "abc";

但例1增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2。

例2、增加一个用户test2密码为abc,让他只可以在www.denghaigang.com上登录,并可以对数据库 mydb进行查询、插入、修改、删除的操作(www.denghaigang.com指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。

grant select, insert, update,delete on mydb.* to test2@denghaigang.com identified by "abc";

  如果你不想test2有密码,可以再打一个命令将密码消掉。

grant select, insert, update, delete on mydb.* to test2@denghaigang.com identified by "";

  在上篇我们讲了登录、增加用户、密码更改等问题。下篇我们来看看MYSQL中有关数据库方面的操作。注意:你必须首先登录到MYSQL中,以下操作都是在MYSQL的提示符下进行的,而且每个命令以分号结束。

一、操作技巧

1、如果你打命令时,回车后发现忘记加分号,你无须重打一遍命令,只要打个分号回车就可以了。也就是说你可以把一个完整的命令分成几行来打,完后用分号作结束标志就OK。

2、你可以使用光标上下键调出以前的命令。但以前我用过的一个MYSQL旧版本不支持。我现在用的是mysql-3.23.27-beta-win。

二、显示命令

1、显示数据库列表。

show databases;

  刚开始时才两个数据库:mysql 和 test。mysql 库很重要它里面有 MySQL 的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。

2、显示库中的数据表:

use mysql; //打开库,学过 FOXBASE 的一定不会陌生吧

show tables;

3、显示数据表的结构:

describe 表名;

4、建库:

create database 库名;

5、建表:

use 库名;

create table 表名 (字段设定列表);

6、删库和删表:

drop database 库名;

drop table 表名;

7、将表中记录清空:

delete from 表名;

8、显示表中的记录:

select * from 表名;

论坛防注册机发帖代码-dvbbs

方法一:

<%
‘——-针对信息产业局服务器一流信息监控的动网防广告代码
‘说明:防注册机核心检测代码
‘–检测当前是否访问reg.asp 即进行注册的相关操作
If server.mappath(Request.ServerVariables("SCRIPT_NAME")) = Server.MapPath("reg.asp") Then
‘判断Session对象是否被赋值
If Session("AllowReg") <> 1 Then
Response.Write("<script language=""javascript"">" & VbCrLf)
Response.Write("<!–" & VbCrLf)
Response.Write("alert (""论坛启用了新防注册机机制,给您注册时带来的不便,敬请原谅!"");" & VbCrLf)
Response.Write("alert (""注册前请您先浏览论坛任意版块中的任意一个帖子,既可注册!"");" & VbCrLf)
Response.Write("window.location.href = ""index.asp"";" & VbCrLf)
Response.Write("// ->" & VbCrLf)
Response.Write("</script>" & VbCrLf)
Response.End
End if
End if

‘检测是否在查看公告页面
If server.mappath(Request.ServerVariables("SCRIPT_NAME")) = Server.MapPath("dispbbs.asp") Then
If Session("AllowReg") <> 1 Then
Session("AllowReg") = 1
End if
End if

%> 

复制到CONN里面,或每个页面都会调用的页面也行

方法二:

第一步:增加注册必填项目
 

动网默认风格分页面模板(page_login)界面风格管理template.html(13) 找到:

<script language="JavaScript" src="inc/Mymodify.js" type="text/javascript"></script>

在下面加入:

<script language="JavaScript">
<!–
function DaoAuto_onclick(){
var user2="";
var user1=document.theForm.{$username}.value;
if (user1=="")
{
alert("你不会吧,用户名都没填写怎么能生成倒填项!");
}
else{
Koomv_length=parseInt(user1.length);
for (i=1;i<=Koomv_length;i++)
{
user2=user2+user1.charAt(Koomv_length-i);
}
document.theForm.username_che.value=user2;
}
}
//–>
</script>

再找到:

<td width="40%" class="tablebody1"><input type="hidden" name="{$hidden}" value="{$hidden}">
<b>用户名</b>:<br />注册用户名长度限制为{$NameLimLength}-{$NameMaxLength}字节</td>
<td width="60%" class="tablebody1">
<input name="{$username}" id="{$username}" type="text" size="30" maxlength="{$NameMaxLength}" onkeyup="dv_ajaxcheck(‘checkusername’,'{$username}’);" style="float:left"/>
<div id="isok_{$username}" class="forminfo"></div>
</td>
</tr>
{$getcode}

在下面加入:

<TR>
<TD class=tablebody1><B>用户名倒填项</B>:<BR><font color="red">为防止暴力注册,请将你的用户名倒填一下</font><br>如“<font color="blue">葛洲坝娱乐吧</font>”填为:“<font color="blue">吧乐娱坝洲葛</font>”,请按自动倒填按钮!</TD>
<TD class=tablebody1>
<input type="text" name="username_che" size="30" readonly="true">
<input type="button" name="DaoAuto" value="点击自动填写倒填项!!" onclick="DaoAuto_onclick()">
</TD>
</TR>

第二步:倒填检测项修改(reg.asp文件)

用记事本打开reg.asp文件,找到:

‘防止填写QQ号码为非数字类型 2005-3-22 Dv.Yz
If Isnumeric(Request.Form("OICQ")) Then
Qq = Int(Request.Form("OICQ"))
Else
Qq = ""
End If

在下面加入:

‘防暴力用户名倒填判断检测代码开始
dim username_che,rosLen,name_D,koomv_name
If Request.form("username_che")="" Then
Response.redirect "showerr.asp?ErrCodes=<li>葛吧提醒:请您填写好用户名倒填项,否则无法注册哦!&action=OtherErr"
Else
koomv_name=Request.form("username_che")
rosLen=Len(koomv_name)
do while rosLen<>0
name_D=name_D+mid(koomv_name,rosLen,1)
if rosLen=0 then
exit do
else
rosLen=rosLen-1
end if
loop
username_che=name_D
If username_che<>username Then
Response.redirect "showerr.asp?ErrCodes=<li>葛吧提醒:你倒填的用户名没有通过系统验证,为了锻炼你的逆向思维,请继续!!&action=OtherErr"
End If
End If
‘防暴力用户名倒填判断检测代码结束

ASP获取多个CheckBox的值

<form id="form" name="form" method="post" action="/temp/test9.asp">
   <input name="yi" type="checkbox" id="yi" value="111" />
   <input name="yi" type="checkbox" id="yi" value="222" />
   <input name="yi" type="checkbox" id="yi" value="333" />
   <input type="submit" name="Submit" value="提交" />
</form>

request("yi")

将得到111, 222, 333

For each formName in request.Form
   formName = trim(formName)
   formValue = trim(request.form(formName))
   Response.Write(formName&"="&formValue&"<br/>")
Next

request.form("checkbox控件的id")

在前一页呢,这些控件你如果是同一组的,就是id都是相同的,那这里得到的就是它们被选中的控件的value值,每个value值中间是用,分割的

如果你要一个一个单独处理呢,只要用split函数就成把每一个value值取到了

 

eg:

dayes = request.Form("dayes")
dayes=split(dayes,",")
for i=0 to ubound(dayes)
%>
<%response.Write(dayes(i))
next%>