<?php
$str="hallo world"; //比如这个是元算结果
$code= "print('\n$str\n');";//这个是保存在数据库内的php代码
echo "***";
echo($code);//打印组合后的命令,str字符串被替代了,形成一个完整的php命令,但并是不会执行
echo "###";
eval($code);//执行了这条命令
?>;


eval这个函数很可能有漏洞,因为可以执行很多命令:如:net user  等,会导致注入漏洞等,黑客很有可能拿到服务器的密码,然后反解密,很是危险性,必须防范,在我们的开发中如发feed等可以通过先拼接好字符串,然后构造函数发送feed!
有个插件名字叫 Limit Posts Automatically,可以统一截断首页的文章输出。
最终被我找到的函数是 mb_strimwidth()。它能满足的需求有:正确截断,无乱码,每条截取内容的长度基本相等。
乱码问题解释和解决:
先简单介绍一下。mb_strimwidth() 会根据”宽度”来截取文字,全角字符宽度为2,半角字符为 1,只要我们将截断的宽度设置为偶数,那最后截断输出的内容一定不会有乱码。


在截断输出首页文章内容的问题上,我们还应该搭配 strip_tags() 来共同实现。strip_tags() 的作用是清除字符串内的 html 标签,放在这里就是清除输出的内容格式(包括清除图片)。既然目的是截取小段文字,自然也不需讲求格式。

废话打住,说”正题”:

请找到模板内 index.php 中的



将其替换为

post_content)), 0, 120,”……”); ?>

之后首页文章内容截断输出就实现了。更改截取字数请调整例子中的 “120″ 为你想要的数值,它后面的 “……” 是输出末尾的替换内容,款式参考我的首页。这六个点也算在 120 之内,占 6 个半角宽度。

如果有看我前面对 mb_strimwidth 的介绍,聪明人该知道怎么将他们用在 Wordpress 模板侧边栏,毕竟在 css3 普及之前,用 PHP 的截断方式肯定是最佳的侧边栏截断选择。

老大在邮件做如下汇总:

echo mb_strimwidth("一二三四五六七八九十一二", 0, 23, '...','utf-8');



会输出如下内容:一二三四五六七八九十...这是因为mb这个函数算长度,如果总字符串小于指定的长度,那就不用截取啦!我在你原
来的字符串上加了个”二”,就会截出你要的结果了!看来是我们对这个函数了解不够
啊!
    开发代码结束或者基本结束后,往往由于前面时间紧张写的代码可能不符合公司的规范,所以需要对代码加以格式化,也方便阅读等等:
打开zend for eclipse6.1,当然是D版,然后选择以前开发的代码工程,然后,preferences-『窗口』-〉 『首选项』如图:



1.选择php的格式模板,如何缩进等,花括号如何摆放etc。。。



在工程上选择需要格式的几个php目录(同时选择php文件可能出不了source的菜单),用菜单source里面的format,即可格式化目录里面的php文件!



ctrl+shift+f对代码进行格式化阅读全文
发现我的MYSQL无法建立innodb表了,显象是在Create Table 语句中指定了ENGINE=INNODB 但是表建完后发现有一个warning信息,使用show warnings \G查看发现,Mysql提示使用Myisam建立表。然后使用 Show Variables like '%innodb%' 查看发现have_innodb 的值为Disable这表明不能建立innodb表。

Step 1. Stop MySQL service
Step 2:打开my.ini 找到 skip-innodb 并在其前加'#'号
Step 3: Restart MySQL service
问题解决。

做记录的时候要修改为innodb来存储:
ALTER TABLE `ac_follow` ENGINE = INNODB
但是没有修改成功:
对比了一下:show variables;或者:Show Variables like '%innodb%'
发现:have_innodb                     | DISABLED  
修改:have_innodb                     | YES  
把table_type的默认值MYISAM改为INNODB:

  [mysqld]  
  basedir=  
  datadir=  
  default-table-type=innodb  
  
  
  
  default-table-type=innodb   就是你所要加的..

即可!
啰嗦几句,如果你是默认在linux安装的包装的mysql或者apache,my.ini 和php.ini它的目录为:
默认:

httpd.conf 在/etc/httpd/conf

my.cnf 在/etc

php.ini 在/usr/local/lib

在Unix上,php.ini文件缺省放在/usr/local/lib上面,因为缺省的存放路径是 /lib,但是可以在编译的时候使用--with-config-file-path参数来修改php.ini的存放位置,例如你可以使用--with- config-file-path=/etc把它存放到/etc下面,然后可以从源码包中拷贝php.ini-dist到/etc/php.ini并修改使之满足需要。

Windows上面php.ini的缺省位置是windows系统目录,如果使用了Apache的话,那么将首先从 Apache的安装目录中查找 php.ini,例如:c:program filesapache groupapache,这样你可以在同一台机器上面为不同的Apache版本设置不同的php.ini文件。
一行解决写入日志:


一行完成Curl的POST输出:


临时调试:


路径变量:





在调试上传文件时,如苹果Android等(这一行来自PHP高级编程:岁月如哥【俗称:膘哥】(191295**)它提供的。2013-04-11 09:58 AM ):

后记:
岁月如哥(191295**)  15:20:48
你要看一下ios下。如果图片过大。或者。。。有些异常情况发生的时候。
$_FILES都为空的。
这些我们都遇到过
收到的内容全部为空。而且会导致其他所有的变量都为空
回忆未来-向东-Jàck(3726476**)  15:23:51
那有可能是这个问题,我用上面这个直接打Post有值,呵呵。
膘哥说得对,是可能图片太大了。

调试:

就能看到调试信息。
看了一下phpcms的源码:


  
function cache_write($file, $string, $type = 'array')  
{  
     if(is_array($string))  
     {  
         $type = strtolower($type);  
         if($type == 'array')  
         {  
             $string = "<?php\n return ".var_export($string,TRUE).";\n?>";  
         }  
         elseif($type == 'constant')  
         {  
             $data='';  
             foreach($string as $key => $value) $data .= "define('".strtoupper($key)."','".  
addslashes($value)."');\n";  
             $string = "<?php\n".$data."\n?>";  
         }  
     }  
     $strlen = file_put_contents(PHPCMS_CACHEDIR.$file, $string,FILE_APPEND);  //最好加上FILE_APPEND,否则tail -f出现
tail: /tmp/friendviews.txt: file truncated   参看:http://www.xiangdong.org/blog/post/1614/
       chmod(PHPCMS_CACHEDIR.$file, 0777);  
       return $strlen;  
}


可以看到
var_export
解释下
var_export
(PHP 4 >= 4.2.0, PHP 5)
var_export -- 输出或返回一个变量的字符串表示
描述
mixed var_export ( mixed expression [, bool return])

此函数返回关于传递给该函数的变量的结构信息,它和 var_dump() 类似,不同的是其返回的表示是合法的 PHP 代码。

您可以通过将函数的第二个参数设置为 TRUE ,从而返回变量的表示。
应用场景:
假如我们看到一个数组是多维的,其实通过serialize之后写入文件 读出来之后unserialize也可以,但我们只是想看看数组里面是什么,但又不想打印到页面上。
实例:


<?php
        $a = array ( 1 , 2 , array ( "a" , "b" , "c" ));
        $file_string = var_export ( $a,True);
        var_dump($file_string);
        file_put_contents("/tmp/friendviews.txt",$file_string,FILE_APPEND);
        exit;

?>


tail -f /tmp/friendviews.txt

结果:
array (
  0 => 1,
  1 => 2,
  2 =>
  array (
    0 => 'a',
    1 => 'b',
    2 => 'c',
  ),
)







http_build_query 把数组整成一个get串:
http://v.blog.sohu.com/u/vw/269657
以下是转自一位老师的博客。------------------

昨晚看了央视《我们》栏目,新东方教育集团俞敏洪老师谈大学生就业话题。一直很喜欢俞敏洪老师的演讲,昨晚再听俞老师那睿智敏捷轻松的娓娓叙述,心里又有一番激荡,人生需要经常听这些智者的观点,因为他们充满了激情,他们生活事业中的激情和感悟体现在他们的演讲中,听这样的演讲让人智慧让人充满激情!感想很多,不知道怎么整理,也许俞老师的原话就是最好的注解,故记录一些原话以示励己:阅读全文
file_get_contents.php: Post数据
<?php
function Post($url, $post = null)
{
    $context = array();

    if (is_array($post))
    {
        ksort($post);

        $context['http'] = array
        (
            'method' => 'POST',
            'content' => http_build_query($post, '', '&'),
        );
    }

    return file_get_contents($url, false, stream_context_create($context));
}

$data = array
(
    'name' => 'test',
    'email' => 'test@gmail.com',
    'submit' => 'submit',
);

echo Post('http://localhost/5-5/request_post_result.php', $data);
?>

接收数据:


request_post_result.php  接收经过Post的数据:
<?php
echo $_POST['name'];
echo $_POST['email'];
echo $_POST['submit'];
echo "fdfd";
?>


更加简洁:
参看:http://www.phpe.net/articles/83.shtml
<?PHP
/*
CREATE TABLE `category` (
`categoryID` int(10) unsigned NOT NULL auto_increment,
`categoryParentID` int(10) unsigned NOT NULL default '0',
`categoryName` varchar(50) NOT NULL default '',
KEY `cate_id` (`categoryID`)
) TYPE=MyISAM AUTO_INCREMENT=11 ;

#
# 导出表中的数据 `category`
#

INSERT INTO `category` VALUES (1, 0, '一级类别1');
INSERT INTO `category` VALUES (2, 1, '二级类别1');
INSERT INTO `category` VALUES (3, 1, '二级类别2');
INSERT INTO `category` VALUES (4, 1, '二级类别3');
INSERT INTO `category` VALUES (5, 2, '三级类别21');
INSERT INTO `category` VALUES (6, 2, '三级类别22');
INSERT INTO `category` VALUES (7, 2, '三级类别23');
INSERT INTO `category` VALUES (8, 3, 'rfwesdfsd');
INSERT INTO `category` VALUES (9, 4, '54534w43');
INSERT INTO `category` VALUES (10, 5, '66666');
有问题请不要问我就行了。其他OK。欢迎修改使用。这是简单的。

*/
mysql_connect( "localhost", 'root', '' );
mysql_select_db( "test3" );
$cate_table = "category";

function _GetCategory( $category_id = 0, $depth = 1 )
{
global $cate_table;

$sql = "SELECT * FROM $cate_table ORDER BY categoryID DESC";
$result = mysql_query( $sql );

while ( $row = mysql_fetch_array( $result ) )
{
$array[$row[categoryParentID]][$row[categoryID]]
= array(
'id' => $row[categoryID],
'parent' => $row[categoryParentID],
'name' => $row[categoryName]
);
}

if ( !isset( $array[$category_id] ) )
{
return "";
}

foreach( $array[$category_id] AS $key => $category )
{
echo " <OPTION VALUE=".$category['id']." ";
if ( $category['parent'] == 0 )
{
echo " class='main' ";
}
if ( $depth > 1 )
{
echo ">" . str_repeat( "--", $depth - 1 ) . " " . $category['name'] . "</option>n";
}
else
{
echo ">" . $category['name'] . "</option>\n";
}

_GetCategory( $key, $depth + 1 );
}
unset( $array[$category_id] );
}

?>
<select name="categoryID">
<option selected value="">-------------</option>
<?=_GetCategory();?>
</select>
计算机的串口不能用,怎么与目标板的串口连接呢?

    windows下可以用USB转串口线实现,在google上搜索了一下,linux下更简单,连驱动都免装!

    测试环境:redhat linux fedora core 4

    总结如下:

    1. 检查是否存在设备/dev/ttyUSB0,如果没有就建立一个:

    mknod /dev/ttyUSB0 c 188 0

    以下推理未测试:

    如果有多个USB口,可以类推,建立/dev/ttyUSB[1-n],注意从设备号要累加,如:mknod /dev/ttyUSB[1-n] c 188 [1-n]

    2. 启动minicom, 设置串口设备为 /dev/ttyUSB0, 再设置波特率/数据位/停止位,保存为缺省配置df1

    3. 重启minicom, 复位目标板,看是否有打印信息?

    如果没有请确认:a)USB/串口线没问题,b)确认你使用的USB口是第一个(一个个的试吧,一般电脑不会标示出来)
先看这篇文章:
http://www.chinaunix.net/jh/27/771726.html


引用:
接上篇:
[硬件 通讯]PHP在RS232串口通讯协议的应用演示[测试环境PHP5.1.4]
http://bbs.chinaunix.net/viewthread.php?tid=771726


<?php
// --------------------------------------------------------------------------
// File name   : RS232_Server.php
// Description : RS232演示上位机程序
// Requirement : PHP 5.1.4 (cli) (http://www.php.net)
//
// Copyright(C), HonestQiao, 2006, All Rights Reserved.
//
// Author: HonestQiao (honestqiao@hotmail.com/QQ:5601680)
//
// 程序简介:
// 本程序与RS232_Client构成一个完整的演示系统,展示了PHP在RS232串口通讯上的应用。
// 程序之中实现了一个基础但是完整的RS232通讯协议(HQB232),通讯协议格式如下:
// 协议内容:
//             C->S 01 //请求通讯
//             S->C 02 //响应通讯
//             C->S LEN DATA //LEN表示数据(DATA)长度 DATA表示实际数据
//             C->S 03 //结束通讯
// 说明:S表示上位机 C表示下位机
//       HQB232表示HonestQiao演示的基础(Base)RS232通讯协议,包含了协议的
//   请求和响应,数据帧的结构。
//       演示过程为通讯的请求和响应,文件的发送(数据帧), 通讯的结束
//       数据帧的结构为当前的当前数据的长度,数据的HEX字符串(两位补足)
//        
//       欢迎探讨PHP在RS232串口通讯上的应用。
// --------------------------------------------------------------------------
set_time_limit(0);
exec('mode COM1: baud=9600 data=8 stop=1 parity=n xon=on');

$fd = dio_open('COM1:', O_RDWR);
if(!$fd)
{
    die("Error when open COM1");
}

$ff = dio_stat($fd);print_r($ff);
echo "HQB232 SERVER is listenning on COM1\n";
/// read
$len = 2;
$t=0;while (($t++)<1000)
{
    $data = dio_read($fd, $len);
    if ($data) {
        if($data==chr(0).chr(1)){
            echo "S_RECV:01\n";
            echo "S_SEND:02\n";
            dio_write($fd,chr(0).chr(2));
            break;
        }
    }
}

$handle = fopen("E:\\RS232\\TEST\\S_WAPMMonitor.exe", 'w');
/// read
$len = 2;
$t=0;while ($handle && ($t++)<1000)
{
    $len = 2;
    $data = dio_read($fd, $len);
    if($data==chr(0).chr(3)){
        echo "S_RECV:03\n";
        break;
    }
    elseif ($data) {
        $len = hexdec($data);
        if($len>0)
        {
        $data = dio_read($fd, $len);
        if($data){
            fwrite($handle, str2hex($data));
            echo "S_RECV:($len) ".microtime()."\n";
        }
        }
    }
}
fclose($handle);
dio_close($fd);

function str2hex($string)
{
    $str = '';
    for($i=0; $i<strlen($string); $i+=2){
        $str .= chr(hexdec(substr($string,$i,2)));
    }
    return $str;
}
?>





<?php
// --------------------------------------------------------------------------
// File name   : RS232_Client.php
// Description : RS232演示下位机程序
// Requirement : PHP 5.1.4 (cli) (http://www.php.net)
//
// Copyright(C), HonestQiao, 2006, All Rights Reserved.
//
// Author: HonestQiao (honestqiao@hotmail.com/QQ:5601680)
//
// 程序简介:
// 本程序与RS232_Server构成一个完整的演示系统,展示了PHP在RS232串口通讯上的应用。
// 程序之中实现了一个基础但是完整的RS232通讯协议(HQB232),通讯协议格式如下:
// 协议内容:
//             C->S 01 //请求通讯
//             S->C 02 //响应通讯
//             C->S LEN DATA //LEN表示数据(DATA)长度 DATA表示实际数据
//             C->S 03 //结束通讯
// 说明:S表示上位机 C表示下位机
//       HQB232表示HonestQiao演示的基础(Base)RS232通讯协议,包含了协议的
//   请求和响应,数据帧的结构。
//       演示过程为通讯的请求和响应,文件的发送(数据帧), 通讯的结束
//       数据帧的结构为当前的当前数据的长度,数据的HEX字符串(两位补足)
//        
//       欢迎探讨PHP在RS232串口通讯上的应用。
// --------------------------------------------------------------------------
set_time_limit(0);
exec('mode COM2: baud=9600 data=8 stop=1 parity=n xon=on');

$fd = dio_open('COM2:', O_RDWR);
if(!$fd)
{
    die("Error when open COM2");
}

$ff = dio_stat($fd);print_r($ff);
echo "HQB232 CLIENT is start on COM2\n";
dio_write($fd,chr(0).chr(1));echo "C_SEND:01\n";
$len = 2;
$t=0;while(($t++)<1000)
{
    $data = dio_read($fd, $len);
    if($data==chr(0).chr(2)){
        echo "C_RECV:02\n";    
        break;
    }
}
/*
$len = 2;
$t=0;while(($t++)<10)
{
    $sdata = sprintf("%03d",$t) . "=" . microtime() . " (" . randomkeys(rand(0,35)) . ")";
    $slen = strlen($sdata);
    $stxlen = sprintf("%02d",$slen);
    dio_write($fd,"$stxlen");
    dio_write($fd,"$sdata");echo "C_SEND:($stxlen)$sdata\n";
    //sleep(1);
}
*/

$handle = fopen ("E:\\RS232\\TEST\\WAPMMonitor.exe", "rb");
$data = "";
while ($handle && !feof($handle)) {
  $sdata = fread($handle, 127);
  $sdata = hex2str($sdata);
  $slen = strlen($sdata);
  $stxlen = sprintf("%02X",$slen);
  dio_write($fd,"$stxlen");
  dio_write($fd,"$sdata");echo "C_SEND:($slen) ".microtime()."\n";
  usleep(300);
}
fclose($handle);


dio_write($fd,chr(0).chr(3));echo "C_SEND:03\n";
dio_close($fd);

function randomkeys($length)
  {
   $pattern = "1234567890abcdefghijklmnopqrstuvwxyz";
   for($i=0;$i<$length;$i++)
   {
     $key .= $pattern{rand(0,35)};
   }
   return $key;
}

function hex2str($hexstring)
{
    $str = '';
    for($i=0; $i<strlen($hexstring); $i++){
        $str .= sprintf("%02X",ord(substr($hexstring,$i,1)));
    }
    return $str;
}
?>



引用:
1. 代码之中的:    请修改为你自己的实际测试文件

$handle = fopen ("E:\\RS232\\TEST\\WAPMMonitor.exe", "rb");


$handle = fopen("E:\\RS232\\TEST\\S_WAPMMonitor.exe", 'w');


2. 进过测试,可以传送文本文件、二进制文件。

3. HQB232协议修改,原01、02、03指令,修改为chr(0).chr(1)、chr(0).chr(2)、chr(0).chr(3)来构成


http://blog.sina.com.cn/s/blog_44c07fb301000449.html
早上在一个网站上看到了一个很有趣的应用,Boosty’s ASCII Artist,把图片转化为HTML字符输出,下载了它的源代码看了一下,用的是PHP的image系列函数实现,最核心的地方应该是在循环过程及imagecolorsforindex、imagecolorat这两个函数,后者是用来获取图像某个位置的颜色索引值,而前者是根据某个索引值获取到颜色值,返回的是一个数组,格式如下:Array
(
[red] => 226
[green] => 222
[blue] => 252
[alpha] => 0
)
真佩服老外的创意。
网站地址:http://www.sebastian-r.de/asciiart/index.html

vi 注释多行

WEB2.0 jackxiang 2009-2-11 11:06
.,+4 s/^/#/g
注释1-4行!其实就是替换。。。
问题应该是在编译文件里,编译出错了
然后你的error_reporting又没有打开
这种情况是有的
还有就是header的关系,这个就说不清楚了。好象输出编码与实际编码不一致,然后你头上的那个的验证也有可能会导致白屏现象发生。
问题提出:
        做php程序,往往有可能打印一些东西出来,但是涉及到页面的显示,往往打印到后台日志文件中,有的专门有日志函数,为了方便,我就直接用了php5的file_put_contents()函数,通过tail -f /tmp/feedContent.txt. 但是,发现出现:tail: /tmp/feedContent.txt: file truncated 的情况!

估计问题:
     查了下google,发现:http://topic.csdn.net/u/20080201/09/2f55ff69-96f9-4960-a6d5-14aa2585dafe.html  这个文章!
    看后突然想起我的用法是:

             file_put_contents("/tmp/feedContent.txt",$record_info);
            $record_content_array = urlencode(serialize($record_info));
            $flag = $myfrd->sendSnsFeeds($uid, DEF_RECORD_FEED_TYPE,$record_content_array,DEF_RECORD_FEED_SETTING);
            file_put_contents("/tmp/feedContent.txt",$record_content_array);


如果文件已存在,原有文件被重写。写日志的程序估计不是简单的追加方式有可能还对文件进行了某些特殊处理,导致tail处理异常
估计是每次都重新写造成。改为:


             file_put_contents("/tmp/feedContent.txt",$record_info,FILE_APPEND);
            $record_content_array = urlencode(serialize($record_info));
            $flag = $myfrd->sendSnsFeeds($uid, DEF_RECORD_FEED_TYPE,$record_content_array,DEF_RECORD_FEED_SETTING);
            file_put_contents("/tmp/feedContent.txt",$record_content_array,FILE_APPEND);


问题得到解决,再没有提示:
tail: /tmp/feedContent.txt: file truncated!具体查看:FILE_APPEND和tail -f的机制即可。。。
用vi模拟出现tail -f *.txt  出现tail: /tmp/feedContent.txt: file truncated 这个行为:
最后:
用vi 打开:

vi  /tmp/feedContent.txt

命令行输入:
g/^/d  
清空里面内容,然后wq!保存


tail -f /tmp/feedContent.txt


出现:tail: /tmp/feedContent.txt: file truncated

问题得证!





    

往往在取得用户uid后,通过函数取得姓名,然后组合为数组输出拱smarty使用的示例!
<?php
$arry_all[2] =array("uid"=>001,"sex"=>"man");
$arry_all[3] =array("uid"=>001,"sex"=>"man");
$arry_all[4] =array("uid"=>001,"sex"=>"man");
$arry_all[5] =array("uid"=>001,"sex"=>"man");
$arry_all[6] =array("uid"=>001,"sex"=>"man");
$name_array = array(array("name0"=>"jianxin","name1"=>"zhujianxin"),"zaifeng","xichen","xiangdong","wangfang");
$i=0;
foreach($arry_all as $k=>$v)
{

    $arry_all[$k]['name']=$name_array[$i];
    $i=$i+1;  
  
  
}
print_r($arry_all);
?>
好像是由于我的curl_post有些问题,然后用到了如下函数的post:
我的curl_post:
  function curl_post($url, $content)
  {

    $str_url = $url;
    $str_post_data = $content;
    $ch_curl = curl_init ();
    curl_setopt ( $ch_curl, CURLOPT_TIMEOUT, 3 );
    curl_setopt ( $ch_curl, CURLOPT_HEADER, false );
    curl_setopt ( $ch_curl, CURLOPT_POST, 1 );
    curl_setopt ( $ch_curl, CURLOPT_RETURNTRANSFER, true );
    curl_setopt ( $ch_curl, CURLOPT_URL, $str_url );
    curl_setopt ( $ch_curl, CURLOPT_POSTFIELDS, $str_post_data );
    $str_return = curl_exec ( $ch_curl );

    if ($str_return === false)
    return false;
    curl_close ( $ch_curl );
    return $str_return;
  }


首先贴上生产环境的代码段【建鑫编写】:
<?php
function request_post($url,$data,&$result)
{
    $ctx = array (
        'http' => array (
            'method' => 'POST',
            'header'=> "Content-type: application/x-www-form-urlencoded\r\n"
                . "Content-Length: " . strlen($data) . "\r\n",
            'content' => $data
            )
        );
       $context = stream_context_create($ctx);
      $result = file_get_contents($url,false,$context);
    if ($result === false){
      return false;
    }
    return true;
}
request_post("http://localhost","aa=aaa",$result);
echo $result;
?>

不过我对这个哥们用到ksort函数的file_get_contents()觉得不错:
function Post($url, $post = null)
{
    $context = array();

    if (is_array($post))
    {
        ksort($post);

        $context['http'] = array
        (
            'method' => 'POST',
            'content' => http_build_query($post, '', '&'),
        );
    }

    return file_get_contents($url, false, stream_context_create($context));
}

$data = array
(
    'name' => 'test',
    'email' => 'test@gmail.com',
    'submit' => 'submit',
);

echo Post('http://www.url.com/to/submit.php', $data);




阅读全文
分页: 254/339 第一页 上页 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 下页 最后页 [ 显示模式: 摘要 | 列表 ]