Я пытаюсь загрузить изображение из Интернета и сохранить его на своем локальном хосте, но получаю следующее:
A PHP Error was encountered Severity: Warning
Message: file_put_contents(C:\xampp\htdocs\scraper\application\temp): failed to open stream: Permission denied
Filename: controllers/Scrape.php
Line Number: 69
Backtrace:
File: C:\xampp\htdocs\scraper\application\controllers\Scrape.php Line: 69 Function: file_put_contents
File: C:\xampp\htdocs\scraper\index.php Line: 315 Function: require_once
public function DownloadImages(){
$img = 'http://daytodata.net/wp-content/uploads/2018/09/Dise%C3%B1o-sin-t%C3%ADtulo-35.png';
$dest = APPPATH."temp";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $img);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_HEADER , 0);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$result = @curl_exec($ch);
$curl_err = curl_error($ch);
curl_close($ch);
if (empty($curl_err)) {
file_put_contents($dest, $result);
}
}
Я хочу сохранить его на моем локальном хосте. Было бы лучше сохранить его как blob-объект в моей таблице mysql, а не локально? В любом случае, любая помощь в вышеуказанном будет полезна!






попробуйте это для типа blob:
if (count($_FILES) > 0) {
if (is_uploaded_file($_FILES['image']['tmp_name'])) {
$imgData = addslashes(file_get_contents($_FILES['image']['tmp_name']));
$imageProperties = getimageSize($_FILES['image']['tmp_name']);
}
все правильно. просто предоставьте разрешение на каталог
C:\xampp\htdocs\scraper\application\temp
как видите, в разрешении отказано. поэтому никто другой, принимающий администратор, не может вносить изменения в конкретный каталог.