За последние 24 часа нас посетили 22720 программистов и 1217 роботов. Сейчас ищут 746 программистов ...

Выручите специалисты задачка на 2 минуты

Тема в разделе "Сделайте за меня", создана пользователем Anton34, 3 июн 2017.

  1. Anton34

    Anton34 Новичок

    С нами с:
    3 июн 2017
    Сообщения:
    9
    Симпатии:
    1
    Очень прошу помогите это тестовое задание на вакансию.


    В переменной $a лежит текст новости. Его длина более 10000 символов.

    В переменной $link лежит ссылка на страницу с полным текстом этой новости.

    Нужно в переменную $b вывести сокращенный текст новости по правилам:

    -брезать до 160 символов

    приписать многоточие

    последние 2 слова и многоточие сделать ссылкой на полный текст новости.
     
  2. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.632
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    @Anton34, бро, давай лучше ты меня зарекомендуешь им:D.
    --- Добавлено ---
    Ты не знаешь как сделать тестовое задание, но рвешься туда трудоустроиться, где логика?
     
  3. Anton34

    Anton34 Новичок

    С нами с:
    3 июн 2017
    Сообщения:
    9
    Симпатии:
    1
    Лучше бы помог если знаешь=(
     
  4. boy1998

    boy1998 Новичок

    С нами с:
    11 апр 2017
    Сообщения:
    27
    Симпатии:
    2
    так что ли ?
    Код (Text):
    1. add_filter('excerpt_more', 'new_excerpt_more');
    2. function new_excerpt_more($more) {
    3.     global $post;
    4.     return '<a href="'. get_permalink($post->ID) . '">Читать дальше......</a>';
    5. }
    хм
    PHP:
    1. <?
    2.             echo $myrow["text"]; /*текст раздела*/
    3.      $result = mysql_query("SELECT id,title,description,date,author,
    4.     mini,view FROM data", $db);
    5. if (!$result)
    6. {
    7. echo "<p>Запрос на выборку из БД не прошел.
    8.         <br> <strong>Код ошибки:</strong></p>";
    9. }
    10. if (mysql_num_rows($result) > 0)
    11. {
    12. $myrow = mysql_fetch_array($result);
    13. while($myrow = mysql_fetch_array($result))
    14. {
    15.   printf ("<table align='center' id='post'>
    16.         <tr>
    17.         <td id='post_title'>
    18.         <p id='post_name'><img id='mini' align='left' src='%s'>
    19.         <a href='view.php?id=%s'>%s</a></p>
    20.         <p id='post_adds'>Дата добавления: %s</p>
    21.         <p id='post_adds'>Автор статьи: %s</p></td>
    22.         </tr>
    23.         <tr>
    24.         <td>%s <p id='post_view'> <br> Просмотров: %s</p>
    25.           <br><p>
    26. <a href= 'http://test.ru/view.php?id=".$myrow['id']."'>Читать далее</a>
    27.         </p>
    28.         </td>
    29.         </tr>
    30.         </table><br><br>",$myrow["mini"],$myrow["id"], $myrow["title"],
    31.          $myrow["date"], $myrow["author"], $myrow["description"],
    32.          $myrow["view"]);
    33. }
    34. }
    35. else
    36. {
    37. echo "<p>Нет данных в БД.</p>";
    38. exit();
    39. }
    40. ?>
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    а нахер тебе помогать. это же тестовое задание на вакансию.
    если ты не можешь его сделать - ты не можешь претендовать на эту работу.
    иди ищи другую, не великое дело.

    а учитывая, насколько простая задача, стоит всё ж подтянуть основы.
    в этом помогают биржи фрилансеров. там и бабки платят, и заказы можно брать по-проще на свой выбор себе по силам.

    @boy1998
    нафига ты ему помог? =) вот с какой целью? потому, что он ныл?
    код плохой у тебя.
    выполнение скрипта не должно прерываться в случайных местах ни с того ни с сего.

    и printf? серьёзно? ты на видеокурсах попова это видел? забей. echo вполне себе удобная штука. и не забывай экранировать html-сущности, а то напихают тебе вместо данных код, который куки ворует.
     
  6. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    интересно что за контора которая дает такие простые задачи тестовые..

    PHP:
    1. $a = 'Прильнув к спине лошади, во весь опор несущейся через лесную гарь, он пускал в ход все свое умение, чтобы уворачиваться от обгорелых сучьев. Глухой топот морвийских коней неумолимо преследовал его. Ни в коем случае нельзя даваться им в руки! Молодая поросль безжалостно хлестала кобылицу по взмыленным бокам. Заставив лошадь перескочить через поваленное дерево, он свернул налево.
    2. К несчастью, мертвые, увитые плющом деревья почти не скрывали его от глаз преследователей, да вдобавок замедляли продвижение. Просто невероятно, что морвы сумели подобраться сюда незаметно.
    3. Бросив мимолетный взгляд через плечо, он заметил всадников в вороненых доспехах, мчавшихся по только что оставленной им тропинке. Вряд ли его маневр надолго введет их в заблуждение.
    4. Он свернул на восток, в сторону Кворина. Если бы только удалось добраться до опушки! Тогда он будет виден со стен города, и морвы наверняка отстанут...
    5. Протрубивший позади рог известил, что преследователи заметили свою ошибку. Он дал лошади шенкеля, заставив перескочить еще одно поваленное дерево, и отчаянно высматривал дорогу в буреломе. Погоня уже завела его далеко за пределы знакомой части леса.
    6. Но зато впереди замаячил невысокий гребень, более голый, чем окружающая чащоба, и ведущий в подходящем направлении. Морвы наверняка поймут, что он направился по гребню, но есть шанс оторваться от погони до того, как они это обнаружат.
    7. Боевая кобылица неслась по гребню стрелой, распластавшись над землей в стремительном галопе и роняя пену с золотистых боков. Долго она не протянет. Продержалась бы хоть до опушки!
    8. Но подвела его не лошадь. На полном скаку перевалив через невысокий бугор, он с ужасом обнаружил, что здесь гребень отвесно обрывается к земле. Не раздумывая, он выбросился из седла; другого выхода просто не было.
    9. Удар о каменистую землю на миг отшиб у него дыхание. Прокатившись кубарем ярдов пять, он упал на крутой склон и лихорадочно замахал руками, пытаясь замедлить падение.
    10. Наконец он остановился, осыпаемый потоками песка вперемешку с гравием. Лошадь приземлилась не столь удачно и теперь надсадно ржала от боли. Если ее ржание не привлечет сюда морвов, это будет просто чудом. Надо добить лошадь и бежать, пока они не подоспели. До Кворина наверняка уже рукой подать.
    11. Он с трудом поднялся, скользя на глине обрыва. На миг все перед глазами поплыло. Он сделал несколько глубоких вдохов, понемногу приходя в себя.
    12. Вдруг стенания раненой лошади оборвались, и он резко вскинул голову. Над трупом животного стоял морв, вытирая нож об одежду. Вряд ли он убил лошадь из сострадания — скорее всего ее ржание просто действовало ему на нервы. А еще пятеро остались верхом.
    13. Внутри у него похолодело; умирать он еще не готов. Он мрачно стиснул зубы, собирая волю в кулак. Нужно умереть достойно. В конце концов, хотя бы ради Эрельвара. Неспешно, без суеты он вытащил меч из ножен и подобрал с земли щит, весьма сомневаясь, что ему предоставят возможность пустить их в ход.
    14. А с другой стороны, почему бы и нет? Не без удивления он увидел, что пятеро других морвов тоже спешились. Их вышколенные рысаки, будто привязанные, стояли там, где были брошены поводья. Шестеро морвов медленно и осторожно двинулись в наступление, и он отступил к обрыву, чтобы прикрыть спину.
    15. Морвы остановились, выстроившись полукругом поодаль, вне досягаемости меча, и пару секунд просто молча разглядывали противника.
    16. — Сдаешься? — в конце концов поинтересовался один. Итак, они хотят взять его живьем.
    17. — Это морвам-то? Ха! С равным успехом я могу и сам выпустить себе кишки.
    18. Двое тотчас же выступили вперед. Отразив щитом мощный боковой удар, он одновременно парировал мечом колющий удар в горло.';
    19.  
    20. $link = 'http://testsite.ru/index.php?news=234';
    21.  
    22. $begin  = mb_substr($a, 0,160).'... ';
    23.  
    24. $pattern = '~[\S]+[\s]{1}[\S]+$~u';
    25. preg_match($pattern, $a, $end);
    26.  
    27. $short = 'нет анкора';
    28. if(!empty($end[0])){
    29.     $short = $end[0];
    30. }
    31.  
    32. $result = '<a href="' . $link . '">' . $short . '</a>';
    33.  
    34. echo $result;
     
    #6 Алекс8, 3 июн 2017
    Последнее редактирование: 3 июн 2017
  7. boy1998

    boy1998 Новичок

    С нами с:
    11 апр 2017
    Сообщения:
    27
    Симпатии:
    2
    @igordata ну требовалось помочь, показать. А как выполнен - правильно, или нет решать ему. Сегодня просит сделать такое, завтра скажет на смену за него выйти, за деньги. Я конечно пойду, но не уверен что я буду там делать все качественно. Что собственно сделал и тут.
    А на счет echo - знаю что профитней по скорости, но там скорость та не особо так уж и расходится вроде как, могу конечно ошибаться, я сам это где-то читал не помню уже.
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    при чем тут профитней. просто echo удобнее.
     
  9. boy1998

    boy1998 Новичок

    С нами с:
    11 апр 2017
    Сообщения:
    27
    Симпатии:
    2
    @igordata ну для меня профитность и удобность одно и тоже
     
  10. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    чушь какая-то
    два слова, которые обозначают разное
    ты живёшь в мире живых людей со сложившимся языком
    профитность это что-то мутное, непонятное
    а удобность это когда удобно.

    ты заюзал printf при этом ты заюзал конкатенацию там же, т.е. у тебя не весь вывод идёт через строку и аргументы, а часть вывода выводится в строку напрямую минуя printf

    так и зачем ты это сделал? =)
    какой смысл?
     
  11. boy1998

    boy1998 Новичок

    С нами с:
    11 апр 2017
    Сообщения:
    27
    Симпатии:
    2
    @igordata
     
  12. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    попытка съехать с темы во взрослом мире не канает за объяснение своих действий :D

    но дело твоё, если ты считаешь диалог о твоих ошибках неприятным - можно его и не вести. Но это отличный способ учиться и развиваться.
     
  13. Anton34

    Anton34 Новичок

    С нами с:
    3 июн 2017
    Сообщения:
    9
    Симпатии:
    1
    Огромное спасибо неравнодушным!!! Это просто одно из заданий остальные на CSS и HTML я сделал, а это как бы дополнительное шло что бы наверняка. Просто я новичок в этой сфере и очень хочу программистом стать.
     
    mahmuzar нравится это.
  14. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.632
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    Удачи! Друк!
     
  15. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    ну вообще то правильнее сначала стать программистом, а потом уже работать)) я уже несколько лет свой скилл подтягиваю и все еще думаю что рано мне идти работать в команде..
     
    Anton34 нравится это.
  16. Anton34

    Anton34 Новичок

    С нами с:
    3 июн 2017
    Сообщения:
    9
    Симпатии:
    1
    А где вы работаете сейчас на фрилансе?
     
  17. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    да)) фрилансю)) денег не много, зато много свободного времени.. но все равно бывают моменты когда хочется работать в какой то хорошей конторе, с белой зарплатой, соцпакетом и бесплатными круассанами на обед)
     
  18. Anton34

    Anton34 Новичок

    С нами с:
    3 июн 2017
    Сообщения:
    9
    Симпатии:
    1
    Согласен круасаны ключевой момент=))))
     
  19. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    ну вообще в предложенном решении есть как минимум три косяка и одна непонятка.
    я б тебя с таким решением не взял бы.
    плюс ещё ты не сможешь объяснить, почему сделал именно так, а не иначе, и очевидно будет, что это не решение, а фигня-с.

    не тяни. можешь начинать. скил работы в команде прокачивается при работе в команде.
     
  20. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    ого... прошу комментариев)) почему косяк и одна непонятка))
     
  21. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    1. строка 3 - выборка без условия. Всю таблицу чтоли выбирать? Какого черта?
    2. прерывание всего скрипта в случайных местах по желанию левой пятки
    3. отсутствие экранирования хтмл при выводе, это вообще катастрофа
    а непонятка с printf обсуждалась выше уже.
     
    Алекс8 нравится это.
  22. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    а.. я думал Вы про мое решение))
     
  23. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    твоё решение имеет недочёт только тем, что ты не запихал его в функцию, и оно живёт в глобальном пространстве как кусок кода, который нельзя использовать в других местах. А так - норм.
     
    Anton34 и Алекс8 нравится это.
  24. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    зато правдоподобней
    Правильно, тут специальный раздел, кто хочет помогает
     
    Anton34 нравится это.
  25. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    а хирургу не надо помочь при устройстве на работу за него порезать кого-нить?
    как он будет работать с таким уровнем?
    может немного правде в глаза надо взглянуть, месяцок позаниматься, потом снова искать? =)
    хорошо, если на работе научат.
     
    Fell-x27 нравится это.