PDA

View Full Version : سوال: نمایش برچسب (tag) زیر هر مطلب



7asemoon
شنبه 20 تیر 1394, 17:06 عصر
اگر قسمت ارسال مطلب وردپرس رو دیده باشید یک بخش داره برای الصاق برچسب به پست و هنگامی که پست رو ارسال میکنید برچسب هم ذخیره میشه در دیتابیس
خب تا اینجا که چیزه عجیبی نیست
حالا سوالی که من دارم
میخام زیر هر مطلب که در سایت نمایش داده میشه برچسب های اون پست نشون داده بشه. که البته باز تا اینجا هم مشکلی نیست.
مشکل اینجاس که برچسب ها با فاصله کاما از هم جدا شده به این صورت(برچسب1,برچسب2,برچسب 3) در داخل دیتابیس و وقتی زیر پست نمایش داده میشه دقیقا به همین صورت نمایش داده میشه ولی میخام که جاهای که با کاما از هم جدا شده دقیقا جدا در سایت نمایش داده بشه
برای اینکه راحت تر بفهمید به این لینک (http://aparnet.ir/2643-basic-term-design#more-2643)نگاه کنید

H:Shojaei
شنبه 20 تیر 1394, 19:22 عصر
میتونید با expload(); متن رو بشکنید و یه آرایه ازش بدست بیارید...
و ا یک حلقه اون رو نمایش بدین...


$tags='tag1,tag2,tag3';
$arrayTags= explode(',',$tags);
foreach($arrayTags as $tag)
{
echo $tag."<br>";
}

7asemoon
شنبه 20 تیر 1394, 22:43 عصر
از جواب تون ممنون خیلی خوب عمل کرد
فقط اگر همون لینک رو دو مرتبه نگاه کنید میبینید که با کلیک بر روی هر کدوم از تگ ها تمام مطالبی که با اون تگ هستن در صفحه جداگانه نمایش داده میشه
برای این کار چه روشی رو باید پیاده کرد

thacker
یک شنبه 21 تیر 1394, 00:01 صبح
$tags='tag1,tag2,tag3';
$arrayTags= explode(',',$tags);
foreach($arrayTags as $tag)
{
echo '<a href="http://site.com/tag.php?tag='.$tag.'">'.$tag.'</a>';
}

توی صفحه tag.php میتونید به این صورت استفاده کنید :


$tag = $_GET['tag'];
$query = mysql_query("select * from `news` where `tag` LIKE '%{$tag}%' ORDER BY `id` DESC");
while($row = mysql_fetch_array($query)) {
echo $row['title'];
}

7asemoon
یک شنبه 21 تیر 1394, 01:38 صبح
ممنون از دوستان که به بهترین نحو راهنمایی کردین
اگر در بعضی از سایت ها دیده باشید در قسمت ساید بار سایت تعدادی برچسب قرار داره
چطور میشه برچسب های غیر تکراری کل پست های سایت که بهشون برچسب تعلق داره رو در این قسمت نمایش داد

reza_alie
یک شنبه 21 تیر 1394, 02:02 صبح
شما کلیه برچسب ها رو بریز داخل آرایه و تکراری ها رو حذف کن

7asemoon
یک شنبه 21 تیر 1394, 02:31 صبح
شما کلیه برچسب ها رو بریز داخل آرایه و تکراری ها رو حذف کن

میشه روی کدی که دوستان زحمت کشیدن توضیح بدین

H:Shojaei
یک شنبه 21 تیر 1394, 07:10 صبح
میشه روی کدی که دوستان زحمت کشیدن توضیح بدین


$tags='tag1,tag2,tag3';
$arrayTags= explode(',',$tags);
$arrayTags=array_unique($arrayTags);
foreach($arrayTags as $tag)
{
echo '<a href="http://site.com/tag.php?tag='.$tag.'">'.$tag.'</a>';
}

اصلا قصد دخالت و فضولی ندارم رو حساب تجربه میگم و اولین بار که به سوالتون پاسخ دادم هم گفتم شروع به خوندن یک منبع کنید همه این مشکلات خود به خود واستون رفع میشه...

7asemoon
یک شنبه 21 تیر 1394, 09:02 صبح
$tags='tag1,tag2,tag3';
$arrayTags= explode(',',$tags);
$arrayTags=array_unique($arrayTags);
foreach($arrayTags as $tag)
{
echo '<a href="http://site.com/tag.php?tag='.$tag.'">'.$tag.'</a>';
}

اصلا قصد دخالت و فضولی ندارم رو حساب تجربه میگم و اولین بار که به سوالتون پاسخ دادم هم گفتم شروع به خوندن یک منبع کنید همه این مشکلات خود به خود واستون رفع میشه...


خیلی ممنون که لطف می کنید و پاسخ میدین
والا بخدا این نیست که همه مشکلاتم رو اینجا مطرح کنم تا حالا خیلی از پروژه ام جلو رفته ولی جاهایی که پست کردم یا نیاز به مشورت داشتم یا واقعا چیزی بلد نبودم
در ضمن من تازه شروع کردم به یادگیری php
منبع اگر منظورتون آموزش های php هست واقعا خیلی زیاد خوندم ولی یکی اینکه تا شما یه ویژن از ارهاتون پیدا نکنید اصلا به درد نمی خوره و یکی اینکه شما اگر منبع خوبی سراغ دارین لطفا معرفی کنید

7asemoon
دوشنبه 22 تیر 1394, 02:31 صبح
من کد رو به این صورت نوشتم



<?php
$sql = "select * from `tbl_posts`";
$result = $connect->prepare($sql);
$result->execute();
while ($rows = $result->fetch(PDO::FETCH_ASSOC))
{
$tags = $rows["post_tag"];
$arrayTags= explode(',',$tags);
$arrayTags=array_unique($arrayTags);
foreach($arrayTags as $tag)
{
echo '<a href="">'.$tag.'</a>';
}
}
?>


ولی خروجی این شکلی شد

133202

لطفا راهنمایی کنید

7asemoon
جمعه 26 تیر 1394, 11:38 صبح
کسی نتونست بفهمه این مشکل از کجا ناشی میشه