Witam,
może ktoś pomoc w przerobieniu tej tabeli na DIV ? probowałem ale nie wyświetla sie poprawnie.
Plik: nailcut.php3
<?php
function thumb_getsize($thumb_width,$thumb_height,$original_width,$original_height,$border=0) {
$min_width = $thumb_width - $border - $border;
$min_height = $thumb_height - $border - $border;
$div_width = $original_width / $min_width;
$div_height = $original_height / $min_height;
if ($div_width >= $div_height) {
$res_width = $min_width;
$res_height = round($original_height / $div_width); $res_left = $border;
$res_top = round(($min_height / 2
) - ($res_height / 2
) + $border); } else {
$res_height = $min_height;
$res_width = round($original_width / $div_height); $res_top = $border;
$res_left = round(($min_width / 2
) - ($res_width / 2
) + $border); }
$result = array($res_left,$res_top,$res_width,$res_height); return $result;
}
function thumb_create($original_img,$img_border,$rect,$original_width,$original_height,$border_width,$border_height) {
$thumbnail = imagecreate($border_width,$border_height);
imagecopyresized($thumbnail,$img_border,0,0,0,0,$border_width,$border_height,$border_width,$border_height);
imagecopyresized($thumbnail,$original_img,$rect[0],$rect[1],0,0,$rect[2],$rect[3],$original_width,$original_height);
return $thumbnail;
}
function thumb_print($dir,$file_thumb,$file_border,$s,$f,$mdir) {
list
($width,$height,$pictype) = getimagesize($dir.$file_thumb); switch ($pictype) {
case 1 : $img = imagecreatefromgif($dir.$file_thumb); break;
case 2 : $img = imagecreatefromjpeg($dir.$file_thumb); break;
case 3 : $img = imagecreatefrompng($dir.$file_thumb); break;
}
list
($b_width,$b_height,$b_pictype) = getimagesize($file_border); switch ($b_pictype) {
case 1 : $imgborder = imagecreatefromgif($file_border); break;
case 2 : $imgborder = imagecreatefromjpeg($file_border); break;
case 3 : $imgborder = imagecreatefrompng($file_border); break;
}
if (($img) && ($imgborder)) {
$rect = thumb_getsize($b_width,$b_height,$width,$height,$GLOBALS["thumbsborder"]);
$thumbnail = thumb_create($img,$imgborder,$rect,$width,$height,$b_width,$b_height);
if ($s) {
switch ($pictype) {
case 1 : imagegif($thumbnail,$mdir.$file_thumb); break;
case 2 : imagejpeg($thumbnail,$mdir.$file_thumb); break;
case 3 : imagepng($thumbnail,$mdir.$file_thumb); break;
}
}
switch ($pictype) {
case 1 : imagegif($thumbnail); break;
case 2 : imagejpeg($thumbnail); break;
case 3 : imagepng($thumbnail); break;
}
}
} else {
switch ($pictype) {
case 1 : $img = imagecreatefromgif($mdir.$file_thumb); break;
case 2 : $img = imagecreatefromjpeg($mdir.$file_thumb); break;
case 3 : $img = imagecreatefrompng($mdir.$file_thumb); break;
}
switch ($pictype) {
case 1 : imagegif($img); break;
case 2 : imagejpeg($img); break;
case 3 : imagepng($img); break;
}
}
}
function read_data($data_dir,$ext) {
if ($dir_handle) {
while ($file = readdir($dir_handle)) { $files[] = $file;
}
}
}
} else {
$files = false;
}
return $files;
}
function index_print($dir,$ext,$template,$dia,$cols,$f,$maxperpage,$start) {
$lines = file($template); $selflink = $GLOBALS["PHP_SELF"];
$images = read_data($dir,$ext);
if ($images) {
$table = $GLOBALS["infocaption"]."<br><br><table border=\"0\" cellpadding=\"2\">r\n<tr>";
$end = $start+$maxperpage-1;
$counter = 0;
while (list
($key,$image) = each($images)) { if (($key >= $start) && ($key <= $end)) {
$piclink = $PHP_SELF."?cmd=min&pic=".$image;
if ($f) {$piclink .= "&f=1"; }
$biglink = $PHP_SELF."?cmd=max&start=".$start."&pic=".$image;
$table .= "<td><a href=\"$biglink\"><img src=\"$piclink\" border=\"0\" $sizestr></a></td>";
$counter++;
if (((($counter) % $cols) == 0) && ($key < $end)) {
$table .= "</tr><tr>";
}
}
}
$table .= "</tr></table>";
if ($start > 0) {
$prevstart = $start - $maxperpage;
$table .= "<a href=\"$selflink?start=$prevstart\">".$GLOBALS["prevcaption"]."</a>";
}
if ($end < $max) {
$nextstart = $end+1;
$table .= "<a href=\"$selflink?start=$nextstart\">".$GLOBALS["nextcaption"]."</a>";
}
} else {
$table = "No files in <b>$dir</b>";
}
return $line;
}
function image_print($pic,$template,$start) {
$lines = file($template); $selflink = $GLOBALS["PHP_SELF"];
$piclink = "<img src=\"$pic\" border=\"0\" $sizestr><br><br>";
$piclink .= "<a href=\"$selflink?start=$start\">Zurück</a>";
return $line;
}
function main($cmd,$dir,$pic,$dia,$template,$cols,$s,$f,$mdir,$maxperpage,$start,$ext=".png") {
switch ($cmd) {
case "min" :
thumb_print($dir,$pic,$dia,$s,$f,$mdir);
break;
case "max" :
echo image_print
($dir.$pic,$template,$start); break;
default :
echo index_print
($dir,$ext,$template,$dia,$cols,$f,$maxperpage,$start); }
}
main($cmd,$img_dir,$pic,$borderpic,$templatefile,$columns,$save,$f,$thumbs_dir,$maxperpage,$start,$ext_pattern);
?>
Plik: index.php3
<?php
//directory with original pics
$img_dir = "galeria/";
//directory for thumbnail files
$thumbs_dir = "miniaturki/";
//thumbnail template
$borderpic = "ramka.png";
//spacing between template size and thumbnail size
$thumbsborder = 10;
//thumbnails in one row
$columns = 3;
//thumbnails on one page
$maxperpage = 30;
//htmlcode around
$templatefile = "galeria.html";
//save generated thumbnails? faster!
$save = true;
//regular expression for filemask
// ".+.png$|.+.jpg$" = all .png and .jpg
// ".+.jp[e]{0,1}g$" = all .jpeg and .jpg
// ".+.gif" = all .gif
$ext_pattern = ".+.jp[e]{0,1}g$";
//caption of thumbnail table
$infocaption = "Proszę kliknąć na miniaturke aby zobaczyć zdjęcie w oryginalnym romiarze";
//link to previous page
$prevcaption = "Poprzednie";
//link to next page
$nextcaption = "Następne";
include("nailcut.php3");
?>
edit: wieczorem podam linka
Ten post edytował suchy1 9.12.2008, 08:29:41