Онлайн скриншотер сайтов

962
.
JohnCMS
Простой онлайн скриншотер сайтов
работает через сервис: http://s-shot.ru/
Автор файла: FaZaHaK я тока переделал под JohnCMS 6.2.0
Установка:
Распаковать в корень
в pages/mainmenu.php прописываем это
echo '<div class="menu"><a href="scrin/">Онлайн скриншотер сайтов</a></div>';
Прикрепленные файлы:
.
JohnCMS
скрин
Прикрепленные файлы:
.
JohnCMS
скрин2
Прикрепленные файлы:
.
Менделеев
такие сервисы не актуальны щас, щас эра другая, в 2009 не было возможности скрин делать, а щас с телефона сразу все это дело делается нажатием 2кнопок
.
JohnCMS
fanatos, ну да может кому то понадобиться
.
Jesk, какое отношение имеет этот сервис к JohnCMS ?
.
Упс ) Это скрипт, я его не увидел )
.
А сейчас я расскажу, почему твой код полное говно.

Во-первых, отступы сбивают с толку.
При получении данных из $_POST не проверяется их наличие. Почему ты уверен, что в массиве всегда будут нужные ключи? Когда нет такой гарантии, следует использовать array_key_exists например. В $_POST['x'] и $_POST['y'] ожидаются числа, но ты зачем-то прогоняешь их через htmlspecialchars. Рекомендую почитать документацию к этой функции, чтобы в будущем не выдавать таких перлов.
Обрабатывать $url через htmlspecialchars тоже не нужно. Эта переменная используется при генерации ссылки для запроса через curl. Возможно тут стоит посмотреть в сторону urlencode (или как оно там правильно называется, не помню уже)?

Зачем там условие if (isset($img)), когда переменная всегда существует и содержит не пустую строку? Смысл присваивания $url_down = $img; мне тоже неясен.

Вот так $name = md5(mt_rand(1,999999999)); генерировать уникальные имена не стоит. Когда число скриншотов достигнет 999999999, 100% начнутся коллизии (такое возможно и раньше, но вероятность меньше), т.е. старые файлы будут перезаписаны новыми.

Если при формировании ссылки ты перестарался с htmlspecialchars, то про $_SERVER['HTTP_HOST'] почему-то забыл. HTTP_HOST содержит заголовок, отправляемый браузером, который может содержать что угодно. А может вообще отсутствовать.
.
ramzes
# reaper (28.01.2016 / 22:51)
array_key_exists
isset лучше. он принимает несколько аргументов
и с чего ты взял что хттп_хост формируктся браузером? сервер, это сервер.
максимум что ты можешь это запросить жопа.ком и получить отказ или ответ от жопа.ком, нет? есть вариант запросить у сисек.нет хост жопа.ком?
.
КИДАЛА!!! Дел не иметь!
а теперь внимательно читаем пост автора (для 2 авторов выше)
Автор файла: FaZaHaK я тока переделал под JohnCMS 6.2.0
Всего: 33