मैं कुछ PHP कोड लिखना चाहता हूं जो स्वचालित रूप से 147x147px के माध्यम से अपलोड की गई किसी भी छवि को आकार देता है, लेकिन मुझे नहीं पता कि इसके बारे में कैसे जाना है (मैं एक रिश्तेदार PHP नौसिखिया हूं)।
अब तक, मुझे छवियां सफलतापूर्वक अपलोड हो रही हैं, फ़िल्टिप्स को पहचाना जा रहा है और नाम साफ़ हो गए हैं, लेकिन मैं कोड में आकार की कार्यक्षमता जोड़ना चाहूंगा। उदाहरण के लिए, मुझे एक परीक्षण छवि मिली है जो 2.3MB, और 1331x1331 आयाम में है, और मैं इसे आकार देने के लिए कोड चाहूंगा, जो मुझे अनुमान है कि नाटकीय रूप से छवि की फ़ाइलों को संक्षिप्त कर देगा।
अब तक, मुझे निम्नलिखित मिला है:
if ($_FILES) {
//Put file properties into variables
$file_name = $_FILES['profile-image']['name'];
$file_size = $_FILES['profile-image']['size'];
$file_tmp_name = $_FILES['profile-image']['tmp_name'];
//Determine filetype
switch ($_FILES['profile-image']['type']) {
case 'image/jpeg': $ext = "jpg"; break;
case 'image/png': $ext = "png"; break;
default: $ext = ''; break;
}
if ($ext) {
//Check filesize
if ($file_size < 500000) {
//Process file - clean up filename and move to safe location
$n = "$file_name";
$n = ereg_replace("[^A-Za-z0-9.]", "", $n);
$n = strtolower($n);
$n = "avatars/$n";
move_uploaded_file($file_tmp_name, $n);
} else {
$bad_message = "Please ensure your chosen file is less than 5MB.";
}
} else {
$bad_message = "Please ensure your image is of filetype .jpg or.png.";
}
}
$query = "INSERT INTO users (image) VALUES ('$n')";
mysql_query($query) or die("Insert failed. " . mysql_error() . "<br />" . $query);