SSI Rehberi

Started by forsakenlad, August 25, 2005, 06:51:20 PM

Previous topic - Next topic

webtasarimci

#380
teşekkür ettim..

Pijama

Merhabalar
Forum sitemdeki son mesajları baska bir siteme aşagıdaki kod ile cekebiliyorum


<?php
$sonmesajlar 
implode(""file("http://www.sitem.com/forum/SSI.php?ssi_function=recentPosts"));
echo 
$sonmesajlar;
?>



Şimdi ben foruma yazılmış son 30 konuyu çekmek istiyorum
kodlarda anladıgım kadarıyla şöyle bir degişiklik yaptım


<?php
$sonmesajlar 
implode(""file("http://www.sitem.com/forum/SSI.php?ssi_function=recentPosts($num_recent = 30)"));
echo 
$sonmesajlar;
?>



ama olmadı..
bunu yapmam için nasıl bir yol izlemem gerekli acaba?
genellikle aynı host isince SSI kullanımıyla ilgili ornekler verilmiş
SSI bence farklı sunucuya vercekmek içinde önemlidir
bilen arkadaslar bu konu hakkındada dokuman hazırlasalar super olur
diye düşünüyorum

Yardımınızı bekliyorum
iyi calısmalar..

scorpioon

Ben son konuları aldığımda tarih ve konuyu açan üyelerin adı da geçiyor. Sadece son konuları nasıl listeleyebilirim


Pijama

#384
Arkadaslar
SSI ile foruma en çok mesaj atan ilk 10 kişiyi göstermek istedim
ve şöyle bir kod kullandım..


$array = ssi_topPoster($topNumber = 10, $output_method = 'array')
foreach ($array as $member)
{
echo $member['realName'];
}


ama olmadı. Bu konuda yardım edermisiniz..

EDiT (Pijama): Sorun çözüldü..

$top_posters = ssi_topPoster(10, 'array');

echo '
<ol>';

foreach ($top_posters as $poster)
echo '
<li>', $poster['link'], ' - ', $poster['posts'], '</li>';

echo '
</ol>';


Iyi Calismalar..

Balaban

Quote from: mk1977 on November 10, 2006, 04:42:38 AM
Herkese teşekkürler,
Sadece başlığı alabilmek mümkün mü peki?
yani kullanıcı adı, kategori adı tarih saat falan gözükmese
sadece konunun başlığı gözükse...

bayağı uzun zaman lmuş ama isteyen olursa
  ssi_recentTopics fonksiyonudai şu kodu



echo '
<table border="0" class="ssi_table">';
foreach ($posts as $post)
echo '
<tr>
<td align="right" valign="top" nowrap="nowrap">
[', $post['board']['link'], ']
</td>
<td valign="top">
<a href="', $post['href'], '">', $post['subject'], '</a>
', $txt['by'], ' ', $post['poster']['link'], '
', !$post['is_new'] ? '' : '<a href="' . $scripturl . '?topic=' . $post['topic'] . '.msg' . $post['new_from'] . ';topicseen#new" rel="nofollow"><img src="' . $settings['lang_images_url'] . '/new.gif" alt="' . $txt['new'] . '" border="0" /></a>', '
</td>
<td align="right" nowrap="nowrap">
', $post['time'], '
</td>
</tr>';
echo '
</table>';
}


şununla değiştirsinler


echo '
<table border="0" class="ssi_table">';
foreach ($posts as $post)
echo '
<tr>

<td valign="top">
<a href="', $post['href'], '">', $post['subject'], '</a>

</td>
</tr>';
echo '
</table>';
}


not:denedim,çalıştı.
.

izmir_LEE

Bazı sunucularda güvenlik gerekçesiyle php.ini dosyasındaki allow_url_include ve allow_url_fopen fonksiyonları devre dışı bırakılıyor.
Forumunuzu subdomain olarak belirlediyseniz (http://forum.example.com şeklinde ulaşıyorsanız) SSI.php'ye ulaşmakta sıkıntı yaşayabilirsiniz.
Bu durumda
<?php
require("/dosyaya/giden/yol/SSI.php?ssi_function=xyz");
?>

şeklinde de SSI.php den veri çekmek mümkün olamayabiliyor. Bu durumda cURL imdada yetişiyor.
CentOS işletim sistemli bir sistemde deneyip bu sıkıntı ile karşılaştım. Subdomaine "/path/" gibi bir ulaşımı blokladı. Alternatif bir şey yazdım olay çözüldü. Belki birilerine lazım olur.

<?php
$ch 
curl_init(); // oturum başlat
curl_setopt($chCURLOPT_URL,"http://forum.example.com/SSI.php?ssi_function=recentPosts"); // urlyi ayarla
curl_setopt($chCURLOPT_RETURNTRANSFER1); //veri transferini başlat ve değişkene aktarılabilir hale getir
$yaz=curl_exec($ch); //cURL uygulansın
curl_close ($ch); //cURL kapansın
echo $yaz//sonucu ekrana bas
?>


forsakenlad

Bunun yerine kolaycs o account icin open basedir restriction kaldirilabilird.
Eren "forsakenlad" Yaşarkurt
SMF Friend & Former Team Member

hazret

merhaba arkadaşlar ;

arcade scorları nı yazdırmak icin ne kullanmamız gerekli ? bu konuda yardımcı olabilirmisiniz

grafitus

Quote from: hazret on January 11, 2010, 12:55:21 PM
merhaba arkadaşlar ;

arcade scorları nı yazdırmak icin ne kullanmamız gerekli ? bu konuda yardımcı olabilirmisiniz
SMF sürümünüz nedir?

hazret

Powered by SMF 1.1.11

SSI.php yede eklemelerim gerekenler varmı ?

şimdiden teşekkür ederim

grafitus

Aşağıdaki kodları portalınızın dosyasına ekleyin.
global $db_prefix, $sourcedir, $scripturl, $settings, $txt;
static $mod;

$limit = 5;
$type = 1; // En çok oynanan oyunlar için: 0 // En iyi oyuncular için: 1 // En uzun süre şampiyonlar için 2 yazın.

if (!isset($mod))
{
if (file_exists($sourcedir . '/Arcade.php'))
$mod = 'smf_arcade';
else
$mod = '';
}

if (empty($mod))
{
echo 'SMF Arcade yüklü değil!';
}
elseif ($mod == 'smf_arcade')
{
require_once($sourcedir . '/ArcadeStats.php');
require_once($sourcedir . '/Subs-Arcade.php');

if (file_exists($sourcedir . '/ArcadeDbConnector.php'))
require_once($sourcedir . '/ArcadeDbConnector.php');

loadLanguage('Arcade');

if (empty($type))
$stats = ArcadeStats_MostPlayed($limit);
elseif ($type == 1)
$stats = ArcadeStats_BestPlayers($limit);
elseif ($type == 2)
$stats = ArcadeStats_LongestChampions($limit);

if (empty($stats))
{
echo '
', $txt['error_sp_no_stats_found'];
return;
}
else
$stats[count($stats) - 1]['last'] = true;

echo '
<ul class="sp_list">';

if (empty($type))
{
foreach ($stats as $stat)
{
echo '
<li>', $stat['link'], '</li>
<li class="smalltext">', $txt['sp-game_plays'], ': ', $stat['plays'], ' | ', $txt['sp-game_rating'], ': ', $stat['rating'], '</li>';
}
}
elseif ($type == 1)
{
$types = array(1 => 'gold', 'silver', 'bronze');
$current = 0;
foreach ($stats as $stat)
{
echo '
<li>', $stat['link'], '</li>
<li class="smalltext"><img src="', $settings['images_url'], '/bar.gif" width="', $stat['precent'], '" height="8" alt="" /> ', $stat['champions'], ' ', $txt['sp-games'], '</li>';
}
}
elseif ($type == 2)
{
$types = array(1 => 'gold', 'silver', 'bronze');
$current = 0;
foreach ($stats as $stat)
{
echo '
<li>', $stat['member_link'], '</li>
<li class="smalltext">', $stat['game_link'], '<br />', $stat['duration'], '</li>';
}
}

echo '
</ul>';
}
}


Kodlar SimplePortal'dan alıntıdır.

hazret

Quote from: grafitus... on January 12, 2010, 10:24:43 AM
Aşağıdaki kodları portalınızın dosyasına ekleyin.
global $db_prefix, $sourcedir, $scripturl, $settings, $txt;
static $mod;

$limit = 5;
$type = 1; // En çok oynanan oyunlar için: 0 // En iyi oyuncular için: 1 // En uzun süre şampiyonlar için 2 yazın.

if (!isset($mod))
{
if (file_exists($sourcedir . '/Arcade.php'))
$mod = 'smf_arcade';
else
$mod = '';
}

if (empty($mod))
{
echo 'SMF Arcade yüklü değil!';
}
elseif ($mod == 'smf_arcade')
{
require_once($sourcedir . '/ArcadeStats.php');
require_once($sourcedir . '/Subs-Arcade.php');

if (file_exists($sourcedir . '/ArcadeDbConnector.php'))
require_once($sourcedir . '/ArcadeDbConnector.php');

loadLanguage('Arcade');

if (empty($type))
$stats = ArcadeStats_MostPlayed($limit);
elseif ($type == 1)
$stats = ArcadeStats_BestPlayers($limit);
elseif ($type == 2)
$stats = ArcadeStats_LongestChampions($limit);

if (empty($stats))
{
echo '
', $txt['error_sp_no_stats_found'];
return;
}
else
$stats[count($stats) - 1]['last'] = true;

echo '
<ul class="sp_list">';

if (empty($type))
{
foreach ($stats as $stat)
{
echo '
<li>', $stat['link'], '</li>
<li class="smalltext">', $txt['sp-game_plays'], ': ', $stat['plays'], ' | ', $txt['sp-game_rating'], ': ', $stat['rating'], '</li>';
}
}
elseif ($type == 1)
{
$types = array(1 => 'gold', 'silver', 'bronze');
$current = 0;
foreach ($stats as $stat)
{
echo '
<li>', $stat['link'], '</li>
<li class="smalltext"><img src="', $settings['images_url'], '/bar.gif" width="', $stat['precent'], '" height="8" alt="" /> ', $stat['champions'], ' ', $txt['sp-games'], '</li>';
}
}
elseif ($type == 2)
{
$types = array(1 => 'gold', 'silver', 'bronze');
$current = 0;
foreach ($stats as $stat)
{
echo '
<li>', $stat['member_link'], '</li>
<li class="smalltext">', $stat['game_link'], '<br />', $stat['duration'], '</li>';
}
}

echo '
</ul>';
}
}


Kodlar SimplePortal'dan alıntıdır.


Teşekkür ederim yalnız ben mkportal kullanıyorum ve Statsı Eğer Mümkün Olursa Dışardan Çağırmak istiyorum SSI Kullanarak İframe İle Portala Yerleştirmeyi Planlıyorum Farklı Bir şey Gelmiyor Aklıma O Nedenle SSI Ye eklemem Gereken Kodlar VaRmı Ve Çağırırken Nasıl Çağırmamız Gerekiyor ?

Yardımlarınız için Şimdiden Teşekkür ederim

grafitus

MkPortal'da PHp blok oluştuma özelliği vardı diye hatırlıyorum?

hazret

#394
var yalnız  sizin Verdiğiniz kodları eklediğim zaman Beyazbir sayfa ile karşılaşıyorum :S

forsakenlad

Evet o kodlar çalışmayacaktır doğal olarak...  Bunu çalıştırmak için bunu SSI.php ye bir fonksiyon olarak ekleyip o fonksiyonu çağırmanız gerekmekte.
Eren "forsakenlad" Yaşarkurt
SMF Friend & Former Team Member

grafitus

Quote from: forsakenlad on January 12, 2010, 02:17:25 PM
Evet o kodlar çalışmayacaktır doğal olarak...  Bunu çalıştırmak için bunu SSI.php ye bir fonksiyon olarak ekleyip o fonksiyonu çağırmanız gerekmekte.
Eren zaten veritabanı çekme işlemlerini ArcadeStats.php, Subs-Arcade.php, ArcadeDbConnector.php dosyalarından yapıyor?

forsakenlad

İyide o dosyalar bunun çekildiği yerde çağrılmamış oluyor. Global olarka tanımlanmış o değişkenlerin bir yerden gelmiş olması lazım di mi? :D
Eren "forsakenlad" Yaşarkurt
SMF Friend & Former Team Member

grafitus

Quote from: forsakenlad on January 12, 2010, 02:56:22 PM
İyide o dosyalar bunun çekildiği yerde çağrılmamış oluyor. Global olarka tanımlanmış o değişkenlerin bir yerden gelmiş olması lazım di mi? :D
Tamam. Arkadaşa dedim zaten portalınızın dosyasına ekleyin. Haliyle o dosyaya SSI.php'yi eklemiştir sanırım?

hazret

Quote from: grafitus... on January 12, 2010, 03:01:56 PM
Quote from: forsakenlad on January 12, 2010, 02:56:22 PM
İyide o dosyalar bunun çekildiği yerde çağrılmamış oluyor. Global olarka tanımlanmış o değişkenlerin bir yerden gelmiş olması lazım di mi? :D
Tamam. Arkadaşa dedim zaten portalınızın dosyasına ekleyin. Haliyle o dosyaya SSI.php'yi eklemiştir sanırım?

açıkcası kafam karıştı azıcık :D neyi nereye ekliyeceğim eğer toparlama şansımız olursa

Advertisement: