07-04-2007, 23:21
|
|
|
חבר מתאריך: 25.08.03
הודעות: 9,114
|
|
ראשית, חבל לקרוא לפונקציה פעמיים, רצוי לקרוא לך פעם אחת בלבד ובאותה הזמדנות כבר לשמור את הערך לשימשו עתידי.
לדוגמה:
קוד PHP:
<?
if($img = @getimagesize($image))
{
...
}
?>
שנית, כתבתי בעבר קוד דומה, אני מצרף את כל תוכן הדף (זה דף קטן שכנראה שימש אובייקט xmlhttp כלשהו, למרות שקוד דומה כתבתי גם ב-js בצד הלקוח).
במשתנה GET מתקבלים שם התמונה, אורך רצוי, גובה רצוי. המידות שיוזחרו הן מידות של הגדלה עם פורפורציה (ולאו דווקא למידות המדוייקות שנדרשו).
קוד PHP:
<?php
define('W', $_GET['w']);
define('H', $_GET['h']);
list($w, $h) = @getimagesize($_GET['src']);
if(!$w && !$h)
{
if($w<W || $h<H)
{
$doubling = (W && H) ? min(W/$w, H/$h) : (W ? W/$w : H/$h);
$w = floor($w *= $doubling);
$h = floor($h *= $doubling);
}
$status = 'OK';
}
else
{
$status = 'Error';
$tech = 'Error occur. L'.__LINE__;
}
header('Content-Type: text/xml');
echo '<?xml version="1.0"?><body><status>'.$status.'</status><w>'.$w.'</w><h>'.$h.'</h><tech>'.$tech.'</tech></body>';
?>
|