Torawhite Posted March 22, 2015 Report Share Posted March 22, 2015 (edited) Здравствуйте!Необходимо запустить вывод тегов (отдельных слов) внутри printf(). Теги хранятся в отдельной ячейке и разделены "/". Так идёт вывод сейчас:foreach ($pages AS $page) { printf(" <div class='article_block'> <a href='/view_article.php?id=%s' target='_self' title='%s' class='pre_img'><img src='%s' width='640'></a> <div class='tags_block'>%s</div> <div class='article_block_name'> <p><a href='/magazine/male_articles/view_article.php?id=%s' target='_self'>%s</a></p></div></div>", $page["id"], $page["title"], $page["article_img"], $page["tags"], $page["id"], $page["title"]); }Нужно в <div class='tags_block'>%s</div> вместо "%s" выводить каждое слово тега в теге <a href"..." class="..."></a> через explode() Edited March 22, 2015 by Torawhite Quote Link to comment Share on other sites More sharing options...
0 afdw Posted March 22, 2015 Report Share Posted March 22, 2015 У вас в шаблоне %s встречается 5 раз, а параметров передано 6. Quote Link to comment Share on other sites More sharing options...
0 rus Posted March 22, 2015 Report Share Posted March 22, 2015 foreach ($pages as $page) { echo ' <div class='article_block'> <a href='/view_article.php?id='.$page['id'].'' target='_self' title=''.$page['title'].'' class='pre_img'> <img src=''.$page['article_img'].'' width='640'> </a> <div class='tags_block'>'.$page['tags'].'</div> <div class='article_block_name'> <p><a href='/magazine/male_articles/view_article.php?id='.$page['id'].'' target='_self'>'.$page['title'].'</a></p> </div> </div>';} У вас в шаблоне %s встречается 5 раз, а параметров передано 6. да нет, там 6 передано ) Quote Link to comment Share on other sites More sharing options...
0 Torawhite Posted March 23, 2015 Author Report Share Posted March 23, 2015 У вас в шаблоне %s встречается 5 раз, а параметров передано 6.Проблема-то не в этом)foreach ($pages as $page) { echo ' <div class='article_block'> <a href='/view_article.php?id='.$page['id'].'' target='_self' title=''.$page['title'].'' class='pre_img'> <img src=''.$page['article_img'].'' width='640'> </a> <div class='tags_block'>'.$page['tags'].'</div> <div class='article_block_name'> <p><a href='/magazine/male_articles/view_article.php?id='.$page['id'].'' target='_self'>'.$page['title'].'</a></p> </div> </div>';} У вас в шаблоне %s встречается 5 раз, а параметров передано 6.да нет, там 6 передано ) А цикл можно как-то запустить? Quote Link to comment Share on other sites More sharing options...
0 Torawhite Posted March 23, 2015 Author Report Share Posted March 23, 2015 (edited) У вас в шаблоне %s встречается 5 раз, а параметров передано 6.Проблема-то не в этом)foreach ($pages as $page) { echo ' <div class='article_block'> <a href='/view_article.php?id='.$page['id'].'' target='_self' title=''.$page['title'].'' class='pre_img'> <img src=''.$page['article_img'].'' width='640'> </a> <div class='tags_block'>'.$page['tags'].'</div> <div class='article_block_name'> <p><a href='/magazine/male_articles/view_article.php?id='.$page['id'].'' target='_self'>'.$page['title'].'</a></p> </div> </div>';} У вас в шаблоне %s встречается 5 раз, а параметров передано 6.да нет, там 6 передано ) А цикл можно как-то запустить? Сделал! Разорвал html-код в том месте, где нужно запустить цикл, вывел так:foreach ($pages as $page){printf(первая часть html-кода);$tags = explode("/", $page["tags"]);foreach ($tags AS $tag) {echo "<a href='/search_view.php?submit=&select=tag&query=" . $tag . "' title='Поиск по тегу'>" . $tag . "</a>";}printf(вторая часть html-кода);} Edited March 23, 2015 by Torawhite Quote Link to comment Share on other sites More sharing options...
0 Int Posted March 27, 2015 Report Share Posted March 27, 2015 Я бы сделал через preg_replace_callback оборачивание в <a></a>, а резал бы регуляркой Quote Link to comment Share on other sites More sharing options...
Question
Torawhite
Здравствуйте!
Необходимо запустить вывод тегов (отдельных слов) внутри printf(). Теги хранятся в отдельной ячейке и разделены "/".
Так идёт вывод сейчас:
foreach ($pages AS $page) { printf(" <div class='article_block'> <a href='/view_article.php?id=%s' target='_self' title='%s' class='pre_img'><img src='%s' width='640'></a> <div class='tags_block'>%s</div> <div class='article_block_name'> <p><a href='/magazine/male_articles/view_article.php?id=%s' target='_self'>%s</a></p></div></div>", $page["id"], $page["title"], $page["article_img"], $page["tags"], $page["id"], $page["title"]); }Нужно в <div class='tags_block'>%s</div> вместо "%s" выводить каждое слово тега в теге <a href"..." class="..."></a> через explode()
Edited by TorawhiteLink to comment
Share on other sites
5 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.