На моем локальном хосте этот код работает хорошо:
$im = imagecreatefrompng('BBcode.png');
Но когда я использую тот же код на сервере
$im = imagecreatefrompng('http://lazertag.elitno.net/drupal/BBcode.png');
Я получил следующую ошибку:
Предупреждение: imagecreatefrompng (http://lazertag.elitno.net/drupal/BBcode.png) [function.imagecreatefrompng]: не удалось открыть поток: сбой HTTP-запроса! HTTP / 1.1 403 Запрещено в /www/elitno.net/l/a/lazertag/home/site/drupal / renderImage.php в строке 46
Как мне решить эту проблему?
Если файл находится на вашем сервере, используйте (относительный) системный путь, а не URL: E.g.:
$im = imagecreatefrompng('drupal/BBcode.png');
403 Запрещено означает, что сервер заблокировал вам доступ к файлу.Вы можете попробовать сделать file_get_contents ("http: // ....");получите сообщение об ошибке, может быть, создатель сайта поместил его на место, иначе вы должны поговорить с ним.
Перед использованием imagecreate, можете ли вы загрузить удаленное изображение в локальную папку и поработать с ним ?!
ваш бывший:
$imagefile = file_get_contents('http://lazertag.elitno.net/drupal/BBcode.png'); $fp = fopen('./BBcode.png', 'w+')); fputs($fp, $imagefile); fclo$fp); unset($imagefile); $im = imagecreatefrompng('./BBcode.png');