Очень прошу помогите это тестовое задание на вакансию. В переменной $a лежит текст новости. Его длина более 10000 символов. В переменной $link лежит ссылка на страницу с полным текстом этой новости. Нужно в переменную $b вывести сокращенный текст новости по правилам: -брезать до 160 символов приписать многоточие последние 2 слова и многоточие сделать ссылкой на полный текст новости.
@Anton34, бро, давай лучше ты меня зарекомендуешь им. --- Добавлено --- Ты не знаешь как сделать тестовое задание, но рвешься туда трудоустроиться, где логика?
так что ли ? Код (Text): add_filter('excerpt_more', 'new_excerpt_more'); function new_excerpt_more($more) { global $post; return '<a href="'. get_permalink($post->ID) . '">Читать дальше......</a>'; } хм PHP: <? echo $myrow["text"]; /*текст раздела*/ $result = mysql_query("SELECT id,title,description,date,author, mini,view FROM data", $db); if (!$result) { echo "<p>Запрос на выборку из БД не прошел. <br> <strong>Код ошибки:</strong></p>"; exit(mysql_error()); } if (mysql_num_rows($result) > 0) { $myrow = mysql_fetch_array($result); while($myrow = mysql_fetch_array($result)) { printf ("<table align='center' id='post'> <tr> <td id='post_title'> <p id='post_name'><img id='mini' align='left' src='%s'> <a href='view.php?id=%s'>%s</a></p> <p id='post_adds'>Дата добавления: %s</p> <p id='post_adds'>Автор статьи: %s</p></td> </tr> <tr> <td>%s <p id='post_view'> <br> Просмотров: %s</p> <br><p> <a href= 'http://test.ru/view.php?id=".$myrow['id']."'>Читать далее</a> </p> </td> </tr> </table><br><br>",$myrow["mini"],$myrow["id"], $myrow["title"], $myrow["date"], $myrow["author"], $myrow["description"], $myrow["view"]); } } else { echo "<p>Нет данных в БД.</p>"; exit(); } ?>
а нахер тебе помогать. это же тестовое задание на вакансию. если ты не можешь его сделать - ты не можешь претендовать на эту работу. иди ищи другую, не великое дело. а учитывая, насколько простая задача, стоит всё ж подтянуть основы. в этом помогают биржи фрилансеров. там и бабки платят, и заказы можно брать по-проще на свой выбор себе по силам. @boy1998 нафига ты ему помог? =) вот с какой целью? потому, что он ныл? код плохой у тебя. выполнение скрипта не должно прерываться в случайных местах ни с того ни с сего. и printf? серьёзно? ты на видеокурсах попова это видел? забей. echo вполне себе удобная штука. и не забывай экранировать html-сущности, а то напихают тебе вместо данных код, который куки ворует.
интересно что за контора которая дает такие простые задачи тестовые.. PHP: $a = 'Прильнув к спине лошади, во весь опор несущейся через лесную гарь, он пускал в ход все свое умение, чтобы уворачиваться от обгорелых сучьев. Глухой топот морвийских коней неумолимо преследовал его. Ни в коем случае нельзя даваться им в руки! Молодая поросль безжалостно хлестала кобылицу по взмыленным бокам. Заставив лошадь перескочить через поваленное дерево, он свернул налево. К несчастью, мертвые, увитые плющом деревья почти не скрывали его от глаз преследователей, да вдобавок замедляли продвижение. Просто невероятно, что морвы сумели подобраться сюда незаметно. Бросив мимолетный взгляд через плечо, он заметил всадников в вороненых доспехах, мчавшихся по только что оставленной им тропинке. Вряд ли его маневр надолго введет их в заблуждение. Он свернул на восток, в сторону Кворина. Если бы только удалось добраться до опушки! Тогда он будет виден со стен города, и морвы наверняка отстанут... Протрубивший позади рог известил, что преследователи заметили свою ошибку. Он дал лошади шенкеля, заставив перескочить еще одно поваленное дерево, и отчаянно высматривал дорогу в буреломе. Погоня уже завела его далеко за пределы знакомой части леса. Но зато впереди замаячил невысокий гребень, более голый, чем окружающая чащоба, и ведущий в подходящем направлении. Морвы наверняка поймут, что он направился по гребню, но есть шанс оторваться от погони до того, как они это обнаружат. Боевая кобылица неслась по гребню стрелой, распластавшись над землей в стремительном галопе и роняя пену с золотистых боков. Долго она не протянет. Продержалась бы хоть до опушки! Но подвела его не лошадь. На полном скаку перевалив через невысокий бугор, он с ужасом обнаружил, что здесь гребень отвесно обрывается к земле. Не раздумывая, он выбросился из седла; другого выхода просто не было. Удар о каменистую землю на миг отшиб у него дыхание. Прокатившись кубарем ярдов пять, он упал на крутой склон и лихорадочно замахал руками, пытаясь замедлить падение. Наконец он остановился, осыпаемый потоками песка вперемешку с гравием. Лошадь приземлилась не столь удачно и теперь надсадно ржала от боли. Если ее ржание не привлечет сюда морвов, это будет просто чудом. Надо добить лошадь и бежать, пока они не подоспели. До Кворина наверняка уже рукой подать. Он с трудом поднялся, скользя на глине обрыва. На миг все перед глазами поплыло. Он сделал несколько глубоких вдохов, понемногу приходя в себя. Вдруг стенания раненой лошади оборвались, и он резко вскинул голову. Над трупом животного стоял морв, вытирая нож об одежду. Вряд ли он убил лошадь из сострадания — скорее всего ее ржание просто действовало ему на нервы. А еще пятеро остались верхом. Внутри у него похолодело; умирать он еще не готов. Он мрачно стиснул зубы, собирая волю в кулак. Нужно умереть достойно. В конце концов, хотя бы ради Эрельвара. Неспешно, без суеты он вытащил меч из ножен и подобрал с земли щит, весьма сомневаясь, что ему предоставят возможность пустить их в ход. А с другой стороны, почему бы и нет? Не без удивления он увидел, что пятеро других морвов тоже спешились. Их вышколенные рысаки, будто привязанные, стояли там, где были брошены поводья. Шестеро морвов медленно и осторожно двинулись в наступление, и он отступил к обрыву, чтобы прикрыть спину. Морвы остановились, выстроившись полукругом поодаль, вне досягаемости меча, и пару секунд просто молча разглядывали противника. — Сдаешься? — в конце концов поинтересовался один. Итак, они хотят взять его живьем. — Это морвам-то? Ха! С равным успехом я могу и сам выпустить себе кишки. Двое тотчас же выступили вперед. Отразив щитом мощный боковой удар, он одновременно парировал мечом колющий удар в горло.'; $link = 'http://testsite.ru/index.php?news=234'; $begin = mb_substr($a, 0,160).'... '; $pattern = '~[\S]+[\s]{1}[\S]+$~u'; preg_match($pattern, $a, $end); $short = 'нет анкора'; if(!empty($end[0])){ $short = $end[0]; } $result = '<a href="' . $link . '">' . $short . '</a>'; echo $result;
@igordata ну требовалось помочь, показать. А как выполнен - правильно, или нет решать ему. Сегодня просит сделать такое, завтра скажет на смену за него выйти, за деньги. Я конечно пойду, но не уверен что я буду там делать все качественно. Что собственно сделал и тут. А на счет echo - знаю что профитней по скорости, но там скорость та не особо так уж и расходится вроде как, могу конечно ошибаться, я сам это где-то читал не помню уже.
чушь какая-то два слова, которые обозначают разное ты живёшь в мире живых людей со сложившимся языком профитность это что-то мутное, непонятное а удобность это когда удобно. ты заюзал printf при этом ты заюзал конкатенацию там же, т.е. у тебя не весь вывод идёт через строку и аргументы, а часть вывода выводится в строку напрямую минуя printf так и зачем ты это сделал? =) какой смысл?
попытка съехать с темы во взрослом мире не канает за объяснение своих действий но дело твоё, если ты считаешь диалог о твоих ошибках неприятным - можно его и не вести. Но это отличный способ учиться и развиваться.
Огромное спасибо неравнодушным!!! Это просто одно из заданий остальные на CSS и HTML я сделал, а это как бы дополнительное шло что бы наверняка. Просто я новичок в этой сфере и очень хочу программистом стать.
ну вообще то правильнее сначала стать программистом, а потом уже работать)) я уже несколько лет свой скилл подтягиваю и все еще думаю что рано мне идти работать в команде..
да)) фрилансю)) денег не много, зато много свободного времени.. но все равно бывают моменты когда хочется работать в какой то хорошей конторе, с белой зарплатой, соцпакетом и бесплатными круассанами на обед)
ну вообще в предложенном решении есть как минимум три косяка и одна непонятка. я б тебя с таким решением не взял бы. плюс ещё ты не сможешь объяснить, почему сделал именно так, а не иначе, и очевидно будет, что это не решение, а фигня-с. не тяни. можешь начинать. скил работы в команде прокачивается при работе в команде.
1. строка 3 - выборка без условия. Всю таблицу чтоли выбирать? Какого черта? 2. прерывание всего скрипта в случайных местах по желанию левой пятки 3. отсутствие экранирования хтмл при выводе, это вообще катастрофа а непонятка с printf обсуждалась выше уже.
твоё решение имеет недочёт только тем, что ты не запихал его в функцию, и оно живёт в глобальном пространстве как кусок кода, который нельзя использовать в других местах. А так - норм.
а хирургу не надо помочь при устройстве на работу за него порезать кого-нить? как он будет работать с таким уровнем? может немного правде в глаза надо взглянуть, месяцок позаниматься, потом снова искать? =) хорошо, если на работе научат.