Я получаю следующую ошибку при записи миниатюр в приведенный ниже каталог
Warning: imagejpeg() [function.imagejpeg]: Unable to open 'D:\imagesdb\images\62t\' for writing: No such file or directory
если я вручную создаю каталог, а затем добавлю его в imagejpeg (), например: C: \ images Я получаю ту же ошибку, это также относится, если я использую fopen
Warning: fopen(C:\images\) [function.fopen]: failed to open stream: No such file or directory
Все пути exsist! Я также проверил varibles, чтобы проверить правильность путей, и я не теряю данные (var_dump!)
Я также пробовал chmod, но я использую окна, и это не должно применяться?
я использую
Windows XP Home Edition SP3 running localhost, XAMMP, apache, php
Я волнуюсь, если это версия ОС, которую я использую, я попытался предоставить доступ к локальной учетной записи службы apache в «сервисах», попробовал обмен файлами!
Я могу записать нормальные изображения при загрузке в другую папку «images \ 62» в той же самой dirctory, однако «images \ 62t» либо имеет разрешение, либо не существует, когда я пытаюсь написать большой палец?
Я проверил php.ini, gd включен, и я пробовал un-commenting: extension = php_gd2.dll, безопасный режим также отключен.
Я волнуюсь, если это моя версия ОС, она очень ограничена в отношении прав доступа к файлам? Или это только мой код?
if($this->changed){ //$tp = fopen("C:\images\\",'w+'); chmod($this->thumb_path, 0777); $originalImage = imagecreatefromjpeg($this->image_path); $width = imagesx($originalImage); $height = imagesy($originalImage); $thumb_width = $this->thumbWidth; $thumb_height = floor($height * ($this->thumbWidth / $width)); $newImage = imagecreatetruecolor($thumb_width,$thumb_height); imagecopyresized($newImage,$originalImage, 0, 0, 0, 0, $thumb_width, $thumb_height, $width, $height ); imagejpeg($newImage,$this->thumb_path); } else { $this->_messages[] = $field['name' ] . 'did not upload please check and try again' ; }
$this->thumb_path
вероятно, содержит только путь без имени файла. Без имени файла: Как PHP должен знать, как назвать файл?
попробуйте поставить относительный путь вместо того, чтобы поместить абсолютный путь в imagejpeg, по крайней мере, так я разрешаю эту проблему.
$image_path=getcwd()."/your_images_directory/yourfile.jpg";
chmod в ваш каталог до 775 или независимо от ваших требований.
У этого стека есть предложения для разрешений