php采用ajax读取某个目录文件

<? php
error_reporting(0);
header("Content-Type:text/html;charset:UTF-8"); 
define('DIR', "uploads");//定义显示文件夹路径
define('MAXWIDTH', "500");//定义图片显示的最大宽度
define('NL', " ");//
//QQ21429503 MSN beauty2001(AT)163.com
function get_array($file_formate){
    $ary= array();
    if ($fp = opendir(DIR)) {
        while (false !== ($file = readdir($fp))) {
            if(is_file(DIR.'/'.$file)){
                if(($str_pos=strrpos($file,".")) == true){
                        if(strtolower(substr($file,$str_pos+1))==$file_formate) {
                            $ary[]=$file;    
                        }
                 }
            }
        }
        closedir($fp);
    }
    return $ary;
}
function showpic($filename){
    $orginal_filename=DIR."/".$filename;
    $image_size = getImageSize($orginal_filename);
    $new_width=$image_size[0];
    $new_height=$image_size[1];
    if($image_size[0]>MAXWIDTH){
        $new_height=floor(MAXWIDTH/$image_size[0]*$image_size[1]);
        $new_width=MAXWIDTH;
    }
    $onLoadStr="οnlοad="if(this.width >500) {this.resized=true; this.width=500; }"";
    echo $image_size[0]."X".$image_size[1]." (".$new_width."X".$new_height.") ".$orginal_filename;
    echo "<img src="".$orginal_filename."" ".$onLoadStr." ><input name="pic" type="text" value="".$filename."" disabled>";    
}

$ary=get_array('jpg');
$count=count($ary);
$page_var=array();
$page_var["totalRecords"]=$count;
$page_var["per_page"]=10;
$page_var["var_page"]='p';
$page_var["limit_page"]=8;
$total_page=ceil($page_var["totalRecords"]/$page_var["per_page"]);
$page_var["total_page"]=$total_page>0?$total_page:1;
$cur_page=$_GET[$page_var["var_page"]];
$page_var["cur_page"]=isset($cur_page)?(floor($cur_page)<1?1:(floor($cur_page)>$page_var["total_page"]?$page_var["total_page"]:floor($cur_page))):1;
$page_var["limit_page_start"]=($page_var["cur_page"]-floor($page_var["limit_page"]/2))<0?1:$page_var["cur_page"]-floor($page_var["limit_page"]/2);
$page_var["limit_page_end"]=($page_var["limit_page_start"]+$page_var["limit_page"])>$page_var["total_page"]?$page_var["total_page"]:$page_var["limit_page_start"]+$page_var["limit_page"];

$page_list_ary = array();
for($i=$page_var["limit_page_start"];$i<=$page_var["limit_page_end"];$i++){ 
    $page_list_ary[]=($i==$page_var["cur_page"])?'<font color="red"><b>'.$i.'</b></font>':'<a href=?'.$page_var["var_page"].'='.$i.'>'.$i.'</a>';
}
$page_str=implode('&nbsp;|&nbsp;', $page_list_ary);
$page_str.=NL."&nbsp;&nbsp;<select οnchange="location='" . $_SERVER['PHP_SELF'] . '?' . $page_var["var_page"] . "='+this.options[this.selectedIndex].value+''" align=absmiddle  style="font-size:8pt;border: 1px solid #999999;"> ";
for($i=1;$i<=$page_var["total_page"];$i++){
    $page_str .='<option ' . (($i==$page_var["cur_page"])?'selected="selected" style="font-weight: bold"':'') . ' value="' . $i . '">' . $i . '</option>' . NL;
}
$page_str .=' </select>'.NL;
$page_var["start_re"]=($page_var["cur_page"]-1)<1?1:(($page_var["cur_page"]-1)*$page_var["per_page"]+1);
$page_var["end_re"]=($page_var["start_re"]+$page_var["per_page"])>$page_var["totalRecords"]?$page_var["totalRecords"]:(($page_var["start_re"]+$page_var["per_page"])-1);

if(isset($_GET['action'])&&($action=$_GET['action'])!=null
){
   $pic=trim($_GET['pic']);
   if($action=="pre"){
        while(list($key,$value)=each($ary)){
            if($pic==$value){
                $keyp=($key-1)<0?0:($key-1);
                showpic($ary[$keyp]);
                die();
            }
        }
   }
 
  
   if($action=="next"){
        while(list($key,$value)=each($ary)){
            if($pic==$value){
                $keyp=($count==($key+1))?$key:($key+1);
                showpic($ary[$keyp]);
                die();
            }
        }
   }
   die();
}
?>
<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
< html  xmlns ="http://www.w3.org/1999/xhtml" >
< head >
< meta  http-equiv ="Content-Type"  content ="text/html; charset=UTF-8"   />
< title > test picture </ title >
< style >
body 
{
 font-family
: "Verdana", "Arial", "Helvetica", "sans-serif";
 font-size
: 11px;
 text-align
: center;
}

div
{
    padding
:8px;
    border
:1px solid #999;
    background-color
:#efefef;
    margin-bottom
:10px;
    width
:500px;
    margin-right
: auto;
 margin-left
: auto;
 text-align
: left;
}

input 
{
 font-family
: "Verdana", "Arial", "Helvetica", "sans-serif";
 font-size
: 12px;
 border
: 1px solid #FFF;
}

a:link,a:visited,a:hover 
{
 color
:#000;
}

</ style >
< script >
<!--
var xmlHttp;
function createXMLHttpRequest(){
    
if(window.ActiveXObject){
        xmlHttp
=new ActiveXObject('Microsoft.XMLHTTP');
    }
else if(window.XMLHttpRequest){
        xmlHttp
=new XMLHttpRequest();
    }

}

function startRequest(hint){
   
    
var pic=document.form.pic.value;
    createXMLHttpRequest();
 
    xmlHttp.open(
"POST","?action="+hint+"&pic="+encodeURI(pic),"true");
  
  xmlHttp.setRequestHeader(
"Content-Type","application/x-www-form-urlencoded");
    xmlHttp.onreadystatechange
=handleStateChange;
 
    xmlHttp.send(
null);
}

 
function handleStateChange() {
    
if(xmlHttp.readyState == 1{
        document.getElementById(
'pic_show').style.cssText = "";
        document.getElementById(
'pic_show').innerText = "Loading...";
    }

    
if(xmlHttp.readyState == 4{
        
if(xmlHttp.status == 200{
            document.getElementById(
'pic_show').style.cssText = "";
            
var allcon =  xmlHttp.responseText;
            document.getElementById(
'pic_show').innerHTML = allcon;
        }

    }

}

function init(){
    
if(document.getElementById('pic_show').innerHTML==""){
        document.getElementById(
'pic_show').style.cssText = "";
        document.getElementById(
'pic_show').innerHTML ='<?php showpic($ary[0]); ?>';
    }

}


//-->
</ script >

</ head >
< body  onload ="init();" >
< form  name ="form" >
< div > 图片管理

< input  name ="button"  type ="button"  value ="前一页"  onclick ="startRequest('pre');" >
< input  name ="button"  type ="button"  value ="后一页"  onclick ="startRequest('next');" >
</ div >
 
< div  id ="pic_show"  style ="display:none" ></ div >
  
< div > Based on PHP+Ajax </ div >
</ form >

</ body >
</ html >
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值