初用sajax+php几小时有感

来源:互联网 发布:外贸邮件软件 编辑:程序博客网 时间:2024/04/28 04:48

Ajax实在是太有名了,以至于不得不看,用了之后才觉的不难,只是基于js的一个应用而已

花了一小时写了一个php+mysql+sajax的小段。虽没有掌握其精髓,但还是有感而发,当然我指的是SAjax开发包上的应用,下次有时间会试试XAjax,谈点体会吧

1.在功能要求不复杂的情况下,iframe应该比ajax好用的多

2.sajax短小简捷,虽然功能并不太强,速度很快,一般性的应用没什么问题

3.要增加额外的三段代码

4.要定义函数,在应用时全局变量要多定义一次

5.关于sajax中文问题,用header(字符集)来解决,而并非象网上说的改动sajax.php文件

详细代码,未经整理,部分函数为自定义分页函数,以及mysql操作类

<?php
require("cla_mysql.php");
require("conn.php");
require("Sajax.php");
header('Content-Type:text/html;charset=gb2312');

function getTextFromSever($page){
 global $sys_db;
 global $db_prefix;
 $tmp_sql="select count(*) as amount from ".$db_prefix."log";
 $num=$sys_db->clf_query_row($tmp_sql,0);
 $page=check_page($num,$page);
 $url="get_date";
 if( $num >0 ){
  $tmp_sql="select * from ".$db_prefix."log order by addtime desc ".sql_limit($page);
  $tmp_info=$sys_db->clf_return_array($tmp_sql);
 }
 $amount=count($tmp_info);
 ob_start(); 
 if($amount>0){
  echo "<table width=500 align=center border=1>";
 foreach($tmp_info as $key => $tpl_info){
?>
<tr height="25">
<td width=80>[<?=date("Y-m-d",$tpl_info[addtime]);?>]</td>
<td><a href="#"><?=substr($tpl_info[querystring],0,50)?></a></td>
</tr>
<?}?>
</table>
<table width=500 align=center border=1>
<tr height="25"><td><?php echo show_page($num,$page,$url,0);?></td>
<td align="right"><?php echo show_page($num,$page,$url,1);?></td></tr>
</table>
<?}
 $str=ob_get_contents();
 ob_end_clean();
 //$str="中文测试";
 return $str;
}

$sajax_debug_mode =0;
sajax_init();
sajax_export("getTextFromSever");
sajax_handle_client_request();
?>
<html>
<head>
<title>Hello,world</title>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312" />
</head>
<body>
<script type="text/javascript">
<?sajax_show_javascript();?>
function show_me(date_server){
 var sTemp = date_server;
 document.getElementById("date_div").innerHTML =sTemp;
}
function get_date(page){
 x_getTextFromSever(page,show_me);
}
get_date(0);
</script>
<div id="date_div">(loading...)</div>
</body>
</html>