Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Простое оплачиваемое задание.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Описание: Нужна простая функция на PHP.
Motodrinker
Отправлено: 13 Сентября, 2011 - 13:24:54
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Сент. 2011  


Помог: 0 раз(а)




Задача:
Простая и лаконичная функция на PHP, результатом которой, будет возврат ссылки на файл, опубликованной на WEB страничке.
Вызов: functionname( URL (string), mask_name (string), extension_file (string))
Возврат - string (http://*********/mask_name******.extension_file)

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

За данную безделицу заброшу 100 рубликов на ваш мобильник или другим способом.

ДА!
Перед тем как начать, уточните у меня, может кто то уже взялся.
Всем желающим платить как то не готов.

Аська 4717900
 
 Top
White
Отправлено: 13 Сентября, 2011 - 14:14:32
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 830
Дата рег-ции: Июнь 2011  
Откуда: Днепропетровск


Помог: 28 раз(а)




вы бы лучше пример работы такой функции привели


-----
if(time()>1356048000) die();
 
 Top
Motodrinker
Отправлено: 13 Сентября, 2011 - 14:28:54
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Сент. 2011  


Помог: 0 раз(а)




White пишет:
вы бы лучше пример работы такой функции привели

Ну что тут уж проще то, простите?!
Отдаём функции адрес html страницы, в теле которой содержатся ссылки на различные файлы, ну например... на прайс листы.
Они могут быть как zip, pdf, xls...
Нужно получить имя или имена файлов по следующей маске [начало имени файла].[произвольные символы в имени файла].[ТОЧКА].[заданное расширение файла (zip|pdf|xls)]

Итого передаём функции три параметра:
1) URL страницы
2) Начало имени файла(ов)
3) Расширение файла (по сути окончание имени)

Так понятней?

А вот как решать её, я не буду говорить естесвенно. Это задача ВАМ! А кто окажется молодец, тому будут частые подработки перепадать.
 
 Top
morosit
Отправлено: 13 Сентября, 2011 - 14:31:16
Post Id



Посетитель


Покинул форум
Сообщений всего: 307
Дата рег-ции: Июль 2010  
Откуда: Казахстан


Помог: 4 раз(а)




Motodrinker а что ж в аське не отвечаете?
 
 Top
White
Отправлено: 13 Сентября, 2011 - 14:32:44
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 830
Дата рег-ции: Июнь 2011  
Откуда: Днепропетровск


Помог: 28 раз(а)




Motodrinker непонятно было изначально, что вы хотите. 80% решения задачи - это правильное понимание ее условий. хотите чтобы вас поняли, изъясняйтесь точнее. вам как надо сокетами, курлом, или через file_get_contents?


-----
if(time()>1356048000) die();
 
 Top
morosit
Отправлено: 13 Сентября, 2011 - 14:35:50
Post Id



Посетитель


Покинул форум
Сообщений всего: 307
Дата рег-ции: Июль 2010  
Откуда: Казахстан


Помог: 4 раз(а)




White задача написать функцию которая будет выводить ссылку, а получать параметры для функций в задачу не входило. Улыбка
 
 Top
illy
Отправлено: 13 Сентября, 2011 - 14:38:56
Post Id



Участник


Покинул форум
Сообщений всего: 1117
Дата рег-ции: Июль 2011  
Откуда: от верблюда)


Помог: 28 раз(а)




ничё не понял Не понял
Цитата:
Сори за фтопик устроился программистом в веб-студию "Мастер".
Платят норм и работы немного.
Главное чтоб объясняли конкретно чё надо сделать Ха-ха


-----
Всё гениальное - просто
И ещё проще, если ты - индиго
 
 Top
Motodrinker
Отправлено: 13 Сентября, 2011 - 14:40:49
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Сент. 2011  


Помог: 0 раз(а)




morosit пишет:
Motodrinker а что ж в аське не отвечаете?

Я в аське.
 
 Top
morosit
Отправлено: 13 Сентября, 2011 - 14:43:23
Post Id



Посетитель


Покинул форум
Сообщений всего: 307
Дата рег-ции: Июль 2010  
Откуда: Казахстан


Помог: 4 раз(а)




ну если ни кто не против я выложу пример
PHP:
скопировать код в буфер обмена
  1.  
  2. $url = "php.su";
  3. $name = "index";
  4. $ext = "php";
  5. $ancor = "пример";
  6. function func($url, $name, $ext, $ancor)
  7.         {
  8.         $string = "<a href=http://".$url."/".$name.".".$ext.">".$ancor."</a>";
  9.         return $string;
  10.         }
  11. echo func($url, $name, $ext, $ancor);
  12.  
 
 Top
White
Отправлено: 13 Сентября, 2011 - 14:43:43
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 830
Дата рег-ции: Июнь 2011  
Откуда: Днепропетровск


Помог: 28 раз(а)




morosit ну да, согласно первоначальному заданию функция должны выглядеть так:
PHP:
скопировать код в буфер обмена
  1. function link($url,$mask,$ext) {
  2.   echo $url.$mask."*****".$ext;
  3. }
Радость
(Добавление)
значит мы друг друга поняли.


-----
if(time()>1356048000) die();
 
 Top
Motodrinker
Отправлено: 13 Сентября, 2011 - 14:55:52
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Сент. 2011  


Помог: 0 раз(а)




Очень смешно.
Ладно, давайте серьёзно.
Для примера:
Отдаём функции URL страницы
http://www[dot]komus[dot]ru/catalogues.php

Там есть много ссылок на файлы, для примера:
http://www[dot]komus[dot]ru/catalogues/k[dot][dot][dot]mus_2012[dot]pdf[dot]zip
http://www[dot]komus[dot]ru/pricelist/ko[dot][dot][dot]us-price[dot]xls[dot]zip
http://www[dot]komus[dot]ru/komus-price[dot]xls
http://www[dot]komus[dot]ru/catalogues/komus45[dot]pdf[dot]zip
и так далее.

Необходимо получить в виде строки, или лучше массива все ссылки на файлы, которые начинаются с "komus" и заканчиваются расширением "zip", например.

Так понятнее?
(Добавление)
Ну что, писатели?!
Сдулись?
Кому стольник на мобильник то кинуть?!
 
 Top
Мелкий Супермодератор
Отправлено: 13 Сентября, 2011 - 15:21:05
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




PHP:
скопировать код в буфер обмена
  1. function getlinks($pageurl, $prefix, $postfix) {
  2. $raw = file_get_contents($pageurl);
  3. preg_match_all('@http://\S+'.$prefix.'\S+'.$postfix.'@mUsi',$raw, $result);
  4. return $result;
  5. }
  6.  
  7. var_dump(getlinks('http://www.komus.ru/catalogues.php','komus','zip'));
  8.  


-----
PostgreSQL DBA
 
 Top
Motodrinker
Отправлено: 13 Сентября, 2011 - 15:36:06
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Сент. 2011  


Помог: 0 раз(а)




Мелкий пишет:
PHP:
скопировать код в буфер обмена
  1. function getlinks($pageurl, $prefix, $postfix) {
  2. $raw = file_get_contents($pageurl);
  3. preg_match_all('@http://\S+'.$prefix.'\S+'.$postfix.'@mUsi',$raw, $result);
  4. return $result;
  5. }
  6.  
  7. var_dump(getlinks('http://www.komus.ru/catalogues.php','komus','zip'));
  8.  


Результат: http://www[dot]komus[dot]ru/files/MegaLabelExpress[dot]zip и всё.
Почти.
Но не работает как надо.
Во первых на данной страничке много zip файлов, во вторых $prefix обязательно должен содержаться в ИМЕНИ файла.

Поправишь?
 
 Top
Мелкий Супермодератор
Отправлено: 13 Сентября, 2011 - 15:51:46
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Строгим условием и вопреки вашему заданию.
PHP:
скопировать код в буфер обмена
  1. <?
  2. function getlinks($pageurl, $prefix, $postfix) {
  3. $raw = file_get_contents($pageurl);
  4. preg_match_all('@<a[^>]+href=[\'"]([^\'"]*/'.preg_quote($prefix,'@').'[^\'"]*'.preg_quote($postfix,'@').')[\'"][^>]*>@mUsi',$raw,$result);
  5. return $result;
  6. }
  7.  
  8. var_dump(getlinks('http://www.komus.ru/catalogues.php','komus','zip'));
  9. ?>

Вопреки, т.к.:
Motodrinker пишет:
Там есть много ссылок на файлы, для примера:
http://www.komus.ru/catalogues/k...mus_2012.pdf.zip

Чуть менее, чем все ссылки относительны.


-----
PostgreSQL DBA
 
 Top
tsoi85
Отправлено: 13 Сентября, 2011 - 16:03:53
Post Id


Новичок


Покинул форум
Сообщений всего: 63
Дата рег-ции: Июнь 2011  


Помог: 10 раз(а)




PHP:
скопировать код в буфер обмена
  1. function parse_links($url, $prefix, $ext) {
  2.         $html = file_get_contents($url);
  3.         preg_match_all('#[-_a-z0-9\/\.:]+\/?.'.$prefix.'[-_a-z0-9\.:]*.'.$ext.'#i', $html, $return);
  4.         return $return;
  5. }
  6. var_dump(parse_links('http://www.komus.ru/catalogues.php', 'komus', 'zip'));

Если префикс (второй параметр) оставить пустым, функция вернёт все ссылки, с указанным расширением файла.
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« FreeLance »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB