SimplePortal

Support => Turkish (Türkçe) => International Support => Ki?iselle?tirme => Topic started by: mkuru on June 04, 2012, 10:13:27 AM

Title: Bölümden son konu başlıklarını çekmek
Post by: mkuru on June 04, 2012, 10:13:27 AM
Arkadaşlar herhangi bir bölümden (mesela board=16) o bölüme açılmış son 10 konunun başlıklarını çekerek bir blok oluşturmak istiyorum. Bunu yaparken konu başlıklarına herhangi bir ikon olsa ve en son konunun başında yeni ikonu olursa daha da süper olur.
Yardım edebilecek arkadaşlara şimdiden teşekkür ederim.
Title: Re: Bölümden son konu başlıklarını çekmek
Post by: mkuru on June 06, 2012, 03:19:31 AM
Sitede yaptığım aramalarda bu kodu buldum ama ufak bir düzenlemeye ihtiyacım var.
Kodu grafitus yazmış
Kod bu :
Code: [Select]
global $context, $smcFunc, $scripturl;

if ($context['user']['is_guest'])
return;

$board = 6;
$limit = 5;

// Did we get the user by name...
if (isset($_REQUEST['user']))
$memberResult = loadMemberData($_REQUEST['user'], true, 'minimal');
// ... or by id_member?
elseif (!empty($_REQUEST['u']))
$memberResult = loadMemberData((int) $_REQUEST['u'], false, 'minimal');
// If it was just ?action=profile, edit your own profile.
else
$memberResult = loadMemberData($context['user']['id'], false, 'minimal');

list ($member_id) = $memberResult;

$request = $smcFunc['db_query']('', '
SELECT t.id_topic, m.subject
FROM {db_prefix}topics AS t
INNER JOIN {db_prefix}messages AS m ON (m.id_msg = t.id_first_msg)
WHERE t.id_board = {int:board}
AND t.id_member_started = {int:user}
AND t.approved = {int:is_approved}
ORDER BY t.id_topic DESC
LIMIT 5',
array(
'board' => $board,
'user' => $member_id,
'is_approved' => 1,
)
);
$topics = array();
while ($row = $smcFunc['db_fetch_assoc']($request))
$topics[$row['id_topic']] = $row['subject'];
$smcFunc['db_free_result']($request);

if (empty($topics))
{
echo 'Bu bölümde hiç konunuz yok.';
return;
}

echo '<ul>';
foreach ($topics as $id_topic => $subject)
echo '<li><a href="', $scripturl, '?topic=', $id_topic, '.0">', $subject, '</a></li>';
echo '</ul>';

Bu kod ile 6 numaralı bölümden son 5 konunun başlıklarını çekiyor ama çektiği başlıkları sadece üyeler görebiliyor. Ziyaretçiler göremiyor. Ben ziyaretçiler de görsün istiyorum.

Birde board sayısını nasıl arttırabilirim
Code: [Select]
$board = (6,7,8);şeklinde denedim ama olmadı.
Title: Re: Bölümden son konu başlıklarını çekmek
Post by: tc bolubeyi on June 06, 2012, 03:58:21 AM
Code: [Select]
global $context, $smcFunc, $scripturl;
$board = 6;
$limit = 5;

// Did we get the user by name...
if (isset($_REQUEST['user']))
$memberResult = loadMemberData($_REQUEST['user'], true, 'minimal');
// ... or by id_member?
elseif (!empty($_REQUEST['u']))
$memberResult = loadMemberData((int) $_REQUEST['u'], false, 'minimal');
// If it was just ?action=profile, edit your own profile.
else
$memberResult = loadMemberData($context['user']['id'], false, 'minimal');

list ($member_id) = $memberResult;

$request = $smcFunc['db_query']('', '
SELECT t.id_topic, m.subject
FROM {db_prefix}topics AS t
INNER JOIN {db_prefix}messages AS m ON (m.id_msg = t.id_first_msg)
WHERE t.id_board = {int:board}
AND t.id_member_started = {int:user}
AND t.approved = {int:is_approved}
ORDER BY t.id_topic DESC
LIMIT 5',
array(
'board' => $board,
'user' => 1,
'is_approved' => 1,
)
);
$topics = array();
while ($row = $smcFunc['db_fetch_assoc']($request))
$topics[$row['id_topic']] = $row['subject'];
$smcFunc['db_free_result']($request);

if (empty($topics))
{
echo 'Bu bölümde hiç konunuz yok.';
return;
}
echo '<ul>';
foreach ($topics as $id_topic => $subject)
echo '<li><a href="', $scripturl, '?topic=', $id_topic, '.0">', $subject, '</a></li>';
echo '</ul>';

global $context, $smcFunc, $scripturl;
$board = 7;
$limit = 5;

// Did we get the user by name...
if (isset($_REQUEST['user']))
$memberResult = loadMemberData($_REQUEST['user'], true, 'minimal');
// ... or by id_member?
elseif (!empty($_REQUEST['u']))
$memberResult = loadMemberData((int) $_REQUEST['u'], false, 'minimal');
// If it was just ?action=profile, edit your own profile.
else
$memberResult = loadMemberData($context['user']['id'], false, 'minimal');

list ($member_id) = $memberResult;

$request = $smcFunc['db_query']('', '
SELECT t.id_topic, m.subject
FROM {db_prefix}topics AS t
INNER JOIN {db_prefix}messages AS m ON (m.id_msg = t.id_first_msg)
WHERE t.id_board = {int:board}
AND t.id_member_started = {int:user}
AND t.approved = {int:is_approved}
ORDER BY t.id_topic DESC
LIMIT 5',
array(
'board' => $board,
'user' => 1,
'is_approved' => 1,
)
);
$topics = array();
while ($row = $smcFunc['db_fetch_assoc']($request))
$topics[$row['id_topic']] = $row['subject'];
$smcFunc['db_free_result']($request);

if (empty($topics))
{
echo 'Bu bölümde hiç konunuz yok.';
return;
}
echo '<ul>';
foreach ($topics as $id_topic => $subject)
echo '<li><a href="', $scripturl, '?topic=', $id_topic, '.0">', $subject, '</a></li>';
echo '</ul>';
6 ve 7 bölüm idleridir.
Title: Re: Bölümden son konu başlıklarını çekmek
Post by: mkuru on June 06, 2012, 04:09:07 AM
Çok teşekkür ederim. Gayet güzel olmuş.
Title: Re: Bölümden son konu başlıklarını çekmek
Post by: mkuru on June 06, 2012, 06:24:12 AM
Konu başlıkları ortalanmış gibi duruyor. Sola dayalı olarak başlayacak şekilde nasıl ayarlanabilir acaba?
Title: Re: Bölümden son konu başlıklarını çekmek
Post by: tc bolubeyi on June 06, 2012, 07:28:55 AM
ya ortalanmıştır ya ortalanmamıştır. temanızın css dosyasından ya da portal blokları içerik stili / sınıfı ayarlarından yapabilir, yeni içerik stili ve / veya sınıfı ekleyebilirsiniz. Bu konuda moderatör arkadaşın anlatımları vardı. Arama yaparak bulabilirsiniz.
Title: Re: Bölümden son konu başlıklarını çekmek
Post by: deloy on December 31, 2012, 10:00:37 AM
sayın grafitus un yazdığı bu kodu uyguluyorum ancak "bu bölümde konunuz yok" hatası veriyor.
yani bu kod sadece user olarak belirlenen kişinin konularını gösteriyor, konuyu kim yazarsa yazsın son 10 konuyu gösterme işini beceremedim ben.
yardımcı olabilir misiniz?

şurda : 'user' => 1,
yazan yer benim işimi bozuyor, bu sadece 1 nolu id hangi üyeye aitse onun konularını çekiyor.
Title: Re: Bölümden son konu başlıklarını çekmek
Post by: kimyaci on December 31, 2012, 01:11:06 PM
Aşağıda ki konuyu inceledinizmi? Bu konuda user olayı yok.Bir deneyiniz.

http://simpleportal.net/index.php?topic=3966.0
Title: Re: Bölümden son konu başlıklarını çekmek
Post by: deloy on December 31, 2012, 01:52:20 PM
o kodları denedim, alfabe sırasına göre konuları listeliyor ancak limit yok, yani bölümdeki tüm konular geliyor.
Sanırım acilen PHP öğrensem iyi olacak artık :)
SimplePortal 2.3.8 © 2008-2024, SimplePortal