PHP&JavaScript控制系列:客户端数据存储(三)
时间:2007-02-17 来源:PHP爱好者
PHP & Javascript控制系列:客户端数据存储(三)<br>
作者/来源:limodou <br>
<br>
PHP & Javascript控制系列:客户端数据存储(三)<br>
<br>
作者:Luis Argerich, Alejandro Mitrou 译者:limodou<br>
<br>
Ok, 然后是用于测试目的“form”帧:<br>
<br>
--------------------------------------------------------------------------------<br>
<?php <br>
<br>
session_start(); <br>
if (!isset($timestamp)) { <br>
$timestamp=0; <br>
} <br>
// 显示表单,使用Javascript来得到最后的时间戳<br>
if (isset($msg)) { <br>
<br>
$dab=mysql_connect("localhost", "root", "seldon"); <br>
mysql_select_db("testbase",$dab); <br>
<br>
$query= "insert into testeable(timestamp,message) values(now(),'$msg')"; <br>
mysql_query($query,$dab); <br>
// 现在得到在last_time之后的所有聊天对话<br>
$query= "select * from testeable where timestamp>'$tt'"; <br>
$result=mysql_query($query,$dab); <br>
$msgs=array();$i=0;$timestamp=0; <br>
while($res=mysql_fetch_array($result)) { <br>
$msgs[]=$res["message"]; <br>
if($res["timestamp"]>$timestamp) { <br>
$tt=$res["timestamp"]; <br>
} <br>
} <br>
session_register("timestamp"); <br>
// 现在我有了最大的时间戳,使用Javascript,我们可以设置这些值 ?> <br>
<script> <br>
<?php <br>
for($i=0;$i<$count($msgs);$i++) { <br>
?> <br>
top.lines[top.lines.length]="<?print("$msgs[$i]");?>"; <br>
<?php <br>
} <br>
?> <br>
top.display.location.reload(); <br>
<br>
</script> <br>
<?php <br>
<br>
} <br>
?> <br>
<form name="foo" action=" <?php print("$PHP_SELF"); ?>" method="post"> <br>
Message:<input type="text" name="msg"> <input type="submit" name="newmsg" value="send"> <br>
</form>--------------------------------------------------------------------------------<br>
注意,我们根据"form"帧来刷新显示,这对用户很好,因为一旦他提交了他的信息就会被马上看见。用户喜欢这样,因为它在聊天室中增加了一些动态机制。你也看到了,form帧与装入帧非常象。 <br>
<br>
我们向你展示了一个极为有用的技术,它通过将数据保存在客户端从而减少了c/s间的传输量,并且在客户执行一个复杂的显示操作时减少了从服务器的信息装入。现在你有了能力,去征服世界吧! <br>
php爱好者站 http://www.phpfans.net 为phper提供一切资讯.
作者/来源:limodou <br>
<br>
PHP & Javascript控制系列:客户端数据存储(三)<br>
<br>
作者:Luis Argerich, Alejandro Mitrou 译者:limodou<br>
<br>
Ok, 然后是用于测试目的“form”帧:<br>
<br>
--------------------------------------------------------------------------------<br>
<?php <br>
<br>
session_start(); <br>
if (!isset($timestamp)) { <br>
$timestamp=0; <br>
} <br>
// 显示表单,使用Javascript来得到最后的时间戳<br>
if (isset($msg)) { <br>
<br>
$dab=mysql_connect("localhost", "root", "seldon"); <br>
mysql_select_db("testbase",$dab); <br>
<br>
$query= "insert into testeable(timestamp,message) values(now(),'$msg')"; <br>
mysql_query($query,$dab); <br>
// 现在得到在last_time之后的所有聊天对话<br>
$query= "select * from testeable where timestamp>'$tt'"; <br>
$result=mysql_query($query,$dab); <br>
$msgs=array();$i=0;$timestamp=0; <br>
while($res=mysql_fetch_array($result)) { <br>
$msgs[]=$res["message"]; <br>
if($res["timestamp"]>$timestamp) { <br>
$tt=$res["timestamp"]; <br>
} <br>
} <br>
session_register("timestamp"); <br>
// 现在我有了最大的时间戳,使用Javascript,我们可以设置这些值 ?> <br>
<script> <br>
<?php <br>
for($i=0;$i<$count($msgs);$i++) { <br>
?> <br>
top.lines[top.lines.length]="<?print("$msgs[$i]");?>"; <br>
<?php <br>
} <br>
?> <br>
top.display.location.reload(); <br>
<br>
</script> <br>
<?php <br>
<br>
} <br>
?> <br>
<form name="foo" action=" <?php print("$PHP_SELF"); ?>" method="post"> <br>
Message:<input type="text" name="msg"> <input type="submit" name="newmsg" value="send"> <br>
</form>--------------------------------------------------------------------------------<br>
注意,我们根据"form"帧来刷新显示,这对用户很好,因为一旦他提交了他的信息就会被马上看见。用户喜欢这样,因为它在聊天室中增加了一些动态机制。你也看到了,form帧与装入帧非常象。 <br>
<br>
我们向你展示了一个极为有用的技术,它通过将数据保存在客户端从而减少了c/s间的传输量,并且在客户执行一个复杂的显示操作时减少了从服务器的信息装入。现在你有了能力,去征服世界吧! <br>
php爱好者站 http://www.phpfans.net 为phper提供一切资讯.
相关阅读 更多 +