350x100を超えるアップロードスクリプトを使用してアップロードされる画像のサイズを350x100に縮小するにはどうすればよいですか?ダウンスケーリング/サイズ変更?
マイスクリプト:
$allowed_filetypes = array('.png','.PNG');
$filename = $_FILES['strUpload']['name'];
$ext = substr($filename, strpos($filename,'.'), strlen($filename)-1);
if(in_array($ext,$allowed_filetypes))
{
list($width, $height, $type, $attr) = getimagesize($_FILES['strUpload']['tmp_name']);
if ($width > 350 || $height > 100)
{
echo "That file dimensions are not allowed. Only 350x100 is allowed";
exit();
}
if ($_FILES['strUpload']['size'] > 2097152)
{
echo "ERROR: Large File Size. Only less than 2mb accepted";
exit();
}
$imagename = uniqid('ff') . ".png";
move_uploaded_file ($_FILES['strUpload']['tmp_name'], $imagename);
print ("<script type=\"text/javascript\">");
if(file_exists($imagename) && $_FILES['strUpload']['name'] != '')
{
print ("self.opener.SetImageFile(\"" . $imagename . "\");");
echo "\n";
print ("self.opener.setInputFile(\"" . $imagename . "\");");
}
echo "\n";
print ("window.close();");
echo "\n";
print ("</script>");
$open = new dbconnect();
$open->callDB("localhost","pema2201_william","lindberg","pema2201_siggen");
$ip = $_SERVER['REMOTE_ADDR'];
$dattum = date('Y-m-d H:i:s', time());
mysql_query("INSERT INTO piclist (ip,pic,datum) VALUES('$ip','$imagename','$dattum')") or die(mysql_error());
}
else
{
echo "WRONG FILE TYPE ONLY PNG ALLOWED"
}
多分、すべての行の前に4行のスペースを入れてコードを書式化して、より明確にする必要があります – Eineki
これらのことがどのように機能するかは($ _SERVER ['REMOTE_ADDR'] 'が偽造可能かどうか)は分かりませんが、いくつかのクエリをエスケープするのが賢明です。 –