SimplePortal
Support => Turkish (Türkçe) => International Support => Ki?iselle?tirme => Topic started by: muhsint on June 25, 2010, 01:06:10 PM
-
Mrblar
Ben şey yapmak istiyorum ama bir türlü yapamadım üst tarafta , eklediğim filmin veya programın sürekli ufak resimlerin kayarak geçmesini istiyorum tıklayınca o konuya gitsinler resimleride konunun içinde koyduğum resimden alsın ve onu oraya sıtandar bir boyutta koysun hepsini
Ekteki resimdeki gibi kaysın istiyorum
Tşkler
-
Buyrun:
global $smcFunc, $scripturl;
$boards = array(1, 2, 3);
$request = $smcFunc['db_query']('', '
SELECT t.id_topic, m.subject, m.body
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 m.subject',
array(
'boards' => $boards,
)
);
$topics = array();
while ($row = $smcFunc['db_fetch_assoc']($request))
$topics[] = array(
'id_topic' => $row['id_topic'],
'subject' => $row['subject'],
'body' => $row['body'],
'first_image' => preg_match_all('~\[img\]([^\]]+)\[\/img\]~i', $row['body'], $images) ? '<img src="' . $images[1][0] . '" alt="' . $row['subject'] . '" height="120" width="70" />' : '',
);
$smcFunc['db_free_result']($request);
echo '
<table>
<tr>
<td><input type="button" value="«" onclick="document.getElementById(\'images_marquee\').direction = \'left\';" /></td>
<td width="100%">
<marquee id="images_marquee" behavior="scroll" direction="left" scrollamount="8" height="145" width="100%" onmouseover="this.stop();" onmouseout="this.start();">
<table>
<tr>';
foreach ($topics as $topic)
echo '
<td>
<a href="', $scripturl, '?topic=', $topic['id_topic'], '.0">', $topic['first_image'], '<br /><span>', $topic['subject'], '</span></a>
</td>';
echo '
</tr>
</table>
</marquee>
</td>
<td><input type="button" value="»" onclick="document.getElementById(\'images_marquee\').direction = \'right\';" /></td>
</tr>
</table>';
Yeni bir PHP blok oluşturup yukarıdaki kodları içeriğine ekleyin. $boards = array(1, 2, 3); 1,2 ve 3 numaraları bölümlerden konular çekilecek demektir.
/me beni kendimden bezdiren bir kodlama oldu. Özellikle "kaydırma" ve tasarımı... Hemen gidip yatmalıyım... :dead:
-
Süpersin oldu valla çok teşşekkürler :-*
Fakat bir sorun oluştu site açılırken çok geç açılıyor bu sebepten dolayı resimlerin büyük olmasından mı acaba onları kendisi küçülte biliyormu
-
Kodda ki height="120" width="70" ifadesiyle resimlerin; height="145" width="100%" ile "kayan" alanın boyutlarını değiştirebilirsiniz.
-
Arkadaşlar öncelikle ellerinize sağlık.Alt kategori içinde ne kadar konu varsa tüm konuların resmini getiriyor.Bir kategoriye eklenen son konun resmini göstermek istiyordum.Bu mümkünmüdür.
Ayrıca Konu isimleri resimlerin altında çıkıyor..Bu yazılarıda resimler gibi küçültebilirmiyiz.Teşekkürler.
-
Süpersin kardeşim tam istediğim gibi oldu ellerin dert görmesin :thumbsup:
-
Çok müthiş bir block yazılmış. Bu tarz blocklar bekliyoruz.
Benim ricam ise bloğa limit koymak yani 1yev 0a 20 adet göösterim yapsın konuların hepsini göstersin istemiyorum...
-
Yukarıdaki verdiğin kodda,
ORDER BY m.subject'
ORDER BY m.subject'
LIMIT 20
-
Verdiğiniz kodları değiştirdim ama maalesef hata verdi...
-
Yanlış eklemiş olmalısınız. Aşağıdaki deneyin:
global $smcFunc, $scripturl;
$boards = array(1, 2, 3);
$request = $smcFunc['db_query']('', '
SELECT t.id_topic, m.subject, m.body
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 m.subject
LIMIT {int:limit}',
array(
'boards' => $boards,
'limit' => 20,
)
);
$topics = array();
while ($row = $smcFunc['db_fetch_assoc']($request))
$topics[] = array(
'id_topic' => $row['id_topic'],
'subject' => $row['subject'],
'body' => $row['body'],
'first_image' => preg_match_all('~\[img\]([^\]]+)\[\/img\]~i', $row['body'], $images) ? '<img src="' . $images[1][0] . '" alt="' . $row['subject'] . '" height="120" width="70" />' : '',
);
$smcFunc['db_free_result']($request);
echo '
<table>
<tr>
<td><input type="button" value="«" onclick="document.getElementById(\'images_marquee\').direction = \'left\';" /></td>
<td width="100%">
<marquee id="images_marquee" behavior="scroll" direction="left" scrollamount="8" height="145" width="100%" onmouseover="this.stop();" onmouseout="this.start();">
<table>
<tr>';
foreach ($topics as $topic)
echo '
<td>
<a href="', $scripturl, '?topic=', $topic['id_topic'], '.0">', $topic['first_image'], '<br /><span>', $topic['subject'], '</span></a>
</td>';
echo '
</tr>
</table>
</marquee>
</td>
<td><input type="button" value="»" onclick="document.getElementById(\'images_marquee\').direction = \'right\';" /></td>
</tr>
</table>';
-
Arkadaşlar sadece konu ID si ile bu resimleri çağıramazmıyız?
-
Buyrun:
global $smcFunc, $scripturl;
$topic_ids = array(1, 2, 3, 50, 98, 674);
$request = $smcFunc['db_query']('', '
SELECT t.id_topic, m.subject, m.body
FROM {db_prefix}topics AS t
INNER JOIN {db_prefix}messages AS m ON (m.id_msg = t.id_first_msg)
WHERE t.id_topic IN ({array_int:topics})
ORDER BY m.subject',
array(
'topics' => $topic_ids,
)
);
$topics = array();
while ($row = $smcFunc['db_fetch_assoc']($request))
$topics[] = array(
'id_topic' => $row['id_topic'],
'subject' => $row['subject'],
'body' => $row['body'],
'first_image' => preg_match_all('~\[img\]([^\]]+)\[\/img\]~i', $row['body'], $images) ? '<img src="' . $images[1][0] . '" alt="' . $row['subject'] . '" height="120" width="70" />' : '',
);
$smcFunc['db_free_result']($request);
echo '
<table>
<tr>
<td><input type="button" value="«" onclick="document.getElementById(\'images_marquee\').direction = \'left\';" /></td>
<td width="100%">
<marquee id="images_marquee" behavior="scroll" direction="left" scrollamount="8" height="145" width="100%" onmouseover="this.stop();" onmouseout="this.start();">
<table>
<tr>';
foreach ($topics as $topic)
echo '
<td>
<a href="', $scripturl, '?topic=', $topic['id_topic'], '.0">', $topic['first_image'], '<br /><span>', $topic['subject'], '</span></a>
</td>';
echo '
</tr>
</table>
</marquee>
</td>
<td><input type="button" value="»" onclick="document.getElementById(\'images_marquee\').direction = \'right\';" /></td>
</tr>
</table>';
Yeni bir PHP blok oluşturup yukarıdaki kodları içeriğine ekleyin. $topic_ids = array(1, 2, 3, 50, 98, 674); 1, 2, 3, 50, 98 ve 674 IDli konular çekilecek demektir.
-
Çok teşekkür ederim.Ellerine sağlık.Gerçekten de güzel oldu.Resimlerin altında ki başlık yazılarının fontunu biraz küçültmemizin imkanı varmıdır?
-
Teşekkür ediyorum. Buda güzel ama ben konuları kendisi çekmesini istiyorum. İlk kodlardaki gibi bölüm id lerini yazıcağım o bölümlerden son 1 veya 2 konuyu çekmesini isteyeceğim... Bu mümkünüdür...
-
Teşekkür ediyorum. Buda güzel ama ben konuları kendisi çekmesini istiyorum. İlk kodlardaki gibi bölüm id lerini yazıcağım o bölümlerden son 1 veya 2 konuyu çekmesini isteyeceğim... Bu mümkünüdür...
Bölüm ID sini yazıp, sadece o bölümde ki son konuyu çekseydi evet daha basit olurdu.Her güncellemede konu ID sini değiştirmeye gerek kalmazdı.Başta onu yapmaya çalıştım fakat çok uğraşmama rağmen bir türlü halledemedim.
Birde konunun başlığı biraz uzun olunca resimlerden daha geniş yer kaplıyor ve resimler arasında boşluk oluşuyor.O zaman görüntü biraz bozuluyor.Konunun Yazı fontunu biraz küçültebilseydik daha güzel durudu.
-
Peki bunu forumdan bağımsız bir sayfada nasıl gösterebilirim?
Bilgisi olan varmıdır acaba?
-
Aynı kodu SSI.php'nin "include" edildiği, PHP bir sayfa üzerinde de gösterebilirsiniz.
-
Aynı kodu SSI.php'nin "include" edildiği, PHP bir sayfa üzerinde de gösterebilirsiniz.
hiç bir bilgim olmadığı için bu dediğinizi yapmam sanırım mümkün değil :(
-
Sizin için teşekkürler ben daha bilmiyorum php info :'(
-
Bir hata meydana geldi!
PHP sözdizimi hatası. Kodlarınızı kontrol edin.
Dİye Hata Veriyor.
SimplePortal 2.3.2 kullanıyorum
-
Grafitus ben de uyguladım bende şöyle bir hata çıkıyor
/Sources/PortalBlocks.php(3445) : eval()'d code on line 5
smf RC2'de çalışıyor onu denedim bu kodlamaları 1.1.11 versiyonu için düzenleyebilir misiniz?
smf versiyonu 1.1.11
Simple portal versiyonu 2.3.2
site adresi: www.pc-oyun.org
Yapabilirsen sevinirim.
-
SMF 1.1.x için:
global $db_prefix, $scripturl;
$boards = array(1, 2, 3);
$request = db_query("
SELECT t.ID_TOPIC, m.subject, m.body
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 (" . implode(', ', $boards) . ")
ORDER BY m.subject", __FILE__, __LINE__);
$topics = array();
while ($row = mysql_fetch_assoc($request))
$topics[] = array(
'id_topic' => $row['ID_TOPIC'],
'subject' => $row['subject'],
'body' => $row['body'],
'first_image' => preg_match_all('~\[img[^\]]*\]([^\]]+)\[\/img\]~i', $row['body'], $images) ? '<img src="' . $images[1][0] . '" alt="' . $row['subject'] . '" height="120" width="70" />' : '',
);
mysql_free_result($request);
echo '
<table>
<tr>
<td><input type="button" value="«" onclick="document.getElementById(\'images_marquee\').direction = \'left\';" /></td>
<td width="100%">
<marquee id="images_marquee" behavior="scroll" direction="left" scrollamount="8" height="145" width="100%" onmouseover="this.stop();" onmouseout="this.start();">
<table>
<tr>';
foreach ($topics as $topic)
echo '
<td>
<a href="', $scripturl, '?topic=', $topic['id_topic'], '.0">', $topic['first_image'], '<br /><span>', $topic['subject'], '</span></a>
</td>';
echo '
</tr>
</table>
</marquee>
</td>
<td><input type="button" value="»" onclick="document.getElementById(\'images_marquee\').direction = \'right\';" /></td>
</tr>
</table>';
Yeni bir PHP blok oluşturup yukarıdaki kodları içeriğine ekleyin. $boards = array(1, 2, 3); 1,2 ve 3 numaraları bölümlerden konular çekilecek demektir.
-
Öncelikle ilgin için teşekkürler denedim dediğiz şekilde php blok olarak fakat bu seferde şöyle hata var
Parse error: syntax error, unexpected T_FILE in /Sources/PortalBlocks.php(3445) : eval()'d code on line 10
-
Evet, kodda bir virgül koymayı unutmuşum. Yukarıdaki kodu düzenledim. Tekrar deneyin.
-
Kodlarda biraz değişiklik yaptım alt= yazan yeri title ile değiştirdim böylece başlık kısmı fare resmin üstündeyken çıkıyor. Ama bir sorun var.Sorun da şu:
[img width=400 height=570]
şeklinde yani kısacası boyutlandırılan hiç bir resmi görmüyor.Hep alttakileri alıyor.
global $db_prefix, $scripturl;
$boards = array(1, 2, 3, 18, 8, 5, 6, 7, 19, 20, 21);
$request = db_query("
SELECT t.ID_TOPIC, m.subject, m.body
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 (" . implode(', ', $boards) . ")
ORDER BY m.subject", __FILE__);
$topics = array();
while ($row = mysql_fetch_assoc($request))
$topics[] = array(
'id_topic' => $row['ID_TOPIC'],
'first_image' => preg_match_all('~\[img\]([^\]]+)\[\/img\]~i', $row['body'], $images) ? '<img src="' . $images[1][0] . '" title="' . $row['subject'] . '" height="190" width="120" />' : '',
);
mysql_free_result($request);
echo '
<table>
<tr>
<td><input type="button" value="«" onclick="document.getElementById(\'images_marquee\').direction = \'left\';" /></td>
<td width="100%">
<marquee id="images_marquee" behavior="scroll" direction="left" scrollamount="6" height="210" width="100%" onmouseover="this.stop();" onmouseout="this.start();">
<table>
<tr>';
foreach ($topics as $topic)
echo '
<td>
<a href="', $scripturl, '?topic=', $topic['id_topic'], '.0">', $topic['first_image'], '<br /><span>', $topic['subject'], '</span></a>
</td>';
echo '
</tr>
</table>
</marquee>
</td>
<td><input type="button" value="»" onclick="document.getElementById(\'images_marquee\').direction = \'right\';" /></td>
</tr>
</table>';
-
Yukarıda verdiğim kodu tekrar düzenledim.
-
Teşekkürler sorunsuz çalışıyor :)
-
Çok güzel olmuş Fakat Bir Sorunumuz var. Eklenen Son Konuyu İlk Gösterilen Resme Alsaydı Daha Güzel Olmazmıydı. Bunu Yapabilirmiyiz acaba :o
-
Evet bencede daha güzel olurdu grafitus yapar bence
-
Yukarıda verdiğim kodlarda ORDER BY m.subject kodunu ORDER BY m.poster_time DESC ile değiştirin.
-
Dosya: /home/sanalser/public_html/forum/Sources/PortalBlocks.php(6879) : eval()'d code
Bu hatayı veriyor o zaman :(
-
Yönetim > SimplePortal > Temel Ayalar sayfasında "PHP kodu doğrulamasını kapat" (yani doğruluma etkin olsun) seçeneği pasif yapın.
Ayrıca yukarıda yaptığımız değişiklik, böyle bir hata verecek bir değişiklik değil. Kodu yanlış eklemiş olabilir misiniz? Bir de SMF sürümünüz nedir?
-
SMF 1.1.11 - SimplePortal 2.3.2
-
Resim sayısını hala kısıtlayamadım. Forum açılırken çok geç açılıyo bunun bi çaresi var mı ?
-
Mesaj sayısını zannımca şöyle sınırlayabilirsin
Bunu bul
ORDER BY m.subject'
Bununla değiştir
ORDER BY m.subject LIMIT 20'
Burdaki limit 20 fotoğraf oluyor 20yi değiştirirsen fotoğraf sayısını arttırıp azaltabilirsin.
-
Aşağıdaki kodlamada son 30 konuyu veriyor kodlamada yanlışlık vardı. Grafitus'un verdiği m.poster_time yerine m.postertime olacak o kadar Herkese hayırlı olsun :)
global $db_prefix, $scripturl;
$boards = array(2);
$request = db_query("
SELECT t.ID_TOPIC, m.subject, m.body
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 (" . implode(', ', $boards) . ")
ORDER BY m.postertime DESC LIMIT 30", __FILE__, __LINE__);
$topics = array();
while ($row = mysql_fetch_assoc($request))
$topics[] = array(
'id_topic' => $row['ID_TOPIC'],
'body' => $row['body'],
'first_image' => preg_match_all('~\[img[^\]]*\]([^\]]+)\[\/img\]~i', $row['body'], $images) ? '<img src="' . $images[1][0] . '" title="' . $row['subject'] . '" height="170" width="110" />' : '',
);
mysql_free_result($request);
echo '
<table>
<tr>
<td><input type="button" value="«" onclick="document.getElementById(\'images_marquee\').direction = \'left\';" /></td>
<td width="100%">
<marquee id="images_marquee" behavior="scroll" direction="left" scrollamount="6" height="170" width="100%" onmouseover="this.stop();" onmouseout="this.start();">
<table>
<tr>';
foreach ($topics as $topic)
echo '
<td>
<a href="', $scripturl, '?topic=', $topic['id_topic'], '.0">', $topic['first_image'], '<br /><span>', $topic['subject'], '</span></a>
</td>';
echo '
</tr>
</table>
</marquee>
</td>
<td><input type="button" value="»" onclick="document.getElementById(\'images_marquee\').direction = \'right\';" /></td>
</tr>
</table>';
-
Eline Sağlık ;)
-
Yanlışınız var @muhammedalizan. SMF'nin varsayılan tablolarında poster_time olarak geçer o kolon.
-
sizin dediğiniz şekilde çalışmıyor database hatası veriyor. uzun araştırmalar sonucu öyle olduğunu gördüm. isterseniz sizin verdiğiniz m.poster_time'ı ve m.postertime'ı deneyin hangisi doğru çalışıyor görecekseniz.
-
Ben bu bloğu çok seviyorum fakat istediğim gibi kullanamıyorum. Sizden ricam bloğu şu şekilde geliştirmenizdir.
diyelim 1 numaralı bölümden 5 tane konu çeksin ama bu konularda son konular olsun. Tabi hem bölüm sayısını hemde konu sayısını isteiğim gibi ayarlayabilmem lazım...
Maalesef son konuları çekmiyor. Bölümün içinden kafasına göre çekiyor. Bunu bu şekilde istememin sebebi ise video galeri olarak kullanmak istememdir. Ben videoları forumda bölümler halinde açtım buna uyugun bir block bulamadığım için bunu yapmayı düşündüm ama böylşe oluşu canımı çok sıktı. Bana yardımcı olursanız çok memnun olacağım...
-
ORDER BY m.subject ifadesini aşağıdaki bununla değiştirin:
ORDER BY t.id_topic
LIMIT 5
-
Denedim ama hata verdi... Siz deneyip kodları tam yazabilirmisiniz... Belki ben hata yapıyorumdur...
Tam olarak istediğim diyelim 10 tane bölüm var bu bölümlerdeki son 5 konunun seçtiğim bölüm sırasına göre gösterimi...
-
Hata vermiyor. Düzgün çalışıyor ancak id numarası en küçük olan konulardan başlayarak çekiyor. bu durumda da son konular değil eklenen ilk konulardaki resimler gözüküyor. En son konuları çekecek şekilde modifiye edilebilirse daha kullanışlı olacaktır.
-
Hata vermiyor. Düzgün çalışıyor ancak id numarası en küçük olan konulardan başlayarak çekiyor. bu durumda da son konular değil eklenen ilk konulardaki resimler gözüküyor. En son konuları çekecek şekilde modifiye edilebilirse daha kullanışlı olacaktır.
Bende en son sırada olan konuları çekmesini istiyorum fekat sonuç alamadım... Yardımcı olacak arkadaşlaradn yardım beklemekteyim...
-
Hocam konunun güncel olması açısından tekrar yazıyorum.
ORDER BY m.subject
ifadesini
ORDER BY t.id_topic
LIMIT 5
şeklinde değiştirdiğimiz zaman o bölümdeki ilk konulardan başlayarak resimleri gösteriyor. Bunu son resimleri gösterecek şekilde nasıl düzenleyebiliriz.
-
Bulun:
ORDER BY t.id_topic
LIMIT 5
Değiştirin:
ORDER BY t.id_topic DESC
LIMIT 5
-
Eksik olmayın hocam. Emeğinize sağlık. Sayenizde 40 yaşından sonra simple portal müptelası oldum.
-
Bulun:
ORDER BY t.id_topic
LIMIT 5
Değiştirin:
ORDER BY t.id_topic DESC
LIMIT 5
Benim oyun sitem var ve ben sadece kendi payAŞTIKLARIMIN BURDA GÖZÜKMESİNİ İSTİYORUM DİĞER ÜYELER saçma saçma şeyler paylaşabiliyo ve burda çıkıyoo lütfen acill
-
makale fonksiyonunu kullanın.
-
Selam bende 2.3.3 kullanıyorum verdiğiniz ilk kodu kuruyorum ama sadece ilk 3 konuyu alıyor gerisini almıyor hangisini denediysem olmadı sadece son eklediğim 15-20 konuyu almasını istiyorum ne yapabilirim lütfen yardımcı olurmusunuz,şimdiden teşekkürler.
-
bölüm idlerini girin koda.
-
Bölüm id'lerini girmeden kendisi alamazmı otomatik olarak yoksa her zaman id girmek sorun oluyor
-
Resimlerin altındaki fontu nasıl ortalayabiliriz? yada fontu nasıl büyültebiliriz? lütfen yardım edin :O
-
Buyrun:
global $smcFunc, $scripturl;
$boards = array(1, 2, 3);
$request = $smcFunc['db_query']('', '
SELECT t.id_topic, m.subject, m.body
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 m.subject',
array(
'boards' => $boards,
)
);
$topics = array();
while ($row = $smcFunc['db_fetch_assoc']($request))
$topics[] = array(
'id_topic' => $row['id_topic'],
'subject' => $row['subject'],
'body' => $row['body'],
'first_image' => preg_match_all('~\[img\]([^\]]+)\[\/img\]~i', $row['body'], $images) ? '<img src="' . $images[1][0] . '" alt="' . $row['subject'] . '" height="120" width="70" />' : '',
);
$smcFunc['db_free_result']($request);
echo '
<table>
<tr>
<td><input type="button" value="«" onclick="document.getElementById(\'images_marquee\').direction = \'left\';" /></td>
<td width="100%">
<marquee id="images_marquee" behavior="scroll" direction="left" scrollamount="8" height="145" width="100%" onmouseover="this.stop();" onmouseout="this.start();">
<table>
<tr>';
foreach ($topics as $topic)
echo '
<td>
<a href="', $scripturl, '?topic=', $topic['id_topic'], '.0">', $topic['first_image'], '<br /><span>', $topic['subject'], '</span></a>
</td>';
echo '
</tr>
</table>
</marquee>
</td>
<td><input type="button" value="»" onclick="document.getElementById(\'images_marquee\').direction = \'right\';" /></td>
</tr>
</table>';
Yeni bir PHP blok oluşturup yukarıdaki kodları içeriğine ekleyin. $boards = array(1, 2, 3); 1,2 ve 3 numaraları bölümlerden konular çekilecek demektir.
$boards = array(1, 2, 3); kısmını kendime göre düzenliyorum, ama afiş resmiyle beraber konu linki altta çıkıyor tabi uzun olduğu için diğer resim çok çok uzağında aklıyor. karmakarışık bir görüntü oldu.