• Uncle Liu's Blog
  • 追忆曾经逝去的岁月,在此存放我容易丢失的记忆!
  • 首页
  • 碎语
  • 留言板
  • 登录
  • php+js动态显示进度条

    [PHP+MYSQL]
    post by Uncle Liu / 2009-7-19 10:24 Sunday
    PHP代码
    1. <?php    
    2. if ('source' == $_GET['act']) {           //查看源代码   
    3. show_source($_SERVER["SCRIPT_FILENAME"]);   
    4. exit;   
    5. }   //end if   
    6. set_time_limit(0);   
    7. for ($i = 0; $i < 500; $i++) {   
    8. $users[] = 'Tom_' . $i;   
    9. }   //end for   
    10. $width = 500;                      //显示的进度条长度,单位 px   
    11. $total = count($users);     //总共需要操作的记录数   
    12. $pix = $width / $total;        //每条记录的操作所占的进度条单位长度   
    13. $progress = 0;                   //当前进度条长度   
    14. ?>    
    15. <html>    
    16. <head>    
    17.     <title>动态显示服务器运行程序的进度条</title>    
    18.     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    
    19.     <style>    
    20.     body, div input { font-family: Tahoma; font-size: 9pt }    
    21.     </style>    
    22.     <script language="JavaScript">    
    23.     <!--   
    24.     function updateProgress(sMsg, iWidth)   
    25.     {   
    26.     document.getElementById("status").innerHTML = sMsg;   
    27.     document.getElementById("progress").style.width = iWidth + "px";   
    28.     document.getElementById("percent").innerHTML = parseInt(iWidth / <?php echo $width; ?> * 100) + "%";   
    29.     }   
    30.     //-->   
    31.     </script>        
    32. </head>   
    33.   
    34. <body>    
    35. <div style="margin: 4px; padding: 8px; border: 1px solid gray; background: #EAEAEA; width: <?php echo $width+8; ?>px">    
    36.     <div><font color="gray">如下进度条的动态效果由服务器端 PHP 程序结合客户端 JavaScript 程序生成。</font></div>    
    37.     <div style="padding: 0; background-color: white; border: 1px solid navy; width: <?php echo $width; ?>px">    
    38.     <div id="progress" style="padding: 0; background-color: #FFCC66; border: 0; width: 0px; text-align: center;   height: 16px"></div>                
    39.     </div>    
    40.     <div id="status"> </div>    
    41.     <div id="percent" style="position: relative; top: -30px; text-align: center; font-weight: bold; font-size: 8pt">0%</div>    
    42. </div>    
    43. <?php    
    44. flush();    //将输出发送给客户端浏览器   
    45. foreach ($users as $user) {   
    46. //   在此处使用空循环模拟较为耗时的操作,实际应用中需将其替换;   
    47. //   如果你的操作不耗时,我想你就没必要使用这个脚本了 :)   
    48. for ($i = 0; $i < 1000000; $i++) {   
    49.    ;;   
    50. }   
    51. ?>    
    52. <script language="JavaScript">    
    53. updateProgress("正在操作用户“<?php echo $user; ?>” ....", <?php echo min($width, intval($progress)); ?>);   
    54. </script>    
    55. <?php    
    56. flush();    //将输出发送给客户端浏览器,使其可以立即执行服务器端输出的 JavaScript 程序。   
    57. $progress += $pix;   
    58. }   //end foreach   
    59. //   最后将进度条设置成最大值 $width,同时显示操作完成   
    60. ?>    
    61. <script language="JavaScript">    
    62. updateProgress("操作完成!", <?php echo $width; ?>);   
    63. </script>    
    64. <?php    
    65. flush();   
    66. ?>    
    67. <input type="button" value="查看源码" onclick="document.location.href='<?php echo $_SERVER['PHP_SELF']; ?>?act=source'" />    
    68. </body>    
    69. </html>   
    70.     
    « emlog 静态化插件 | PHP生成html分页列表»

    引用地址:

    有以下朋友发表了自己的看法:

    Gravatar Coach Factory Outlet
    2011-12-12 15:23
    感谢分享哈。。
    Gravatar Cheap Nike Shoes
    2011-11-25 09:16
    中国娃娃
    Gravatar wigs cheap
    2011-10-10 21:44
    不懂啊

    发表评论:

  • 搜索

  • 岁月如梭

  • 分类

    • 心情记事(40) 订阅该分类
    • 经典网文(30) 订阅该分类
    • PHP+MYSQL(40) 订阅该分类
    • Javascript(21) 订阅该分类
    • 电脑网络(33) 订阅该分类
    • emlog(7) 订阅该分类
    • Linux(2) 订阅该分类
  • 日历

  • 随机日志

    • ctrl加回车提交
    • 解决上海电信DNS劫持
    • php禁止IP访问代码
    • 酒桌应酬十八条
    • 英雄无泪--汪正正
  • 链接

    • TangJun's blog
    • vb.vc个性域名
    • 点滴记忆
    • 奇遇——心情随笔
    • Sfan@Live
    • 乐小北
    • 游戏毁我半生
    • 铁观音茶叶
    • ═╬簡箪√嗳
    • KLLER's Blog
    • Web前端开发
    • 零度自由
    • PHP100中文站论坛
    • Api.im
    • emlog
  • 最新日志

    • 茶汤
    • 操蛋的一年终于过去了
    • 域名城第16届域名大赛 - “非6勿扰”双拼.com域名大赛
    • 永远的兄弟
    • 夜半孤寂茶当酒,一壶独饮到天明
  • soft

    • 分类信息
订阅Rss
Powered by emlog | Loekman 主题 | 沪ICP备09020591号