Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   получить картинку для URL (https://javascript.ru/forum/misc/25162-poluchit-kartinku-dlya-url.html)

malkoff 27.01.2012 13:02

получить картинку для URL
 
подскажите как можно реализовать автоматическое получение картинки при указании URL.
например, как это сделано на Facebook и Delicious

Постим ссылку и при этом нам выдается несколько картинок на выбор со страницы

9xakep 27.01.2012 15:08

<img src='' id='img'>
<input type='text' value='' id='text'>
<input type='button' value='do' onclick="a()">
<script>
function a() {
var _src = document.getElementById('text').value
document.getElementById('img').src = _src
}
</script>

Это имели ввиду?
P.S. в текстовое поле вставьте ссылку картинки

inst 27.01.2012 15:16

Необходимо парсить исходник страницы, на которую указывает ссылка. Найти все <img /> тэги и изъять из них адреса картинок. Но, к сожалению, без серверной части это невозможно.

malkoff 27.01.2012 15:17

спасибо за ответ, но по нажатию на кнопку do ничего не происходит
если не сложно поясните ваш код

inst 27.01.2012 15:19

Цитата:

Сообщение от malkoff (Сообщение 153291)
спасибо за ответ, но по нажатию на кнопку do ничего не происходит
если не сложно поясните ваш код

Товарищ 9xakep предположил, что вы хотите встроить в свою страницу произвольную картинку, указав её непосредственный адрес.

malkoff 27.01.2012 15:23

без php не обойтися как я понял

попробую что-то вроде


$url="http://yandex.ru";
$content=file_get_contents($url);
$count=preg_match_all('/(img|src)=("|\')[^"\'>]+/i', $content, $matches);
echo $count."<br>";
echo $matches[0][0]."<br>";


не слишком ли грузить будет сервак?

Gozar 27.01.2012 15:27

На серваке так делать не следует. Обойтись без php нужно. Твой сервер при любой нагрузке умрет.

inst 27.01.2012 15:27

Да, вам нужно что-то в таком духе.

Ещё на ум пришла мысль использовать YQL, но суть та же, просто сервер будет не ваш, а Yahoo.

malkoff 27.01.2012 15:27

как быть?

inst 27.01.2012 15:34

В любом случае Facebook и пр. используют свои сервера хотя бы потому что они отдают не полную картинку, а лишь её миниатюру.


Часовой пояс GMT +3, время: 06:52.