PDA

Просмотр полной версии : Введение в PHP, MySQL



Anonymous
08.02.2004, 06:26
ребята, а можите мнепомочь с конкретной задачей:) Это создание базы данных в php я сам пытался разобраться, тно так ничего и не понял... каким образом и где ее создовать, нужны ли дополнительные программы... ну и соответственно как их (базы данных) изменять и дополнять... да и вообще все что можно с ними делать? т.к. javascript с которым я сам вроде разобрался никаких таких возможностей не предусматривает:)

iFog
08.02.2004, 13:55
Если ты ещё совсем не знаком с пхп - объяснять что-либо бесполезно.
тебе сначала нужно многое самому прочитать, так как правильно ответить на вопрос можно только если вопрос правильно поставлен, а чтобы правильно поставить вопрос, нужно на 60% знать ответ.

Читай пока это
http://detail.phpclub.net/article/phpintro

Anonymous
11.02.2004, 06:59
Как я понимаю, MySQL это отдельный продукт, необходимый для установки, можно ли узнать: 1. Что входит в него; 2. Где это взять; 3. Как правильно его устанавливать.

fog, большое спасибо, за ссылку, очень полезной оказалась та информация. Про php знаю и в принципе читал, но все дело в том, что сам все читал и не многое понял. А самое сложное для меня, это когда практически нет примеров. Если ты можешь, то помоги с примерами, мог бы ты привести пример форума? В котором было бы расписано что к чему? т.е. каким образом поисходит сохранение текста, его последующая запись?.
В принципе я могу показать, что я хочу сделать на php... для начала. Это обычные тесты.

Anonymous
11.02.2004, 07:18
Вот пример тестов которые написаны: http://testinvisible.narod.ru/
и которые мне необходимо изобразить в php, если есть конкретные соображения то прошу написать о них или если можите выслать на e-mail [email protected]

Даниил
11.02.2004, 07:21
:) Только что зарегистрировался. Теперь я буду не invisible

iFog
11.02.2004, 09:59
Примеров в интернете - завались. Достаточно у Яндекса спросить.
Если ты только начал - попробуй написать сначала что-то попроще чем форум, гостевую книгу например =)

скриптов можно взять например тут (http://cgi.myweb.ru/catalog.phtml?ca_id=8&cp_level=1)

iFog
12.02.2004, 18:53
и вообще http://www.php.net/manual/ru/getting-started.php

insane
19.02.2004, 03:43
Я так и не пробовал PHP, хотя многие советуют. Люблю PERL. Пока слазить с него не собираюсь.

iFog
19.02.2004, 10:56
insane, перл тоже хороший язык, но если написать нужно систему управления контентом - пхп на мой взгляд гораздо удобнее.
Вообще-то код на перле считается одним из самых трудночитаемых :)

Даниил
21.02.2004, 06:02
У меня есть вопрос... если есть форма:
<FORM ACTION="townon.php" METHOD="POST">
<INPUT TYPE="text" NAME="name" SIZE="20" MAXLENGTH="30">
<INPUT TYPE="password" NAME="pass" SIZE="20" MAXLENGTH="30">
... (и много много таких к примеру штуки 4 или более вниз)

Можно ли написать функцию или можт уже что есть, которая бы сама присваивала значение NAME="name" опред. переменной, кроме как каждый раз прописывать $name=$_POST['name'] ?
Если что есть, то буду очень рад... с ув.

iFog
21.02.2004, 09:10
А что тебе мешает и дальше работать с масивом $_POST ? Это вполне корректно.
Можно, конечно, использовать extract (http://ua.php.net/extract/)($_POST);

atomizer
22.02.2004, 08:35
помнится переменная name сама создается после отправки формы!

Даниил
23.02.2004, 05:05
У меня есть глупый вопрос, а как в php открыть новое окно при нажатии ссылки, передав туда часть введеной в форме информации, при этом не используя ссылку в виде "viewtopic.php?p=1111#1111", а просто "viewtopic.php"?

iFog
23.02.2004, 13:34
atomizer, это если в настройках стоит register_globals = 1, то не рекомендуется, в целях безопасности, и по умолчанию отключено, если я не ошибаюсь.

iFog
23.02.2004, 13:36
Даниил, как-то ты не понятно вопрос задал.

iFog
23.02.2004, 15:21
Lord of rings, а ты мог бы дать эту книгу почитать? Не на долго, кое-что посмотреть в ней хочется.

Lord of rings
23.02.2004, 15:22
Даниил, поищи лучше на книжке что-то вроде: Д. Котеров "Самоучитель по ПХП"... Она мне в свое время очень помогла понять основы, потом я уже начал лазить на специализированные сайты...
И постарайся читать её не кусками, которые тебе прямо сейчас нужны, а подряд. Причем так - прочитал пару страниц - сел за комп и прогнал скриптик... И так по порядку... Многие общие вопросы у тебя со временем сами отпадут. А частные уже не стыдно задавать.

Да, не забудь поставить какой-нибудь текстовый редактор, чтоб номера строк показывал. Aditor прекрасно подойдет...

iFog
23.02.2004, 15:22
Lord of rings, куда же ты пост удалил? :)

Lord of rings
23.02.2004, 15:25
А... уже вернул... после такого количества накануне выпитого, я не на те кнопки иногда попадаю
можешь этот пост удалить...

iFog
23.02.2004, 15:30
=)) так как с книгой?

если интересно, могу дать почитать "PHP4 - разработка web-приложений", хэто не учебник по программированию на PHP, а теория по созданию web-проектов, с использованием PHP.

Даниил
24.02.2004, 05:49
Мне бы кто что дал почитать:)
Lord of rings, а мне не стыдно задавать глупые вопросы, потому как я знаю, что по большому счету ничего не знаю, но хочу узнать. Я очень благодарен за ответы:) даже если я ничего не понял и меня не поняли... то я черпаю новую информацию и далее учусь ставить правильные вопросы:)

У меня есть новый вопрос (если я надоел с вопросами можно просто не отвечать, я ведь просто любопытный человек):
Есть координаты x и y, как правильно организовать чтение и запись их в файл? Так чтобы при добавлении новой пары старые не исчезали?

Lord of rings
24.02.2004, 10:34
Есть координаты x и y, как правильно организовать чтение и запись их в файл? Так чтобы при добавлении новой пары старые не исчезали?

Даниил, ты бы хоть вопросы научился правильно ставить. Какие координаты, откуда они берутся и т.д.???? Если это для ПХП, то там есть набор функций для работы с текстовыми файлами...

Даниил
25.02.2004, 05:05
Lord of rings, Набор функций есть везде. А вопрос правильный. Есть координаты x и у --- это переменные значения, которые необходимо сохранять и затем читать, при необходимости. А какие функции и как их правильнорасположить скажи.

Lord of rings
25.02.2004, 10:22
Lord of rings, Набор функций есть везде. А вопрос правильный. Есть координаты x и у --- это переменные значения, которые необходимо сохранять и затем читать, при необходимости. А какие функции и как их правильнорасположить скажи.

Не скажу - изыщи гривен 30 на учебник по ПХП и проштудируй... А то хочешь всё и сразу... В том учебнике, что я сказал есть раздел "Работа с файлами". Если денег совсем нету, полезай хоть на www.citforum.ru.

iFog
25.02.2004, 11:03
Какой Ситифорум =)
первым делом сюда http://www.php.net/manual/ru/ref.filesystem.php

Lord of rings
25.02.2004, 13:06
Какой Ситифорум =)
первым делом сюда http://www.php.net/manual/ru/ref.filesystem.php

Какая разница куда, если человек не может понять, что переходят от общего к частному, а не наоборот

Даниил
21.03.2004, 13:24
Привет всем, я снова с вопросами.
Когда я выполняю:
$x00=fopen("counter.php","r+");
fputs($x00,$x02);
fclose($x00);
и (или)
$x01=fopen("base.php","w");
fputs($x01,$x06);
fclose($x01);}
у себя на компе, то все нормально.
А когда гружу на хостинг: ruwh.com и запускаю сайт http://testinfo.ruwh.com/admin.php он выдает ошибку?
С уважением...

Lord of rings
21.03.2004, 18:36
Даниил, а ты литературой обзавелся????

Даниил
22.03.2004, 05:00
Нет. Ті помочь можешь или не хочешь?

Даниил
22.03.2004, 06:52
Всем спасибо вроде как разобрался:)

Lord of rings
22.03.2004, 12:52
Нет. Ті помочь можешь или не хочешь?

Чем помочь??? Материально?

Даниил
22.03.2004, 19:41
Ты действительно такой... или притворяешься?

Lord of rings
23.03.2004, 11:20
Ты действительно такой... или притворяешься?Какой?

iFog
23.03.2004, 12:02
Даниил,
phpclub.ru
php.spb.ru
webscript.ru
cgi.myweb.ru

всё что тебе нужно

Lord of rings
23.03.2004, 19:25
Вот еще один:
http://www.citforum.ru/internet/php.shtml

iFog
23.03.2004, 19:32
Ой, нет, Вебскрипт не читай =)
там такое http://www.webscript.ru/stories/03/04/11/6874707 можно найти :-/
Ещё прочтёшь что-нибудь вредное :) Хотя хорошие статьи там тоже есть.

Можно ещё почитать статьи Спектатора http://spectator.ru

Даниил
23.03.2004, 19:32
fog обязательно зайду, спасибо:)
Lord of rings, спасибо, ты уже давал эту ссылку, я там уже был. И кое что читал:) (А на счет "такой" -- властительный? не пойми это как оскорбление, просто не часто мне встречается такой темперамент людей как у тебя)
С уважением, Я :)

Lord of rings
23.03.2004, 21:49
fog обязательно зайду, спасибо:)
Lord of rings, спасибо, ты уже давал эту ссылку, я там уже был. И кое что читал:) (А на счет "такой" -- властительный? не пойми это как оскорбление, просто не часто мне встречается такой темперамент людей как у тебя)
С уважением, Я :)А что ты хотел??? Я же ВЛАСТЕЛИН КОЛЕЦ...

iFog
24.03.2004, 13:04
просто не часто мне встречается такой темперамент людей как у тебя


Ты, видимо, ещё небыл на форумах где сталкиваются про-программеры и ламеры :/

Даниил
09.04.2004, 20:11
"Ты, видимо, ещё небыл на форумах где сталкиваются про-программеры и ламеры :/ " я вообщередко бываю на форумах...
Я снова тут чтобы надоедать...
1. Вопрос, есть ли в php функция, которая позволяет происходить событиям по истечению времени... (если есть то как она действует)?
и 2. возможно ли нажатие кнопки по истечению времени?

Lord of rings
10.04.2004, 18:12
"Ты, видимо, ещё небыл на форумах где сталкиваются про-программеры и ламеры :/ " я вообщередко бываю на форумах...
Я снова тут чтобы надоедать...
1. Вопрос, есть ли в php функция, которая позволяет происходить событиям по истечению времени... (если есть то как она действует)?
и 2. возможно ли нажатие кнопки по истечению времени?Думаю - лучше обратиться к старому доброму Java Script....

iFog
11.04.2004, 12:25
ты путаешь серверный(PHP, etc) и клиентский(JS, VB) скрипты.
Почитай тут http://faq.phpclub.net/

особенно там, где про "самые основы"

А функция которая тебе нужна - setTimeout() (JS)

Даниил
11.04.2004, 14:52
Я не путаю, я спрашиваю... т.к. для меня это существенно:) А сколько не перерых литературы там такого нет... вот хотел квалифицированое мнени узнать.
А функцию я знаю... мне надо организовать по завершению времени переход на другую страницу с соранением выбраных ответов:)
Как лучше в JS єто организовать?

Lray
11.04.2004, 15:23
Даниил, ну советуют тебе люди - полазь по правильным сайтам, почитай тру книжки - и все тебе станет понятно :)

Lord of rings
11.04.2004, 18:45
Даниил, Ну возьми таки пойди почитай чего-нибудь... Я кстати на твои вопросы не могу ответить конкретно - Я НЕ ЗНАЮ... Когда у меня возникают подобные вопросы - я лезу куда-нибудь (в Инет или в книгу какую-нибудь и читаю) - а ради тебя лезть и выискивать формат твоей функции JS - ты уж извини.
А насчет - "как лучше организовать" - а ты попробуй потыкаться САМ, САМ потом и поймешь, как чего лучше организовать... Кстати, если ты не можешь сходу организовать свою задачу - попробуй по-институтски - алгоритм изобразить или блок-схему, может поможет
Помню только года 2 назад я подобную проблему (с задержкой закрытия окна) я решил при помощи JS...
Вот тебе еще одна ссылка:
http://www.citforum.ru/internet/javascript/

Lord of rings
11.04.2004, 18:47
Метод setTimeout
Выполняет выражение по истечении установленного количества миллисекунд.
Синтаксис:

timeoutID=setTimeout(expression, msec)


timeoutID идентификатор, который используется только для окончания выполнения, используя метод clearTimeout.
expression строковое выражение или свойство существующего объекта.
msec числовое значение, числовой ряд или свойство существующего объекта в миллисекундах.

Метод:
frame, window
Описание:
Метод setTimeout выполняет выражение после установленного количества времени. Он не выполняет выражение многократно. Например, если метод setTimeout установлен на 5 секунд, то выражение выполнится через 5 секунд, но не каждые 5 секунд.
Смотрите также:
метод clearTimeout.

iFog
11.04.2004, 20:22
Не можешь найти - потому что не там ищешь :)
Я же говорю путаешь серверную часть с клиентской.
То что ты хочешь - должно выполняться у юзера на машине.
А PHP отрабатывает на сервере.

Lord of rings
12.04.2004, 14:33
Не можешь найти - потому что не там ищешь :)
Я же говорю путаешь серверную часть с клиентской.
То что ты хочешь - должно выполняться у юзера на машине.
А PHP отрабатывает на сервере.Ну где-то да...

Даниил
15.05.2004, 05:13
Скажите я правильно понял, что rand выдает произвольное число только в целых значений???

iFog
15.05.2004, 11:25
если тебе нужны случайные числа - почитай комментарии вот тут

http://www.php.net/manual/ru/function.rand.php

там есть примеры на все случаи жизни.

BellRinger
09.06.2004, 11:16
Даниил, Случаем не планируется создание автофлудера, который закидывает сообщениями подобный форум, скажем? Нажатие кнопки (вернее отправки формы) по истечении времени - сие произходит на тачке клиента, а не сервака.

Наводящий вопрос: Где крутится PHP - на серваке или у клиента?

Jeno
26.10.2004, 16:51
Да, такая функция есть ;), только это не функция php а функция “Apache” (веб сервер), там есть такая штука как “kron”, пишешь в специальном файле: функцию, и в какое время ее запустить, и все ;).

Nightman
27.04.2005, 03:30
Всем привет!
У меня такой вопрос. На локальной машине стоит Apache 2.0.52, PHP 4.3.10, MySQL 4.1.10. Создал базу данных из консоли, оттуда же наполнил её пробными данными. Теперь при попытке соединиться с этой базой из программы на PHP он выдаёт такую ошибку:

Error 1251: Client does not support authentication protocol requested by server; consider upgrading MySQL client

И что теперь делать? Я уже целый день просидел, кучу документации перечитал, по два раза всё переустановил, а бестолку.
Заранее спасибо :)

Lord of rings
27.04.2005, 13:04
Поставь MYSQL 3-й версии - 3.23.56 или возьми свежий РНР, но первый вариант - лучше. тебе кстати, английским языком написали, в чем проблема...

Nightman
27.04.2005, 18:48
По-английски понял конечно. Только я думал, что они всё-таки могут работать вместе, а это что-то недописано в файлах конфигурации.
Кстати, а почему первый вариант лучше? Мне проще сделать второе.

Inferno
28.04.2005, 10:42
На какой ос поднимал связку?

Nightman
29.04.2005, 00:20
WinXP SP-2. А это имеет значение?

Nightman
11.05.2005, 21:38
Ещё один вопрос. Поставил PHP 5.0.4, остальное без изменений. Базы данных начал видеть, извлекать данные, всё как надо. Появилась другая проблема - не воспринимаются переменные, которые передаются в URL, наподобие

http://localhost/site/page.php?param=value

На прошлой версии PHP с этим проблем не было. Подскажите, плиз, что делать. В хелпах ничего не нашел :((

Яр
11.05.2005, 21:48
Наверное причина в register_globals?

можно делать так:
$value = $_GET['value']

или в php.ini, по-моему, поставить
register_globals = on
, что не реккомендуется в целях безопасности :)

Nightman
11.05.2005, 22:06
Спасибо, помогло. Это в PHP4 не требовалось, я и запутался.

Inferno
15.05.2005, 20:54
Угу, глобальные переменные. Научи человека плохому. Если они выключены, то наверное не просто так.
Апач 2 застрели. Если апач 2.x, то это не значит что он новее 1.х- это разные ветки. Юзай 1.3.33

Nightman
17.05.2005, 11:13
Спасибо, я знаю что 2.х - это другая ветка. Они это на своём сайте на каждой странице большими буквами пишут :) А register_globals всегда ставлю в OFF, они же (авторы) орут истерически что это опасно для вашей жизни :))) Я воспользовался первым вариантом.

Если вас не затруднит, ещё один вопрос. При сохранении данных в таблице русские буквы превращаются в знаки вопроса. При том что кодировку Win-1251 выбрал при установке MySQL, написал как default_charset в PHP и в Apache. На каждой странице тоже в тэге meta установлена такая же кодировка.

Tigra
17.05.2005, 12:13
Угу, бывает такой проблем с этой версией мускула и пхп))

http://phpclub.ru/talk/showthread.php?s=&postid=422313

Penguen
28.06.2005, 00:29
Хакеры, програмеры Хэльп. Как мне страничку вэб защитить от копирования.
Рассказываю. Написаль свою галерею посвященную Аватарам. Портал крутится в локалке, тобишь в сети городской. Дык пиплы зае.... скопировали все 5 страничек сайта и забили на мой портал. А так была б защита от сохранения и копировали себе только интересующие их аватары, а не как охапкой. Думаль как всю эту маму реализовать и них... я не надумал кроме как добавить в боди джава код oncopy='return false'. Дык этотджава только текст запрещает копировать. Видел в нете сайты защищенные от копирования. Типа страничку начинаешь сохранять. Доходит сохранения до 20 левелов и облом. Ошибка при сохранении. Мне вот нуна такое сделать. Можно и с помощью джава реализовать. Типа убрать нах... пункт сохранить и запрет пользоваться правой кнопокй но это не выход. Выручайте.

Falcon
28.06.2005, 02:22
Даниил, тут лучший справочник функций из всех виденых мною ;) http://web.php.net.ua/

Яр
28.06.2005, 10:04
Penguen, Вряд ли можно запретить копирование картинок ) Если они загрузились бравзером, значит уже по-любому можно найти даже в тех же папках кеша. Или какой то качалкой просто выкачать все картинкиы.
Можно, конечно поколдовать с Ява-апплетами, но далеко не у всех пользователей JRE установлен.

Так что, наверное, самым простым выходом будет делать показ не аватар, а их уменьшенных копий, или обрезанных или ещё чего ) Чтобы скачать, надо пойти по ссылке, заполнить проверку на робота ), и потом уже выдаётся ссылка на реальную аватару.

%)

Penguen
30.06.2005, 18:41
Вы че смеётесь. Нах... картинки еще уменьшать, если они и так маленькие 100*100. По поводу защиты от сохранения. Я говорил не о сохранении картинок, а о странице вообще.
Пиплы сохраняю страницы. На каждой странице по 30 аватаров. Мне нужно защитить именно страницы. По поводу это нельзя сделать. Люди ж как-то сделали???

Slaventius
30.06.2005, 21:52
Penguen, думаю все что можно загрузить - можно сохранить. Максимум что можно добится - невозможность сохранения в браузере, тем самым отсекая большую часть глазетелей сторинки :)

Penguen
30.06.2005, 22:32
Penguen, думаю все что можно загрузить - можно сохранить. Максимум что можно добится - невозможность сохранения в браузере, тем самым отсекая большую часть глазетелей сторинки :)
Не понял вас??? А ну по подробнее. Как это осуществить. Лично я не вьехал в эту фишку. Максимум что я сделал, это откл. контексного меню и в меню файл=>сохранить как.

Slaventius
01.07.2005, 08:18
Что именно поподробнее? Как скачать и сохранить? Или как перекрыть кислород в браузере? Если второе, то я в веб программинге не особо специалист.
А вобще встречный вопрос: а в каких целях идет борьба за несохраняемость?

Inferno
01.07.2005, 11:18
1) Ставишь рисунок в бекграунд, наверху его закрываешь растянутым рисунком из прозрачного пиксела. (как вариант можно целиком страницу залить)
2) Используешь рисунки с одинаковыми именами, но лежащие в разных папках. Неинформативные рисунки должны быть последними.
3) Используешь хидеры нопрагма, нокэш

Inferno
01.07.2005, 11:21
1) Ставишь рисунок в бекграунд, наверху его закрываешь растянутым рисунком из прозрачного пиксела. (как вариант можно целиком страницу залить)
2) Используешь рисунки с одинаковыми именами, но лежащие в разных папках. Неинформативные рисунки должны быть последними.
3) Используешь хидеры нопрагма, нокэш

Livesms
08.09.2014, 16:31
Может кто из "присутствующих" знает / имеет на примете простой бесплатный (или доступный) вариант шаблона для построения системы учета финансов с использование Web-интерфейса (PHP, MySql) и т.д.
Нужно простая система для учета расхода по каждой "ситуации". Для одной ситуации (например "дата-машина-водитель-груз") есть ряд расходов (виды расходов повторяются в разных комбинациях).
Ищется что-то такое, что бы можно было быстро закинуть на веб-сервер, настроить поля, закинуть названия расходов в базу и т.д., создать пользователей и пускай набивают (один добавляет "ситуацию", другие набивают расходы под "ситуацию"). Задача - вести учет "ситуаций", расходы по каждой "ситуации", вести поиск по параметрам дата/машина/водитель/груз.


http://s29.postimg.org/n8sxqa7wn/image.png

Уверен есть что-то такое готовое или такое, что можно быстро "подрихтовать" под задачу...

Может кто подскажет/ поделится...

aVOVello
11.09.2014, 18:50
а ведь этот пост 9 лет покоился в мире!
Что вам мешает потратить неделю на изучение php?

Livesms
11.09.2014, 19:04
а ведь этот пост 9 лет покоился в мире!
Что вам мешает потратить неделю на изучение php?
Гм. Не обратил внимания. Поиском нашел подходящую тему...
PHP "вспомнить" не помешает... :)
Думал может есть готовый "скелет". Пока решили "строить" на базе 1С с подключенным web интерфейсом :)

aVOVello
11.09.2014, 19:46
может так и правда будет проще, всегда от 1С бегал как от огня, не владею вопросом :D <-- я не знал что мой любимый смайлик здесь выглядит так. как вы набираете жовто-блакытный?

Livesms
11.09.2014, 19:51
может так и правда будет проще, всегда от 1С бегал как от огня, не владею вопросом :D <-- я не знал что мой любимый смайлик здесь выглядит так. как вы набираете жовто-блакытный?
С 1С я тоже не особо. Но там гораздо проще с интерфейсом, формами, списками сохраняемых повторяемых величин и т.д.

Смайлик - обычные два символа : и ) - :)

Прим Палвер
19.03.2015, 04:24
Тут есть ещё кто?

Вопрос о реальности/нереальности.

Хотлинкинг. Есть ли возможность вставить в их img src какой-то работоспособный код?

dron007
19.03.2015, 18:05
Тут есть ещё кто?

Вопрос о реальности/нереальности.

Хотлинкинг. Есть ли возможность вставить в их img src какой-то работоспособный код?
Смотря как обрабатывается URL картинки на сервере при генерации HTML страницы. Если вообще никак, то конечно можно запустить любой js-код у клиента, открывшего страницу (выделено то, что будет вставлено вместо url):

<img src="http://some_img.jpg"><script>alert('hi')</script><img src="">

Если же обрабатывается (экскейпятся кавычки, скобки и т.д.), то можно уже исследовать насколько корректно это делается и что там можно воткнуть. Например, если невозможно выбраться за пределы тега, можно использовать события onload или ещё что-то. В результате можно найти XSS-уязвимость и угнать аккаунт пользователя, зашедшего на страницу, к примеру.

Прим Палвер
20.03.2015, 02:01
Нет, так точно не пойдёт.
Для чистоты эксперимента уже попробовал:
/img/pic.jpg" alt="привет" /><img src="
В src адрес уже стоит, он же не ожидает от меня буковок.

Это же не mysql-инъекция.

Имел в виду выдавать код в составе самого файла рисунка )))

Пока тупо выдаю эту же картинку, но с водяным знаком имени сайта.

Но вопрос гложет мой мозг.

dron007
20.03.2015, 18:04
Прим Палвер, если в составе рисунка, то ничего не сделаешь, разве что уязвимости какие-то в браузерах имеются. Sql-инъекцию я не имел в виду. Думал, есть возможность задавать свои URL картинок и они будут в итоговом HTML. В вопросе же про тег img речь шла, а не про файл картинки.

Прим Палвер
21.03.2015, 01:17
В вопросе речь шла о хотлинкинге.
Это когда владельцы других сайтов вставляют в свой код <img> с src, указывающим на другой домен. Т.е. устраивают паразитный трафик донору картинки. Давно описаны приёмы кода .htaccess для выдавания чужим сайтам картинки-пустышки или просто пустого результата. Раньше я сам перенаправлял на картинку "но-но-но, нехорошо так делать", но сейчас (если это не поисковик) направляю на файл php, который создаёт такой же файл с водяным знаком имени сайта (если его ещё нет), помещает в другую папку, отдаёт этот файл:
$gis = getimagesize ($_SERVER['DOCUMENT_ROOT'].$url);
header('Content-type: ' . $gis['mime']);
readfile($_SERVER['DOCUMENT_ROOT'].$url);Тут ещё вопрос возникает, насколько getimagesize и readfile грузят сервер, но пока и десятой части лимитной нагрузки нет.