Annonceindlæg fra Infor
17. april 2001 - 19:10
#7
<html> <head> <title>Untitled Document</title> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"> </head> <? define(\'IMAGE_DIR\',\'/cdrom/clipart/\'); // source dir define(\'IMAGE_STORE_DIR\',\'/opt/apache/htdocs/images/pic/\'); // destination dir define(\'IMAGE_TYPE\',\'jpg\'); // outout image type define(\'IMAGE_DEFAULT\',\'1\'); // force default size of: 1 = width , 0 = height define(\'IMAGE_DEFAULT_SMALL_H\',\'100\'); define(\'IMAGE_DEFAULT_SMALL_W\',\'100\'); define(\'IMAGE_DEFAULT_BIG_H\',\'600\'); define(\'IMAGE_DEFAULT_BIG_W\',\'480\'); define(\'IMAGE_STORE_PRIVILAGES\',\'0707\'); // live 0707 so the directories can\'t be browsed from grabbers define(\'IMAGE_JPEG_QUALITY\',\'50\'); define(\'DB_HOST\',\'192.168.11.100\'); define(\'DB_USER\',\'root\'); define(\'DB_PASS\',\'\'); define(\'DB_NAME\',\'cat_services\'); define(\'DB_TABLE_CAT\',\'photo_categories\'); define(\'DB_TABLE_DATA\',\'photo_data\'); $conn = mysql_connect(DB_HOST,DB_USER,DB_PASS); mysql_select_db(DB_NAME, $conn); function catID ($dir) { global $conn; $sid = explode(\'/\', substr($dir, strlen(IMAGE_DIR)-1) ); $query = mysql_query(\'select id from \' . DB_TABLE_CAT . \' where name=\"\' . $sid[sizeof($sid)-1]. \'\"\', $conn); if ( $result = mysql_fetch_row($query) ) { $id = $result[0]; } else { $cid = IMAGE_STORE_DIR; for ($i=0; $i<sizeof($sid); $i++) { mysql_query(\'insert into \' . DB_TABLE_CAT . \' (name,parent_id) values(\"\' . $sid[$i]. \'\",\"\' . $id . \'\") \',$conn); $id = mysql_insert_id(); @mkdir(IMAGE_STORE_DIR . $id, IMAGE_STORE_PRIVILAGES); } } return $id; } function grabDir($dir) { global $conn; $files = dir($dir); $files->read(); $files->read(); while ( $file = $files->read() ) { $current = \"$dir/$file\"; if ( is_dir($current) ) { grabDir($current); } elseif ( $img = getimagesize($current) ) { echo \"$current -> $img[0] x $img[1] x $img[2] \"; switch ($img[2]) { case 1: $sim = ImageCreateFromGIF($current); break; case 2: $sim = ImageCreateFromJPEG($current); break; case 3: $sim = ImageCreateFromPNG($current); break; default: break; } if ( IMAGE_DEFAULT ) { $dstW_small = IMAGE_DEFAULT_SMALL_W; $dstH_small = floor($dstW_small * $img[1] / $img[0]); $dstW_big = IMAGE_DEFAULT_BIG_W; $dstH_big = floor($dstW_big * $img[1] / $img[0]); } else { $dstH_small = IMAGE_DEFAULT_H; $dstW_small = floor($dstH_small * $img[0] / $img[1]); $dstH_big = IMAGE_DEFAULT_BIG_H; $dstW_big = floor($dstH_big * $img[0] / $img[1]); } $catID = catID($dir); mysql_query(\'insert into \' . DB_TABLE_DATA . \' set sW=\"\' . $dstW_small . \'\", sH=\"\' . $dstH_small . \'\", cat_id=\"\' . $catID . \'\", bW=\"\' . $dstW_big . \'\" , bH=\"\' . $dstH_big . \'\"\' ,$conn); $id = mysql_insert_id($conn); $dim_small = imagecreate($dstW_small, $dstH_small); $dim_big = imagecreate($dstW_big, $dstH_big); imagecopyresized($dim_small, $sim, 0, 0, 0, 0, $dstW_small, $dstH_small, $img[0], $img[1]); imagecopyresized($dim_big, $sim, 0, 0, 0, 0, $dstW_big, $dstH_big, $img[0], $img[1]); imagedestroy($sim); $destination = IMAGE_STORE_DIR . $catID . \'/\' . $id; switch (IMAGE_TYPE) { case \'gif\': ImageGIF($dim_small, $destination . \'s.\' . IMAGE_TYPE); ImageGIF($dim_big, $destination . \'b.\' . IMAGE_TYPE); break; case \'jpg\': ImageJPEG($dim_small, $destination . \'s.\' . IMAGE_TYPE, IMAGE_JPEG_QUALITY); ImageJPEG($dim_big, $destination . \'b.\' . IMAGE_TYPE, IMAGE_JPEG_QUALITY); break; case \'png\': ImagePNG($dim_small, $destination . \'s.\' . IMAGE_TYPE); ImagePNG($dim_big, $destination . \'b.\' . IMAGE_TYPE); break; case \'wbmp\': ImageWBMP($dim_small, $destination . \'s.\' . IMAGE_TYPE); ImageWBMP($dim_big, $destination . \'b.\' . IMAGE_TYPE); break; default: break; } imagedestroy($dim_big); imagedestroy($dim_small); mysql_query(\'update \' . DB_TABLE_DATA . \' set bsize=\"\' . filesize($destination . \'b.\' . IMAGE_TYPE) . \'\"\' ,$conn); echo \".. saved<br>\\n\"; flush(); } } $files->close(); unset($files); clearstatcache(); } echo \'Image converting...\'; grabDir(IMAGE_DIR); ?> <body bgcolor=\"#FFFFFF\" text=\"#000000\"> </body> </html>