הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   כתבתי קוד ב PHP לשינוי גודל של תמונה, בחינם לשימוש (https://hosts.co.il/forums/showthread.php?t=16301)

-roee- 20-02-06 20:45

כתבתי קוד ב PHP לשינוי גודל של תמונה, בחינם לשימוש
 
שלום,
לאחר שלא הייתי פעיל פה הרבה זמן יחסית החלטתי לבנות איזה משהו קטן כזה לפורום...
אני בניתי קוד שעובד על משתנים ב GET.
על מנת להשתמש עושים ככה בכתובת:
image.php?i=http://www.hosts.co.il/forums/images/misc/vbulletin3_logo_white.gif&width=400&height=400

פרטים:
i = הכתובת של התמונה
width = הרוחב שאתם רוצים לשנות אליו
height = הגובה שאתם רוצים לשנות אליו

היתרונות הם שהסקריפט עובד עם כל סוגי הסיומות. GIF, JPG, PNG, JPEG וכו.....

והנה הוא
הסקריפט:
PHP קוד:

<?php
$file 
$_GET["i"];
$width $_GET["width"];
$height $_GET["height"];
$picname resizepics($file$width$height);
echo 
$pickname;
die( 
"<font color=\"#FF0066\"><center><b>File not exists :(<b></center></FONT>");
function 
resizepics($pics$newwidth$newheight){
     if(
preg_match("/.jpg/i""$pics")){
           
header('Content-type: image/jpeg');
     }
     if (
preg_match("/.gif/i""$pics")){
           
header('Content-type: image/gif');
     } 
     list(
$width$height) = getimagesize($pics);
     if(
$width $height && $newheight $height){
       
$newheight $height / ($width $newwidth);
     } else if (
$width $height && $newwidth $width) {
       
$newwidth $width / ($height $newheight);    
     } else {
       
$newwidth $width;
       
$newheight $height;
   }
   if(
preg_match("/.jpg/i""$pics")){
   
$source imagecreatefromjpeg($pics);
   }
   if(
preg_match("/.jpeg/i""$pics")){
   
$source imagecreatefromjpeg($pics);
   }
   if(
preg_match("/.jpeg/i""$pics")){
   
$source Imagecreatefromjpeg($pics);
   }
   if(
preg_match("/.png/i""$pics")){
   
$source imagecreatefrompng($pics);
   }
   if(
preg_match("/.gif/i""$pics")){
   
$source imagecreatefromgif($pics);
   }
   
$thumb imagecreatetruecolor($newwidth$newheight);
   
imagecopyresized($thumb$source0000$newwidth$newheight$width$height);
   return 
imagejpeg($thumb);
   if(
preg_match("/.jpg/i""$pics")){
   return 
imagejpeg($thumb);
   }
   if(
preg_match("/.jpeg/i""$pics")){
   return 
imagejpeg($thumb);
   }
   if(
preg_match("/.jpeg/i""$pics")){
   return 
imagejpeg($thumb);
   }
   if(
preg_match("/.png/i""$pics")){
   return 
imagepng($thumb);
   }
   if(
preg_match("/.gif/i""$pics")){
   return 
imagegif($thumb);
   }
 }
?>

תהנו ולפחות תפיקו ממנו משהו

Panda 20-02-06 21:04

יפה מאד, לי באופן אישי לא יעזור אבל אני מקווה שלאחרים כן!:-)

meshuga 20-02-06 21:15

דבר ראשון זה לא כל סוגי התמונות יש BMP.....וזה לא נתמך ע"י GD....
וגם ה-("/.jpg/i" ) שלך לא טוב, אם אני יקרא לתמונה בשם asd.jpg.gif הוא לא ידע איזה מהם זה הסיומת.

בכל מקרה, זה רק דברים לתיקון שאמרתי, חוץ מזה הכל אחלה, אני מקווה שלא תראה את הצד השלילי שהיה בהודעה אלא תלמד ממנה ותנסה לשפר.

תודה רבה.

OldMega 21-02-06 11:53

יפה! זה יעזור לכמה מפה ...

eliav12 21-02-06 13:27

תודה..


כל הזמנים הם GMT +2. הזמן כעת הוא 05:13.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ