Jump to content
php.lv forumi

Random bilde no mapes


Recommended Posts

Posted

Gribeeju uzciniit, lai skripc nolasa mapes saturu un tad randomaa izvada vienu bildi!

<?
error_reporting(E_ALL);
$thumbstring = '';
$file_dir="Bildz";
$f_type=".jpg";	
$dir=opendir($file_dir);
while ($file=readdir($dir))
{
 if ($file != "." && $file != "..")
 {
	 $extension=substr($file,-6);	
	 if($extension == $f_type)
	 {
   $thumbstring .= "$file|";
	 }
 }
}
srand((double)microtime()*1000000);
$arry_txt = explode("|" , $thumbstring);
echo "<img src=\"".$file_dir."/".$arry_txt[rand(0, sizeof($arry_txt) -1)]."\">";
?>

Bet shis man izvada tikai mapi (<img src="trallallaa.lv/Bildz">) - failus nenolasot! a kaa ta taa???

Posted

$extension=substr($file,-6);

 

vai tad ".jpg" ir 6 simboli?

 

un kas notiek ja nav nevienas bildes?

Posted
$extension=substr($file,-6);

 

vai tad ".jpg" ir 6 simboli?

 

un kas notiek ja nav nevienas bildes?

13445[/snapback]

 

Atvainojos... vecums un aklums naak roku rokaa!:)))

Posted

Pag,... bet kaaa lai es vinjam lieku izveeleeties tikai tos failus kuriem saakumaa ir Th_ ???

Posted

tev jau te labaak izmantot regulaaraas ekspresijas kautko uz shito shniti:

 

preg_mathc('#^Th.+\.jpg$#', $file);

Posted

Vai nav smukāk?:

 

<?
$image = glob("path/Th_{*.gif,*.jpg,*.png}", GLOB_BRACE);
echo '<img src="'.$image[array_rand($image)].'"/>';
?>

 

.. performance hvz

  • 1 month later...
Posted
.. performance hvz

13480[/snapback]

 

Jā, performance tiešām... Man izmeta erroru "Apache has encountered a problem and needs to close".

Posted
Jā, performance tiešām... Man izmeta erroru "Apache has encountered a problem and needs to close".

15236[/snapback]

Ganjauka vecs PHP.

It's also worth noting that when using the GLOB_BRACE flag in any version of PHP prior to 4.3.4, PHP will crash if no matches are found.

 

Upgrade!

Posted

Nolasi visus Direktorijas iekšas masīvā (array). Dabuj JPG failu nosaukumus ar string f-jam palīdzību, $count=count($kas_palicis) ). Pēc tam $random=(rnd(0,$kas_palicis)) vai kā tur bija (var būt kļudijos). Un izvelk no masīva Nr. "$random". Talāk pats zini.

 

Es pats glabāju failu nosaukumus DBē - tā vieglāk operēt, ja failu mainīsi ar rokām, neviss ar web-interfeisa palīdzību. myPHPAdmin rulez!

 

Es pats necienu rutīnu (ķipa array, līdz galam to nevaru apgūt), bet izskatas par variantu.

 

Veiksmi!

Posted

nesaprotu kāpēc visu laiku ir jālasa direktorija... taču noindeksē un pēc tam ārdies.

 

$files = unserialize( file_get_contents('files.idx') );
if ( is_array($files) ) {
   $file = $files[rand(0,count($files))];
}

Posted

Kā var neapgūt array? Masīvs tak ir viena no nepieciešamākajām un fundamentālākajām datu struktūrām programmēšanā.

×
×
  • Create New...