Simple Machines Community Forum

SMF Support => Türkçe Bölümü (Turkish) => Language Specific Support => Dokümantasyon => Topic started by: [SiNaN] on May 21, 2008, 10:25:55 AM

Title: SSI Dersleri - Başlangıç Seviyesi
Post by: [SiNaN] on May 21, 2008, 10:25:55 AM
SSI Dersleri – Başlangıç Seviyesi

Öncelikle hepiniz SSI Derslerimize hoş geldiniz. 3 seviye olarak düşünülen SSI Derslerimizde; SSI ile neler yapabileceğimize bakacak, SSI hakkında sıkça sorulan sorulara cevap verecek ve bazı püf noktalarını açıklayacağız. Ayrıca mesajın sonuna eklenmiş olan kodlar ile de öğrendiklerinizi uygulamalı bir şekilde görebileceksiniz. Bunun dışında herhangi bir soru sormak ya da yorum yapmak isterseniz lütfen bu mesajın altından devam edin.

***LÜTFEN ‘SSI.PHP’ DOSYANIZDA DEĞİŞİKLİK YAPMAYINIZ***
Bu derslerde gösterilen her şey ‘SSI.php’ dosyası düzenlenmeden yapılmıştır.


SSI nedir?

Açılımı Server Side Include olan SSI, forumunuzdaki bilgileri, forum dışındaki sayfalarınızda kullanabilmenizi sağlar.

SSI bana nasıl yardımcı olabilir?

Emin olun siz de SSI kullanmak zorunda kalacağınız bir durumla karşılaşacaksınız. Hemen bir örnek verelim:

Örnek:

Forumunuzun dışındaki bir sayfada bazı özel indirme bağlantıları bulunuyor. Siz, bunların sadece üyeler tarafından görülmesini istiyorsunuz.

Böyle bir şeyi SSI ile birkaç dakika içinde yapabilirsiniz.

İlginç… Peki, nasıl kullanmaya başlayacağım?

Denemek için bir dosya oluşturabilirsiniz. Öncelikle yapmanız gereken kullanacağınız dosyanın uzantısını .php yaparak aşağıdaki kodu dosyanın en üstüne eklemek:

Code: [Select]
<?php
require("/home/simple/public_html/forum/SSI.php"); 
?>
Yalnız yukarıdaki kodda SSI.php dizininin siteniz için doğru olduğundan emin olmalısınız.

Tamam, dizini doğru olarak girdim, sırada ne var?

Eğer doğru dizini bularak dosyanıza yukarıdaki kodu eklediyseniz ilk adımı tamamladık. Şimdi birkaç deneme yapalım. Aşağıdaki kodu ‘require…’ ile ‘?>’ kodları arasına ekleyin:

ssi_menubar();

Ardından da tarayıcınızdan bu sayfayı görüntüleyin. Her şey yolunda gittiyse, sitenizin menüsünü görüyor olmanız gerekir. Eğer hiçbir şey çıkmıyor veya hata mesajı alıyorsanız büyük ihtimalle SSI.php dizinini doğru olarak ayarlayamadınız, tekrar kontrol edin.
Çalıştırabildiğinize göre artık burada diğer varsayılan fonksiyonları da kullanarak denemeler yapabilirsiniz. Varsayılan fonksiyonları ‘ssi_examples.php’ dosyasından görebilirsiniz.

Harika! Başka neler yapabiliriz?

Birçok şey. Mesela verdiğimiz örnekteki gibi kullanıcının üye olup olmadığını kontrol edebilirsiniz.

Örnek:

Sitenizde hem forum, hem de forumdan bağımsız bazı sayfalar var. Özel bağlantıların bulunduğu “Dosyalar” sayfasını sadece üyelerin görebilmesini istiyorsunuz.

Bunu PHP’nin ‘if’ kontrol yapısı ile kolayca yapabilirsiz:

Code: [Select]
<?php
require("SSI.php_DİZİNİNİZ"); 

if (
$context['user']['is_guest'])
 {
   echo 
   
'<h5>Erişim Engellendi</h5>
   Bu sayfaya erişim izniniz yoktur. Eğer üyeyseniz lütfen giriş yapın.'
;
 }
else
 {
   echo
   
'<h5>Hoş geldin '$context['user']['name'], '!</h5>
   İşte özel bağlantılar:'
;
 }
?>

Yukarıdaki kodları açıklayalım:
‘if’ kontrol yapısı doğru ve yanlış üzerine çalışır. Örneğimizdeki $context['user']['is_guest'] eğer doğruysa, birinci kod bloku çalışır. Eğer yanlışsa ‘else’ kod bloku çalıştırılır.
Yani bu kodlarda eğer giriş yapmamışsanız [Bu durumda ziyaretçisiniz] “Erişim Engellendi” mesajı alacaksınız. Ama eğer giriş yapmışsanız, indirme bağlantılarını göreceksiniz. Kendinize göre düzenleyerek kullanabilirsiniz.

Aynısını kullanıcının yönetici olup olmadığını kontrol etmek için de kullanabilirsiniz.

Code: [Select]
if ($context['allow_admin'])
  {
   Kod bloku
  }
else
  {
   Kod bloku
  }

Bu mesaja eklenmiş olan kodlar da size yardımcı olacaktır.

membergroup.txt – Üye grubunuzu daha sonra kullanılabilmesi için bir değişkenin içine koyar.
welcome.txt – Eğer ziyaretçiyseniz, giriş formunu; değilseniz de karşılama mesajını gösterir.

Bununla birlikte ilk dersimizin sonuna geldik. Şimdi SSI Dersleri – Orta Seviye’ye geçebilirsiniz.

Lütfen anlamakta zorluk çektiğiniz noktaları sormaktan çekinmeyiniz. Bu dersin kapsadığı bütün özellikler hakkında soru ve sorunlarınızı bu konu altına yazabilirsiniz.

Orijinal konu Basic SSI FAQ (http://www.simplemachines.org/community/index.php?topic=12936.0), Tomer (http://www.simplemachines.org/community/index.php?action=profile;u=1176) tarafından yazılmıştır.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: Hoochie Coochie Man on May 21, 2008, 10:38:48 AM
Harkulade. Emeğine sağlık Sinan.. Bu 3 ders de bana ileride lazım olabilir..
Dökümantasyona taşınmasını temenni ederim..
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: ♀φ®♪└┘δ on May 21, 2008, 10:48:59 AM
Sinan çok güzel  bir  anlatım olmuş en azından benim  gibi  ssı'yi  pek bilmeyen arkadaşlar  bunlardan  yararlanacaktır.  Mesela    veri tabanını entegre etmeden sadece  üyelerin girebileceği  sohbet bölümleri  oluşturulabilir  bu yolla..
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: [SiNaN] on May 21, 2008, 10:51:59 AM
Evet, 2. kısımdaki kodlarla kolayca yapabilirsiniz.

Eğer devamını yazacak olursam SSI için yeni fonksiyonlar yazma ile alakalı bir ders olacaktır. Ama bu bölüm için gerekir mi, bilmiyorum.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: TECHKENDO on May 26, 2008, 03:17:43 AM
Bilgiler için teşekür ederim Sinan,

sitemi kendi php bilgilerim ve ssi ile geliştiriyorum, şimdiye kadar iyi iş çıkardığıma inanıyorum

Aşağıdaki if döngülerini belirli forum kullanıcı grubuna uygulayabiliyormuyuz ? Örneğin istediğim yere sadece oluşturmuş olduğum A Grubu girecek şekilde

if ($context['allow_admin']) --->> yönetici

if ($context['user']['is_guest']) --->> ziyaretçi

Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: [SiNaN] on May 26, 2008, 03:25:16 AM
SSI Dersleri - İleri Seviye (http://www.simplemachines.org/community/index.php?topic=240522.0)'de açıklamıştım sorunuzun cevabını.

Diğer dersleri de okumanızı tavsiye ediyorum.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: Ni©holąś™ on June 01, 2008, 05:32:52 AM
Emeğine sağlık Sinan :)
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: a11 on June 17, 2008, 04:16:06 PM
Elinize sağlık..

Yapmak istediğim şey şu ,

Elimde 20 kategorili forum var. ( misal )

a kategorisi
b kategorisi
c kategorisi


Bu kategorilerden a kategorisinde açılan son konunun Konu başlığını Forum Ana Sayfasında Forumun Sağ tarafına eklediğim blokta göstermek istiyorum. Açacağım blokta istediğim kategorinin / kategorilerin son konusunu veyahut son 3 konusunun başlığını orada göstermem mümkün müdür ? Son 10 konu haricinde böyle birşey yapmak istedim ama kodların içinden çıkılmaz bir hal aldı..

Şimdiden teşekkürler..
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: Yağız... on June 17, 2008, 05:00:12 PM
Sanırım burası daha çok yardımcı olur:
http://www.simplemachines.org/community/index.php?topic=240521.0
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: a11 on June 18, 2008, 09:31:59 AM
Teşekkür ederim ilginiz için.. ;)
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: #Serseri on July 02, 2008, 10:43:26 AM
***LÜTFEN ‘SSI.PHP’ DOSYANIZDA DEĞİŞİKLİK YAPMAYINIZ***

SSI'de kendime göre değişiklik yapsam ne sakıncası varki? Forum buradan birşeyler çekiyormu? Kendime göre düzenlediğim bir kaç yer varda. Örneğin tabloları düzenliyorum bir kaç gif ekliyorum.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: [SiNaN] on July 03, 2008, 03:09:23 AM
Güncelleme sırasında sorun yaşamamanız için SSI.php'de değişiklik yapmanızı tavsiye etmiyorum. SSI Dersleri - Orta Seviye (http://www.simplemachines.org/community/index.php?topic=240521.0)'yi incelerseniz aslında SSI.php'de hiçbir değişiklik yapmadan istediklerinizin yüzde 90'ını elde edebileceğinizi göreceksiniz.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: Hoochie Coochie Man on July 05, 2008, 05:42:01 AM
SSI boarnews ile çağırdığımızda
6 yorum | Yorum Yaz
yazıyorya hani haberin aşağısında..
onun yanına bir de görüntülenme sayısını ekleyebilirmiyiz paşam?
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: [SiNaN] on July 05, 2008, 06:01:30 AM
Sanırım temada kullanacaksın. Maalesef görüntülenme sayısını veritabanından almıyor HCM.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: Hoochie Coochie Man on July 05, 2008, 06:34:09 AM
Eywelleeee :)
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: sazan on July 06, 2008, 05:09:01 AM
ya birde html index te ssi nasil yapilir izah edebilecen mi? deneyecem bakalim...
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: Hoochie Coochie Man on July 06, 2008, 05:29:35 AM
html index.te ssi yapılmaz benim bildiğim.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: [SiNaN] on July 06, 2008, 05:32:30 AM
Daha önce bir yerde yazmıştım sanırım. Normalde apache ayarlarından html'lerin de Server-Side-Include'u desteklemesi sağlanabiliyor. Ama tavsiye edilmiyor ve de çok kolay değil.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: [-Delete-] on November 05, 2008, 02:10:27 PM
Emeğine Sağlık Sinan Çok Güzel Döküman , Sırayla Diğer Dökümanlarıda İnceleyeceğim.

HTML Sayfada Ben SSİ Çalıştırmıştım ve Bunu <bod><?php ssi_fonksiyon(); ?></body> şeklinde gerçekleştirmiştim.

Nekadar doğru nekadar yanlış tartışılır ama istediğimide yapmıştım doğrusu :)

Tekrar Teşekkürler.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: [SiNaN] on November 06, 2008, 06:02:41 AM
HTML Sayfada Ben SSİ Çalıştırmıştım ve Bunu <bod><?php ssi_fonksiyon(); ?></body> şeklinde gerçekleştirmiştim.

Bunun mümkün olduğunu sanmıyorum. Eğer iframe kullanarak *.php bir sayfayı gömmezseniz... *.html uzantısının da SSI'ı desteklemesi sağlanabiliyor ama kullanılan kodlar *.shtml örneklerinde olduğu gibi olmak zorunda. Tabii url rewrite ile php uzantıyı da html'e çevirebilirsiniz.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: iammember on December 10, 2008, 07:29:40 AM
ustadlar membergroup.txt dosyasi eklenmemis mumkunse atabilirmisiniz.... tesekkurler
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: [SiNaN] on December 10, 2008, 07:31:47 AM
http://www.simplemachines.org/community/index.php?action=dlattach;topic=12936.0;attach=1913
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: behzat11111 on May 18, 2009, 06:23:02 PM
teşşekürler ama çözemiyorum onun için 2 soru soracağım

1. belli bir kategori veya bölümü son konular olarak göstermak istiyorum.
2. son konular'daki Konu sayısı İstediğim kadar çoğaltmak istiyorum.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: MadBlazer on July 29, 2009, 04:30:51 PM
Merhaba,
SSI kullanıyorum bir sorum olucaktı.
<?php ssi_login(); ?> fonksiyonunu portalıma yerleştirdim bildiğiniz üzere giriş yapıldığı an foruma yönlendiriyor. ben forum değilde anasayfada kalmasını istiyorum bunu nasıl yapıcam?
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: Yağız... on July 30, 2009, 06:12:42 AM
<?php ssi_login('anasayfa adresiniz'); ?> şeklinde kullanın.(http:// koymayı unutmayın)
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: MadBlazer on July 30, 2009, 08:50:57 AM
Teşekkürler.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: MadBlazer on July 31, 2009, 01:27:48 PM
Bir sorum daha olucak.

Son Mesajlar bölümündeki Tarih ve Saati kaldırmak istiyorum nasıl yapıcam?
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: Balaban on July 31, 2009, 06:13:55 PM
ssi.php'de ssi_recentPosts fonksiyondaki  ', $post['time'], '  değişkenini kaldırarak yapabilirsiniz...
 
Code: [Select]

</td>
<td align="right" nowrap="nowrap">
', $post['time'], '
</td>
</tr>';

içindn şu kısmı kaldırın..
 
Code: [Select]

<td align="right" nowrap="nowrap">
', $post['time'], '
</td>

 
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: MadBlazer on August 01, 2009, 02:52:15 AM
Oldu. :) Teşekkürler.
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: S_HA_DO_W on August 16, 2009, 04:56:45 PM
deneme.php adlı bir sayfa oluşturdum ve ana dizine attım ve alltaki iki kodu da denedim

Code: [Select]
<?php
require("/home/siteadi/public_html/forum/SSI.php"); //siteadi kısmına kendi sitemin adı yazılı
?>


Code: [Select]
<?php 
require("/var/www/siteadi/htdocs/smf/SSI.php"); //siteadi kısmına kendi sitemin adı yazılı
?>

deneme yaptığımda ise hiç bir sonuç alamadım
sayfa görüntülenemiyor hatası alıyorum :S
deneme yapmak amaçlı byethost un ücretsiz hostinginden ve ücretsiz bir domain ile denedim bundan kaynaklanıyor olabilir mi acaba

Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: Hkan on August 16, 2009, 04:57:51 PM
Sadece bunu koyarsan hiçbir şey görüntülemez PHP fonksiyonu. :)
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: S_HA_DO_W on August 16, 2009, 05:05:52 PM
bu sorunu çözdüm arkadaşlar biraz kurcalayınca oluyormuş
smf/ssi_examples.php adresini çağırınca eklemem gereken kod düzgün bir şekilde gösteriyormuş
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: S_HA_DO_W on August 16, 2009, 05:06:50 PM
Sadece bunu koyarsan hiçbir şey görüntülemez PHP fonksiyonu. :)

demek istediğimi anlamamış olmalısınız.
demek istediğim sayfa görüntülenemiyor hatası vermesiydi neyse hallettim sorunu teşekkür ederim
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: reprimond on February 27, 2019, 03:37:01 AM
merhaba

Öncelikle döküman için teşekkürler. Deneme yanılma yöntemiyle <?php ssi_recentPosts(); ?> parametresini kullanarak wordpress sitemin anasayfasına forumdaki son mesajları çektim.
Bu parametreyle son mesajın olduğu bölüm adı, user adı ve tarihte geliyor. Ben sadece son mesajın atıldığı konunun adını istiyorum. Diğerlerini nasıl exculude edebilirim?
Wordpress anasayfasında kullanacağım
Title: Re: SSI Dersleri - Başlangıç Seviyesi
Post by: bilgikilavuzu on March 27, 2019, 12:47:21 PM
Elinize sağlık.