supernova Posted January 19, 2008 Report Share Posted January 19, 2008 Kā lai uztaisa, kad uploadē attēlu galerijā(folderī) caur webu, : <form method="post" action="<?=$script_url;?>?<?=$_SERVER['QUERY_STRING'];?>" enctype="multipart/form-data" style="margin:0px;"> <input type="file" name="image" /> <input type="hidden" name="album" value="<?=$album;?>" /> <input type="hidden" name="upload" value="true" /> <input type="submit" value=" OK! " /> Lai Thumbnailu izmēri būtu katram bilžu izmēram savādāki(diva tipa) viens prieksh 1024 x 768 izmēra, otrs prieksh 768 x 1024. a tgd man ir tā ka visi attēlu thumnail'i ir 145x120 :( Thumbnail skripts apm šāds: $thumb_width="145"; //Width of the thumb $thumb_height="120"; // Height of the thumb $imgdata=getimagesize($full_server.$album.$file); $imgresized=imagecreatetruecolor($thumb_width, $thumb_height); If($file_ext=="gif") { $imgsoruce=imagecreatefromgif($full_server.$album.$file); } Elseif($file_ext=="jpg") { $imgsoruce=imagecreatefromjpeg($full_server.$album.$file); } Elseif($file_ext=="png") { $imgsoruce=imagecreatefrompng($full_server.$album.$file); } Else { return false; } Es vēlos panākt, lai katrai bildžu tipam, piem horizontālajai(1024 x 768) un portretam(768 x 1024) būtu katram savu izmēru thumnaiļi,, lūdzu kāds palīdzat! Link to comment Share on other sites More sharing options...
Kavacky Posted January 19, 2008 Report Share Posted January 19, 2008 $img = imagecreatefrom*(...); $w = imagesx($img); $h = imagesy($img); if ( $w > $h ) { // horizontāla } else { // vertikāla } Link to comment Share on other sites More sharing options...
supernova Posted January 19, 2008 Author Report Share Posted January 19, 2008 Nevajag taisīt muļķīgas QUOTEs kur man ir jaaraksta tie izmeeri thumbnailjiem??? O_o Link to comment Share on other sites More sharing options...
mounkuls Posted January 19, 2008 Report Share Posted January 19, 2008 if ( $w > $h ) { // horizontāla // te liec izmerus tiem $thumb_width="145"; $thumb_height="120"; kādus vajag priekš horizontālās } else { // vertikāla // te liec izmerus tiem $thumb_width="145"; $thumb_height="120"; kādus vajag priekš portreta } Link to comment Share on other sites More sharing options...
supernova Posted January 19, 2008 Author Report Share Posted January 19, 2008 Nevajag taisīt muļķīgas QUOTEs es taa ari izdariiju, bet man visi atteelu thumbnaili ir sataisiiti peec portreta izmeeriem(145x190), arii tie kuri bija horizontaalie, te pilns kods: http://paste.php.lv/6762 Link to comment Share on other sites More sharing options...
Lynx Posted January 19, 2008 Report Share Posted January 19, 2008 Kā tad tavam kodam būtu jasaprot, kas ir $w un $h, ja viņi pirms tam nav definēti? 1) Iesaku rakstīt pašam kodu no 0, būs daudz vieglāk un pats neapmaldīsies. Kā arī tajā kodā ir ļoti daudz neglīti risinājumi. 2) Nav nepieciešams int vērtības likt pēdiņās. 3) Tas ifs, kas nosaka izmērus tev janes no augšas uz to vietu, kur tu jau esi noskaidrojis attēla izmēru, gala rezultāts ir šāds: $imgdata=getimagesize($full_server.$album.$file); if ($imgdata[0] > $imgdata[1] ) { $thumb_width=145; $thumb_height=120; } else { $thumb_width=145; $thumb_height=193; } $imgresized=imagecreatetruecolor($thumb_width, $thumb_height); If($file_ext=="gif") { $imgsoruce=imagecreatefromgif($full_server.$album.$file); } //..... imagecopyresized($imgresized, $imgsoruce, 0, 0, 0, 0, $thumb_width, $thumb_height, $imgdata[0], $imgdata[1]); Link to comment Share on other sites More sharing options...
Wuu Posted January 19, 2008 Report Share Posted January 19, 2008 (edited) function createtrumb ($filename,$width,$height,$newfile) { list($width_orig, $height_orig) = getimagesize($filename); $ratio_orig = $width_orig/$height_orig; if ($width/$height > $ratio_orig) { $width = $height*$ratio_orig; } else { $height = $width/$ratio_orig; } $image_p = imagecreatetruecolor($width, $height); $image = imagecreatefromjpeg($filename); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); imagejpeg($image_p,$newfile, 100); imagedestroy($image_p); imagedestroy($image); } createtrumb ($filename,90,70,$newfile); createtrumb(bildeKoAtver,maxPlatums,maxAugstums,KurSaglabātJaunoAtēlu); Nekropļo bildi vienkārši samazina līdz maksimālajiem lielumiem! Edited January 19, 2008 by Wuu Link to comment Share on other sites More sharing options...
supernova Posted January 19, 2008 Author Report Share Posted January 19, 2008 Nevajag taisīt muļķīgas QUOTEs :/ itkaa izmeeri izdevaas, bet thumbnailji visi ir melni! nau atteeli vinjos! Link to comment Share on other sites More sharing options...
Wuu Posted January 19, 2008 Report Share Posted January 19, 2008 Nevajag taisīt muļķīgas QUOTEs Pamēģini funkciju ko es ieliku 100% strādā ! Link to comment Share on other sites More sharing options...
supernova Posted January 19, 2008 Author Report Share Posted January 19, 2008 Nevajag taisīt muļķīgas QUOTEs es jau to arii lietoju :( varbuut netaa ierakstiiju, luudzu ja vari iepousto pilnu versiju paste.php.lv , nezinu ko es ne taa sadariiju :( Link to comment Share on other sites More sharing options...
Lynx Posted January 19, 2008 Report Share Posted January 19, 2008 Kā teiktu bubu: netaisi muļķigas quotes :P Un es ceru, ka manā variantā tu šo komentāru rindu: //..... nomainīji ar pārējo nepieciešamo kodu(kuru es nepostoju, lai lieki nepiesārņotu vietu), jo spriežot pēc tavām problēmām es to stripri sāku to apšaubīt... Link to comment Share on other sites More sharing options...
supernova Posted January 19, 2008 Author Report Share Posted January 19, 2008 (edited) Viss kartiibaa! Edited January 20, 2008 by supernova Link to comment Share on other sites More sharing options...
Recommended Posts