免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 草上飞2008
打印 上一主题 下一主题

大赛评选结果已出,敬请关注!:PHP编程大赛隆重启动,PHP开发大挑战 [复制链接]

论坛徽章:
5
CU十周年纪念徽章
日期:2012-02-28 22:08:51CU大牛徽章
日期:2012-02-28 22:08:512010年中国数据库技术大会
日期:2012-02-28 22:05:302009年中国系统架构师大会
日期:2012-02-28 22:05:30ChinaUnix元老
日期:2012-02-28 22:26:02
181 [报告]
发表于 2010-10-06 08:04 |只看该作者
第18题, 通用性应该很好, 但这代码太多了,目前只能这样了
angle4 发表于 2010-10-05 15:03



   

论坛徽章:
5
CU十周年纪念徽章
日期:2012-02-28 22:08:51CU大牛徽章
日期:2012-02-28 22:08:512010年中国数据库技术大会
日期:2012-02-28 22:05:302009年中国系统架构师大会
日期:2012-02-28 22:05:30ChinaUnix元老
日期:2012-02-28 22:26:02
182 [报告]
发表于 2010-10-06 08:07 |只看该作者
哇, 还有时间阿,  一会过来凑个热闹
angle4 发表于 2010-10-04 21:50



    贴了这么多,还真是说到做到啊,

论坛徽章:
0
183 [报告]
发表于 2010-10-06 10:06 |只看该作者
回复 182# 草上飞2008

翻着php手册做的 , 平时不用php, 期待C开发大赛

论坛徽章:
1
2015元宵节徽章
日期:2015-03-06 15:51:33
184 [报告]
发表于 2010-10-06 15:06 |只看该作者
如何提交,就在跟帖中提交吗?

论坛徽章:
1
2015元宵节徽章
日期:2015-03-06 15:51:33
185 [报告]
发表于 2010-10-06 16:17 |只看该作者
我答第三题:
  1. <?php
  2.   function yanghuiTrangle($lineNum) {
  3.     $rowArr = array();
  4.     for ($i = 0; i < &lineNum; $i++) {
  5.       for ($j = 0; j <= $i; $j++) {
  6.         if ($j == 1 || $j == $i) rowArr[$i][$j] = 1;
  7.         else rowArr[$i][$j] = rowArr[$i-1][$j-1] + rowArr[$i-1][$j];
  8.       }
  9.     }

  10.     for ($i = 0; i < &lineNum; $i++) {
  11.       for ($j = 0; j <= $i; $j++) {
  12.         echo rowArr[$i][$j] . "&nbsp;";
  13.       }
  14.       echo "<br/>";
  15.     }


  16.    function yanghuiTrangle(5);

  17. ?>
复制代码

论坛徽章:
1
2015元宵节徽章
日期:2015-03-06 15:51:33
186 [报告]
发表于 2010-10-06 16:30 |只看该作者
汗第六题
原理如下:
  1. <?php
  2.   $data = array(1, 2, 3);
  3.   for ($i = 0; $i < $data.length; $i++) {
  4.     for ($j = $i; j < $data.length; $j++) {
  5.       echo $i . "." . $j . "=" . ($i + $j) . "&nbsp;";
  6.     }
  7.     echo "<br/>";
  8.   }

  9. ?>
复制代码

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
187 [报告]
发表于 2010-10-07 21:25 |只看该作者
17、有一个数组array('a','b','c','d','e','f'),请使用两段代码分别达成图1和图2中的效果。
图1:



图2:




第一种效果的PHP代码:

  1. <?php
  2. /**
  3.   * 产生第一种形式数组
  4.   * 参数:数组
  5.   * 返回:数组
  6.   */
  7. function generateArray1($arr){
  8.      if (sizeof($arr)<2) return $arr; //如果数组个数只有一个或者0个,返回原始值。
  9.      $r_arr=null;
  10.      for ($i=sizeof($arr) - 2;$i>=0;$i--){
  11.          if ($i == sizeof($arr) - 2){
  12.              $r_arr=array($arr[$i]=>$arr[sizeof($arr)-1]);
  13.          }else{
  14.              $r_arr=array($arr[$i]=>$r_arr);
  15.          }
  16.      }
  17.      return $r_arr;
  18. }
  19. $test_arr=array('a','b','c','d','e','f');
  20. print_r(generateArray1($test_arr));
  21. ?>
复制代码
第二种形式的代码:

  1. <?php
  2. /**
  3.   * 产生第二种形式数组
  4.   * 参数:数组
  5.   *       传入的值
  6.   * 返回:数组
  7.   */
  8. function generateArray2($arr,$value){
  9.      if (sizeof($arr)<1) return $arr; //如果数组个数只有0个,返回原始值。
  10.      $r_arr=null;
  11.      for ($i=sizeof($arr) - 1;$i>=0;$i--){
  12.          if ($i == sizeof($arr) - 1){
  13.              $r_arr=array($arr[$i]=>$value);
  14.          }else{
  15.              $r_arr=array($arr[$i]=>$r_arr);
  16.          }
  17.      }
  18.      return $r_arr;
  19. }
  20. $test_arr=array('a','b','c','d','e','f');  
  21. print_r(generateArray2($test_arr,'Value'));
  22. ?>
复制代码

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
188 [报告]
发表于 2010-10-08 09:51 |只看该作者
20、简述如何得到当前执行脚本路径,包括所得到参数。
说明:例如有一个脚本www.domain.com,传给他的参数有参数1,参数2,参数3….
传递参数的方法有可能是GET有可能是POST,那么现在请写出类似
http://www.domain.com/script.php? 参数1=值1&参数2=值2..... 的结果

PHP代码如下,比如文件名是allparam.php
  1. <?php
  2. $query_string = "";
  3. if ($_POST) { //如果是post方法,取得全部post参数及值后进行连接处理
  4.     $kv = array();
  5.     foreach ($_POST as $key => $value) {
  6.         $kv[] = "$key=$value";
  7.     }
  8.     $query_string = join("&", $kv);
  9. }
  10. else { //非post方法,GET等。
  11.     $query_string = $_SERVER['QUERY_STRING'];
  12. }
  13. $execfile=$_SERVER["REQUEST_URI"];
  14. if (strstr($execfile,"?")){ //如果请求URI中包含?则执行文件取?前面的部分
  15.    $execfile = substr($execfile,0,strlen($execfile) - strlen(strstr($execfile,"?")));
  16. }
  17. echo "http://".$_SERVER["SERVER_NAME"].$execfile."?".$query_string;
  18. ?>
复制代码
测试代码,post测试
  1. <html>
  2.         <head>
  3.                 <title>Param Test </title>
  4.         </head>
  5.         <body>
  6.              <form action="allparam.php" method="post">
  7.                  Name:<input type=text value="" name="name"><br>
  8.                  Addr:<input type=text value="" name="address"><br>
  9.                  <input type=submit value="提交">
  10.              </form>
  11.         </body>
  12. </html>
复制代码
get测试:
  1. http://localhost/allparam.php?c=dd&e=xx
复制代码

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
189 [报告]
发表于 2010-10-08 10:07 |只看该作者
22、有一个留言板,用mysql做数据库
用户信息包括:用户名,密码,email   
留言内容包括:留言ID,标题,内容,发表时间,状态(审核,未审核)
请实现下列需求:
1)数据库结构。无需写建表语句,用类似下面的表格,描述清楚即可
表明        table_aaa
字段名        字段说明        字段类型        索引
name        姓名        Varchar(64)        唯一索引
gender        性别        Enum(‘M’,‘F’)        
注意,要在索引栏中注明是否需要创建索引,以及要创建的索引的类型
用一个sql语句查询出发表留言数量大于10条的用户名及其留言数量,查询结果按留言数量降序排列

解答:
用户信息表:
表名:tbl_user
username 用户名 varchar(20) 唯一索引
passwd1  密码 varchar(20)
email        email varchar(100)
留言内容表:
表名:tbl_content
conid 留言ID  int
title   标题 varchar(100)
content 内容 varchar(4000)
devtime 发表时间 datetime
state   状态(审核,未审核) varchar(1)
username 用户名 varchar(20) 可重复索引
   
select username,count(*)
from tbl_content
group by username
having count(*) > 10
order by count(*) desc

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
190 [报告]
发表于 2010-10-08 10:28 |只看该作者
26、如何通过javascript判断一个窗口是否已经被屏蔽。

  1. <script type="text/javascript" language="javascript">
  2. /**
  3. * 参数说明:url - 要打开的窗口
  4. *                mode - true 模态打开 false 非模态打开
  5. * 返回值:boolean true 没有屏蔽 false 被屏蔽
  6. */
  7. function checkshield(url,mode){
  8.      var breturn = true;
  9.      if (mode){ //模态打开
  10.        if (window.open(url) == false) return false;
  11.      }else{ //非模态打开
  12.        try{
  13.                window.showDialogMode(url);
  14.           }catch (err){
  15.                breturn = false;
  16.           }
  17.      }
  18.      return breturn;
  19. }
  20. </script>
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP