めまいサーブでクラスImagickを使用しようとしています
私はこのフォームを持っています
<form action="thumb.php" method="post" enctype="multipart/form-data">
<p>
<label for="file">Select a file:</label>
<input type="file" name="userfile" id="file"> <br />
<button>Upload File</button>
<p>
</form>
そしてこのphp
<?php
error_reporting(-1);
$imagePath = $_FILES["userfile"];
$thumbnailWidth = 100;
$thumbnailHeight = 100;
$srgbPath = 'thumb/sRGB_v4_ICC_preference.icc';
$image = new Imagick($imagePath);
$width = $image->getImageWidth();
$height = $image->getImageHeight();
$srgb = file_get_contents($srgbPath);
$image->profileImage('icc', $srgb);
$image->stripImage();
$image->setImageColorspace(Imagick::COLORSPACE_SRGB);
$fitWidth = ($thumbnailWidth / $width) < ($thumbnailHeight / $height);
$image->thumbnailImage(
$fitWidth ? $thumbnailWidth : 0,
$fitWidth ? 0 : $thumbnailHeight
);
$imagePathParts = pathinfo($imagePath);
$thumbnailPath = "thumb/miniaturas/".
$imagePathParts['filename'].'_'.
$thumbnailWidth.'x'.$thumbnailHeight.'.jpg';
$image->setImageCompressionQuality(90);
$image->writeImage($thumbnailPath);
echo $image;
$image->clear();
$image->destroy();
?>
そして私はこのエラーを受け取ります:
致命的なエラー:キャッチされない例外'ImagickException'とメッセージ'unable to open image `C:\ Users \ fel \ VertrigoServ \ www \ login \ main_image.jpg':そのようなファイルまたはディレクトリはありません@ error / blob.c / OpenBlob / 2587 ' C:\ Users \ fel \ VertrigoServ \ www \ login \ thumb.php:12スタックトレース:#0 C:\ Users \ fel \ VertrigoServ \ www \ login \ thumb.php(12):Imagick-> __ Construct(Array )#1 {main}が12行目のC:\ Users \ fel \ VertrigoServ \ www \ login\thumb.phpにスローされました
デスクトップにある画像を開こうとしていますが、ローカルホストの貼り付けでエラーが検索されているようです。
`C:\ Users \ fel \ VertrigoServ \ www \ login \ main_image.jpg':
何か案が?
これを変更した場合
$imagePath = $_FILES["userfile"];
これに
$imagePath = 'thumb/main.jpg';
すべて正常に動作します
ありがとう