PDA

View Full Version : سوال: محدود کردن تعداد نمایش



iman65
چهارشنبه 07 بهمن 1388, 17:22 عصر
با سلام خدمت دوستان گل
من یک کد دارم که تعداد فایل های درون فولدر image رو نشون می ده
ولی می خوام فقط این کد بتونه 3 تا فایل آخر رو نشون بده
لطفا راهنمایی بفرمایید
کد کامل به صورت زیر است :

<?php
filesInDir('images');
function filesInDir($tdir)
{
$image_width = 350;
$base_url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME'];
$url_parts = explode('/',$my_url);
for($i=0;$i<(count($url_parts)-1);$i++)
$my_url .= $url_parts[$i].'/';

if(file_exists('watermark.png'))
$watermark = '&fltr[]=wmi|../watermark.png|1|95';
else
$watermark = '';
$dirs = scandir($tdir);
$i=0;
foreach($dirs as $file)
{
if (($file == '.')||($file == '..')){}
elseif (is_dir($tdir.'/'.$file)) filesInDir($tdir.'/'.$file);
else
{
$i++;
$thumb = "phpThumb/phpThumb.php?src=../".$tdir.'/'.$file."&w=75";
$resize = "phpThumb/phpThumb.php?src=../".$tdir.'/'.$file."&w=".$image_width;
$full = "phpThumb/phpThumb.php?src=../".$tdir.'/'.$file."&w=". $image_width.$watermark;
$size = strlen($my_url.$full)+10;
echo '<a href="images/'.$file.'"><img src="'.$thumb.'" /></a></br>';
echo 'Source: <a href="images/'.$file.'">'.$file.'</a>';
echo ' -> Resize: <a href="'.$resize.'">'.$file.'</a>';
if($watermark!='')
echo ' -> Watermark: <a href="'.$full.'">'.$file.'</a>';
echo '<form name=myform'.$i.'><input onclick="'.'myform'.$i.'.'.'mytext'.$i.".focus()".'; '.'myform'.$i.'.'.'mytext'.$i.".select()".'; " type="button" value="GET"><input size="'.$size.'" style="border:1px;border-style:solid;border-color:eeeeee" type=text name=mytext'.$i.' value="'.$my_url.$full.'"></form>';
}
}
}
?>

<?php
$base_url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME'];
echo $my_url;
$url_parts = explode('/',$my_url);
for($i=0;$i<(count($url_parts)-1);$i++)
$my_url .= $url_parts[$i].'/';
echo $my_url;
?>

iman65
پنج شنبه 08 بهمن 1388, 10:02 صبح
دوستان کسی راهنمایی نمی کنه ؟

امیـرحسین
پنج شنبه 08 بهمن 1388, 18:59 عصر
شما می تونید با تابع مثلا filemtime زمان دسترسی به فایل رو بگیرید.
می تونید همه فایلها رو در یه آرایه ذخیره کنید و براساس زمان مرتب کنید و هر چند تاش رو خواستید بردارید.

iman65
پنج شنبه 08 بهمن 1388, 20:07 عصر
سلام
تشکر از پاسخ دوستان
ولی من برنامه نویسی رو بلد نیستم
اگه زیاد نیست لطفا با کد راهنمایی بفرمایید
ممنونم

iman65
جمعه 09 بهمن 1388, 09:14 صبح
دوستان من هر طور سعی کردم نتونستم
گاهی هر عکس رو چند بار مرتب می کنه و گاهی هم فقط یک عکس رو چند بار نشون می ده
ولی بر اساس تاریخ هم مرتب نمی کنه و مرتب سازی بر اساس اسم عکس ها صورت می گیره
ممنون می شم یک راهنمایی کنید
این کد مثلا فقط یک عکس رو چند بار نشون می داد

<?php
$dir = 'images';
$result = scandir($dir);
$file_array = array();
foreach( $result as $file )
{
if( $file != '.' && $file != '..' )
{
$fs1.='¬'.filemtime($dir.'/'.$file).'#'.$file;
$file_array[] = $fs1;
}
}
//
sort($file_array);
for ($i=1 ; $i<=3 ; $i++)
{
$thumb = "phpThumb/phpThumb.php?src=../".$tdir.'/'.$file."&w=75";
$resize = "phpThumb/phpThumb.php?src=../".$tdir.'/'.$file."&w=".$image_width;
$full = "phpThumb/phpThumb.php?src=../".$tdir.'/'.$file."&w=". $image_width.$watermark;
$size = strlen($my_url.$full)+10;
echo '<a href="images/'.$file.'"><img src="'.$thumb.'" /></a></br>';
echo 'Source: <a href="images/'.$file.'">'.$file.'</a>';
echo ' -> Resize: <a href="'.$resize.'">'.$file.'</a>';
if($watermark!='')
echo ' -> Watermark: <a href="'.$full.'">'.$file.'</a>';
echo '<form name=myform'.$i.'><input onclick="'.'myform'.$i.'.'.'mytext'.$i.".focus()".'; '.'myform'.$i.'.'.'mytext'.$i.".select()".'; " type="button" value="GET"><input size="'.$size.'" style="border:1px;border-style:solid;border-color:eeeeee" type=text name=mytext'.$i.' value="'.$my_url.$full.'"></form>';

}
?>

iman65
یک شنبه 11 بهمن 1388, 18:21 عصر
دوستان عزیز
اگه کسی لطف کنه کد رو یک نگاه کنه ممنون می شم
اشتباهی تو کد من هست ؟