Rastgele Konular Bloğu

Başlatan Sosyal Öğretmeni, 01 Ağu 2014, 16:13

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

Sosyal Öğretmeni

Rastgele Konular Bloğu
Aşağıdaki blok forumdan rastgele konular bloğudur.
Ama bu bloka nasıl sınırlama getiririm. Yani limit koymak isityorum örneğin sadece rastgele 15 tane konuyu alsın.

Ya da 100 adet alsın  ama 15 ten sonrası için sayfalandırma oluştursun.
İlk 15 Görünüyor olacak sonrası için Sayfa: 1, 2 ,3, 4 , 5, 6, 7, ... şeklinde Bloğun altıda sayfalanacak
bunları yapan kardeşim olursa çok ama çok memnun oluruz.

global $smcFunc, $scripturl;

$boards = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41);

$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 IN ({array_int:boards})
ORDER BY RAND()',
array(
'boards' => $boards,
)
);
$topics = array();
while ($row = $smcFunc['db_fetch_assoc']($request))
$topics[$row['id_topic']] = $row['subject'];
$smcFunc['db_free_result']($request);

echo '<ul>';
foreach ($topics as $id_topic => $subject)
echo '<li><a href="', $scripturl, '?topic=', $id_topic, '.0">', $subject, '</a></li>';
echo '</ul>';
Herkes göründüğü gibi değil.

tarantula901

Sadece 15 tane içerik çekmek için aşağıdaki kodları kullanabilirsiniz limit için limit 15 istediğiniz sayıyı yazabilirsiniz.

global $smcFunc, $scripturl;

$boards = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41);

$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 IN ({array_int:boards})
ORDER BY RAND()
        LIMIT 15',

array(
'boards' => $boards,
)
);
$topics = array();
while ($row = $smcFunc['db_fetch_assoc']($request))
$topics[$row['id_topic']] = $row['subject'];
$smcFunc['db_free_result']($request);

echo '<ul>';
foreach ($topics as $id_topic => $subject)
echo '<li><a href="', $scripturl, '?topic=', $id_topic, '.0">', $subject, '</a></li>';
echo '</ul>';
Sitenizde işlem yapmadan önce mutlaka yedek alın, yedek alın yedek almayı unutmayın her şeyden önce bu önemli

Pm'den ve Skype'den istenilen destekler ücretlidir. Ücret ödememek için lütfen sitede sorunuzu konu açarak sorabilirsiniz.

Ücretli Smf Destek İçin

Sosyal Öğretmeni

Çok teşekkür ederim limit konusunu çok iyi yapmışsınız.
Allah razı olsun.....

Şuda olsa çok harika olurdu: 100 adet konuyu alsın  ama 15 ten sonrası için sayfalandırma oluştursun.
İlk 15 Görünüyor olacak sonrası için Sayfa: 1, 2 ,3, 4 , 5, 6, 7, ... şeklinde Bloğun altıda sayfalanacak
bunları yapan kardeşim olursa çok ama çok memnun oluruz.
Herkes göründüğü gibi değil.

tarantula901

Alıntı yapılan: Sosyal Öğretmeni - 01 Ağu 2014, 17:54
Çok teşekkür ederim limit konusunu çok iyi yapmışsınız.
Allah razı olsun.....

Şuda olsa çok harika olurdu: 100 adet konuyu alsın  ama 15 ten sonrası için sayfalandırma oluştursun.
İlk 15 Görünüyor olacak sonrası için Sayfa: 1, 2 ,3, 4 , 5, 6, 7, ... şeklinde Bloğun altıda sayfalanacak
bunları yapan kardeşim olursa çok ama çok memnun oluruz.


Bu özelliği eklemek biraz zaman ve bilgi gerekiyor fırsat bulursak yada yapabilen olursa inşallah paylaşır.
Sitenizde işlem yapmadan önce mutlaka yedek alın, yedek alın yedek almayı unutmayın her şeyden önce bu önemli

Pm'den ve Skype'den istenilen destekler ücretlidir. Ücret ödememek için lütfen sitede sorunuzu konu açarak sorabilirsiniz.

Ücretli Smf Destek İçin

Sosyal Öğretmeni

Hocam bu konuda konu başlılalrının uzunluğununasıl kısaltabilirim?
Konular çok uzun olduğu için güzel olmuyor başlıkların sadece 30-40-50 harften oluşmasını nasıl ayarlarız?
yardımcı olursanız çok memnun olurum.
Herkes göründüğü gibi değil.

tarantula901

#5
global $smcFunc, $scripturl;

$boards = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41);

$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 IN ({array_int:boards})
ORDER BY RAND()',
array(
'boards' => $boards,
)
);
$topics = array();
while ($row = $smcFunc['db_fetch_assoc']($request))
$topics[$row['id_topic']] = $row['subject'];
$smcFunc['db_free_result']($request);

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


üsteki koddan ', substr("$subject", 0, 30), ' kısmı sayısını yukseltın kafanıza gore
Sitenizde işlem yapmadan önce mutlaka yedek alın, yedek alın yedek almayı unutmayın her şeyden önce bu önemli

Pm'den ve Skype'den istenilen destekler ücretlidir. Ücret ödememek için lütfen sitede sorunuzu konu açarak sorabilirsiniz.

Ücretli Smf Destek İçin

Sosyal Öğretmeni

LIMIT 15 kısmı silinmişti onu tekrar ekledim kodlar tam istedğim gibi oldu.
Aslında sizin eklediğiniz kodları bulmuştum ama nereye ekleyeceğim konsnda bir trülü tutturamamıştım.
Bunuda szi hallettiniz  çok teşekür ederim.Emeğinize yüreğinize sağlık.
Herkes göründüğü gibi değil.

tarantula901

#7
Alıntı yapılan: Sosyal Öğretmeni - 29 Ara 2014, 22:51
LIMIT 15 kısmı silinmişti onu tekrar ekledim kodlar tam istedğim gibi oldu.
Aslında sizin eklediğiniz kodları bulmuştum ama nereye ekleyeceğim konsnda bir trülü tutturamamıştım.
Bunuda szi hallettiniz  çok teşekür ederim.Emeğinize yüreğinize sağlık.


Farklı sekıldede eklenırdıde bu kolayıma geldı bu sekılde ekledım

Rica ederim dediğiniz gibi php kodları zamanla öğrenirsiniz
Sitenizde işlem yapmadan önce mutlaka yedek alın, yedek alın yedek almayı unutmayın her şeyden önce bu önemli

Pm'den ve Skype'den istenilen destekler ücretlidir. Ücret ödememek için lütfen sitede sorunuzu konu açarak sorabilirsiniz.

Ücretli Smf Destek İçin