こちらが私のページです。私の質問は、写真をアップロードするとフォームが空白のページを返す理由です。最後のswitchステートメントを追加するまではうまくいきました。イメージを作るもの。(imagejpeg 関数) switch ステートメントなしで実行すると機能します。しかし、switch ステートメントを追加すると、フォームが消えます。私の質問は、switchステートメントで何が間違っているのですか? またはコード全体で?
$imageFile = $_FILES['image']['tmp_name'];
$filename = basename( $_FILES['image']['name']);
list($width, $height) = getimagesize($imageFile);
$picture = getimagesize($imageFile);
if ($width >= $height)
{
$orig_w = 500;
$orig_h =($height/$width)*$orig_w;
} else
{
$orig_h = 500;
$orig_w = ($width/$height)*$orig_h;
}
$picture['format'] = strtolower(preg_replace('/^.*?\//', '', $picture['mime']));
switch( $picture['format'] ) {
case 'jpg':
case 'jpeg':
$src = imagecreatefromjpeg($imageFile);
break;
case 'png':
$src = imagecreatefrompng($imageFile);
break;
case 'gif':
$src = imagecreatefromgif($imageFile);
break;
default:
echo "unsproted format";
break;
}
$tmp = imagecreatetruecolor($orig_w, $orig_h);
imagecopyresampled($tmp, $src , 0,0,0,0, $orig_w,$orig_h, $width, $height);
switch( $picture['format'] ) {
case 'jpg':
case 'jpeg':
return imagejpeg($tmp, $folder.$filename, 100);
break;
case 'png':
return imagepng($tmp, $folder.$filename);
break;
case 'gif':
return imagegif($tmp, $folder.$filename);
break;
default:
echo "unsproted format";
break;
}
imagedestroy($tmp);
imagedestroy($src);
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<h1 > php image upload form </h1>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">
<p>
<label for="image" > Image: </label>
<input type="file" name="image" id="image" /> <br/>
</p>
<p>
<input type="submit" name="submit" value="upload image" />
</p>
</form>
</body>
</html>