http://www.w3school.com.cn/php/php_forms.asp
http://www.5idev.com/p-php_class_object.shtml
以版本phpMyAdmin-2.6.1.tar.gz为例
先解压phpMyAdmin-2.6.1.tar.gz到/usr/local/apache2/htdocs,
得到文件夹phpMyAdmin-2.6.1,将其重命名为phpmyadmin,(这样在以后的操作中将会变的简便)。
进入到phpmyadmin文件夹,用vim命令打开config.inc.php。
即#vim config.inc.php.
加密只需要修改两个部分:
1、 找到 $cfg['Servers'][$i]['auth_type'] = 'config';(第83行),将config改为http。
如我的是:$cfg['Servers'][$i]['auth_type'] = 'http';
2、 紧接着两行填上数据库的用户名和密码即可
如我的是:$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '123456';
Phpmyadmin中MySQL加密就完成了!
*****************************************************
Phpmyadmin配置过程中还有一处需要修改的:
找到$cfg['PmaAbsoluteUri'] = '';(39行)
在后面填上你的服务器的phpmyadmin的绝对地址即可
如我的是:
$cfg['PmaAbsoluteUri'] = 'http://10.10.19.167/phpmyadmin';
这样phpmyadmin配置完成,简单吧!(注:不同的版本可能会不同)
----------------------------------------------------------------------------------------------
Ajax的应用
要想应用Ajax,首先必须搞清楚Ajax的执行原理:一个Ajax交互从一个称为XMLHttpRequest的JavaScript对象开始。如同名字所暗示的,它允许一个客户端脚本来执行HTTP请求,并且将会解析一个XML格式的服务器响应。Ajax处理过程中的第一步是创建一个XMLHttpRequest实例。使用HTTP方法(GET或POST)来处理请求,并将目标URL设置到XMLHttpRequest对象上。
当你发送HTTP请求,你不希望浏览器挂起并等待服务器的响应,取而代之的是,你希望通过页面继续响应用户的界面交互,并在服务器响应真正到达后处理它们。要完成它,你可以向XMLHttpRequest注册一个回调函数,并异步地派发XMLHttpRequest请求。控制权马上就被返回到浏览器,当服务器响应到达时,回调函数将会被调用。
看这些你可能看不懂,太抽象了!下面我给个Ajax的实际例子:
1. 初始化Ajax
Ajax实际上就是调用了XMLHttpRequest对象,那么首先我们的就必须调用这个对象,我们构建一个初始化Ajax的函数:
function InitAjax()
{
var ajax=false;
try
{
ajax = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
ajax = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E)
{
ajax = false;
}
}
if (!ajax && typeof XMLHttpRequest!='undefined')
{
ajax = new XMLHttpRequest();
}
return ajax;
}
我们在执行任何Ajax操作之前,都必须先调用InitAjax()函数来实例化一个Ajax对象。这个函数可以作为一个通用函数来用,当然这个函数也有其他的写法,此处写的比较简单,因为大多数浏览器都支持Ajax。
2. 使用Get方式
现在我们第一步来执行一个Get请求,加入我们需要获取 /show.php?id=1的数据,那么我们应该怎么做呢?
假设有一个链接:<a href="/show.php?id=1">新闻1</a>,我点该链接的时候,不想任何刷新就能够看到链接的内容,那么我们该怎么做呢?
//将链接改为:
<a href="#" onClick="getNews(1)">新闻1</a>
//并且设置一个接收新闻的层,并且设置为不显示:
<div id="show_news"></div>
同时构造相应的JavaScript函数:
function getNews(newsID)
{
//如果没有把参数newsID传进来
if (typeof(newsID) == 'undefined')
{
return false;
}
//需要进行Ajax的URL地址
var url = "/show.php?id="+ newsID;
//获取新闻显示层的位置
var show = document.getElementById("show_news");
//实例化Ajax对象
var ajax = InitAjax();
//使用Get方式进行请求
ajax.open("GET", url, true);
//获取执行状态
ajax.onreadystatechange = function() {
//如果执行是状态正常,那么就把返回的内容赋值给上面指定的层
if (ajax.readyState == 4 && ajax.status == 200)
{
show.innerHTML = ajax.responseText;
}
}
//发送空
ajax.send(null);
}
当用户点击“新闻1”这个链接的时候,在下面对应的层将显示获取的内容,而且页面没有任何刷新。当然,上面省略了show.php这个文件,我们只是假设show.php文件存在,并且能够正常工作的从数据库中把id为1的新闻提取出来。这种方式适应于页面中任何元素,包括表单等等,其实在应用中,对表单的操作是比较多的,针对表单,更多使用的是POST方式。
下面是我做的一个简单的例子:
1、test.php文件代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>ajax测试页</title>
<style type="text/css">
<!--
body {
margin-left: 10%;
margin-right: 10%;
}
#Layer1 {
position:absolute;
width:256px;
height:326px;
z-index:1;
left: 380px;
top: 16px;
}
-->
</style>
<script type="text/javascript">
function InitAjax()
{
var ajax=false;
try
{
ajax = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
ajax = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E)
{
ajax = false;
}
}
if (!ajax && typeof XMLHttpRequest!='undefined')
{
ajax = new XMLHttpRequest();
}
return ajax;
}
function getimages(id)
{
var url = "images.php?picture="+id;
var show = document.getElementById("Layer1");
var ajax = InitAjax();
ajax.open("GET", url, true);
ajax.onreadystatechange = function()
{
if (ajax.readyState == 4 && ajax.status == 200)
{
show.innerHTML = ajax.responseText;
}
}
ajax.send(null);
}
</script>
</head>
<body>
<table width="226" height="433" border="1" align="left" cellpadding="3" rules="none" frame="rhs">
<tr>
<th height="69" scope="col" align="right"><input type="button" name="" value="图片一" οnclick="getimages(1)"></th>
</tr>
<tr>
<th height="69" scope="col" align="right"><input type="button" name="" value="图片二" οnclick="getimages(2)"></th>
</tr>
<tr>
<th height="69" scope="col" align="right"><input type="button" name="" value="图片三" οnclick="getimages(3)"></th>
</tr>
<tr>
<th height="214" scope="col"></th>
</tr>
</table>
<div id="Layer1"></div>
</body>
</html>
2、images.php文件代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>图片</title>
</head>
<body>
<?php
$id=$_GET["picture"];
if($id==1)
{
printf("<img src='images/1.jpg' width='320' height='440' />");
}
if($id==2)
{
printf("<img src='images/2.jpg' width='320' height='440' />");
}
if($id==3)
{
printf("<img src='images/3.jpg' width='320' height='440' />");
}
?>
</body>
</html>
只要在images文件夹下有这三个图片就可以了!
Ajax提交数据的常用方法
一般情况下,使用Ajax提交的参数多是些简单的字符串,可以直接使用GET方法将要提交的参数写到open方法的url参数中,此时send方法的参数为null。
例如 :
var url = "login.jsp?user=XXX&pwd=XXX";
xmlHttpRequest.open("GET",url,true);
xmlHttpRequset.send(null);
此外,也可以使用send方法传递参数。使用send方法传递参数使用的是POST方法,需要设定Content-Type头信息,模拟HTTP POST方法发送一个表单,这样服务器才会知道如何处理上传的内容。参数的提交格式和GET方法中url的写法一样。设置头信息前必须先调用open方法。
例如:
xmlHttpRequest.open("POST","login.jsp",true);
xmlHttpRequest.setRequestHeder("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");
xmlHttpRequest.send("user="+username+"&pwd="+password);
需要注意的是根据提交方式的不同,两种提交方式分别调用后台的doGet方法和doPost方法。 ....