06
Aralık 2011
0 Yorum

Eskiden ipfilter ve squid programları için sıfırdan freeBSD kurup, üzerinde yapılandırma yoluna gidiyordum.

Daha sonraları m0n0wall uzantısı olan pfsense kullanmaya başladım. Ama hala bazen freebsd kurup, eski anılarımı yâd ettiğim olur.

Eğer freebsd cihazınızı ağ geçidi olarak kullanıyorsanız ve trafiği bu cihaz ile kontrol etmek istiyorsanız, özellikle projeleriniz 5651 kanunu ekseninde ise, Ağ içerisindeki kullanıcıları raporlamak ve takip etmek elzem bir durum alıyor.

Eğer dhcp sunucusunu yönetiyorsanız, cihazların mac adreslerine göre ip ataması yaptırabiliyorsunuz, peki ya ağ içerisindeki cihazların netbios isimlerini almak istersek nasıl bir yol izlememiz gerekiyor ?

nbtscan komutu ile ağ içerisindeki ip adresini bildiğimiz cihazların yada yine ağ içerisinde ip yapılandırmasını bildiğimiz tüm cihazların netbios adlarını listeletebiliriz.

ip adresi 192.168.2.33 olan cihazın netbios adını öğrenmek için

nbtscan -v 192.168.2.33

komutunu kullanabilirsiniz.

yada ip adresi 102.168.2. ile başlayan ve netmask değeri 24 olan (255.255.255.0)  cihazların netbios isimlerini listemek için ise,

nbtscan -r 192.168.2.0/24

komutunu kullanabilirsiniz.

nbtscan komutu sadece freebsd için değil *nix tabanlı tüm işletim sistemlerinde çalışmaktadır. Eğer ubuntu ile kullanmak isterseniz,

sudo apt-get install nbtscan

komutu ile sisteminize bu komutu ekleyebilirsiniz.

29
Kasım 2011
0 Yorum

Php her yeni sürümde eskilere dair, safraları atarak kendini yeni nesil teknolojilere hazırlıyor.
Php 5.4 ile gelen özellikler de buna güzel bir örnek.

işte öne çıkan bazı güzellikler.

  1. Sınıflar yüklendiği andan itibaren üyelerine hakim olabiliyorsunuz,
    class Sinifim
    {
        function __construct($isim)
        {
            $this->isim= $isim;
        }
    
        public function MerbaCanim()
        {
            return "Merba " . $this->isim . " Nassın ?";
        }
    }
    
    // Eskiden
    $sinifim = new Sinifim("Abdush");
    echo $sinifim->MerbaCanim();
    
    // Php 5.4 ile ise
    echo (new Sinifim("Abdush"))->MerbaCanim();
  2. Kısaltılmış Array dizilimi, Python’a yabancı olmayanların bildiği bir yöntem ile array ataması yapabiliyoruz,
    //Eskiden
    $a = array("1","2","3");
    print_r($a);
    //Php 5.4 ile bereber
    $a = [1, 2, 3];
    print_r($a);
  3. Array çıktısı veren fonksyionların elemanlarına direk atama sırasında ulaşabilme,
    function ArrayVerGulum(){
         return ["isim"=>"kerim","soyisim"=>"cabbar"];
    }
    //Eskiden
    $isimler = ArrayVerGulum();
    echo $isimler["isim"];
    //Php 5.4 ile birlikte
    echo ArrayVerGulum()["isim"];
            
  4. Çalıştırılabilinir değişken tanımı,
          function deneme(callable $func){
               $func();
          }
    
  5. Dolaylı yoldan fonksiyon çalıştırma, fonksiyon ve parametreleri bir dizi (array) içerisine aktarıp array nesnesini fonksyion olarak çalıştırma,

    $fonk = [new Sinifim("abdush"), 'MerbaCanim'];
    echo $fonk();
    

şimdilik bu 5 (beş) özellik yeterli, sonraki günler, diğer özellikleri de eklerim.

26
Kasım 2011
0 Yorum

Yaşlılarımız ansiklopedi gibidir derler her zaman, kimi zaman biz yaşlılarımıza saksı muamelesi yaparız.
Şarkının orjinal halini bu videodan izleyebilirsiniz.

sözü fazla uzatmadan mikrofonlarımızı erol bey’e çevirelim :)

Erol Büyükburç – Little Lucy / Akustikhane from Sinem Sem. on Vimeo.

23
Kasım 2011
0 Yorum

Nasıl bir başlık seçsem bilemedim :)

yapılmak istenen şu, windows explorer (araştır) ‘ı bir dosya seçili şekilde açtırmak.
Örnek olarak, bir download programı yazdınız, ve yüklemesi tamamlanan dosyaya “klasörde göster ” özelliği eklemek istiyorsunuz, kullanıcı hazırladığınız listeden bu dosyaya sağ tıklayıp klasörde göster dediğinide windows explorer bu dosya seçilmiş şekilde açılacak.

sorunumu doğru şekilde anlatabildiğimi varsayarak çözüm kısmına geçeyim;

klasik VB içerisinde 3. parti yazılımları çalıştırmak veya windows komut satırı için fonkisyonlar çalıştırmak için genelde shell komutunu kullanırdık.

vb.net ile belikte Process sınıfı shell komutunun görevini daha iyi şekilde devralmış durumda.

bizde process sınıfı ile explorer’ı çalıştırıp ardından istediğimiz dosyayı seçmesini rica edeceğiz. Rica edeceğiz çünkü muhatap olduğumuz sistem windows, sağı solu belli olmuyor :)

        Dim filePath As String = "c:\test.txt" 'C: dizini altında olması gereken test.txt dosyası
        Process.Start("explorer.exe", "/select," & filePath)

C dizini içerisinde bir adet test.txt dosyası oluşturup, dizini gösteren pencereleri kapatalım, hatta Visual Studio dışındaki tüm pencereleri mümkünse kapatalım ki programın sağlıklı çalışıp çalışmadığını daha rahat test edebilelim.

yukarıda verdiğim kodları çalıştırdığınız taktirde, windows explorer açılacak ve test.txt dosyası seçili gelecektir.

selametle.

22
Kasım 2011
0 Yorum

Mobil teknolojilerinin yükselişi almış başını gidiyor, Sitemize gelen ziyaretçilerin cep telefonu veya tablet ile mi geldiklerini tespit etmek için javascript yerine php kullanmak istersek,

$_SERVER evrensel değişkeni içerisinde bulunan HTTP_USER_AGENT bölümü yardımımıza koşacaktır.

<?php
echo $_SERVER['HTTP_USER_AGENT'];
?>

eğer bu kodun olduğu sayfaya bir android cihaz ile bağlanırsanız karşınıza

Mozilla/5.0 (Linux; U; Android 2.1-update1; en-in; HTC_Wildfire_A3333 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari

metni gelecektir.

Gördüğünüz gibi, HTTP_USER_AGENT  ile ziyaretçinin işletim sistemi ve tarayıcısına dair bir çok bilgiye ulaşabiliyoruz,

HTTP_USER_AGENT içeriğini strpos fonksiyonu ile aratarak, anahtar kelimelerini bildiğimiz tarayıcı ve sistemlere göre farklı sayfa yüklemesi yaptırabiliriz,

<?php
$iphone = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone");
$android = strpos($_SERVER['HTTP_USER_AGENT'],"Android");
$palmpre = strpos($_SERVER['HTTP_USER_AGENT'],"webOS");
$berry = strpos($_SERVER['HTTP_USER_AGENT'],"BlackBerry");
$ipod = strpos($_SERVER['HTTP_USER_AGENT'],"iPod");

if ($iphone || $android || $palmpre || $ipod || $berry == true)
{
header('Location: http://mobile.siteniz.com/');
}
?>

yukarıdaki örnekte bilinen herhangi bir mobil cihazdan sayfa yüklendiğinde otomatik olarak mobile.siteniz.com adresine header ile yönlendirilmesi anlatılıyor.

17
Kasım 2011
2 comments

En son eyvah eyvah birinci filme gitmiştim sinemaya, ondan önce’de transformers 2 ‘ye. Ondan öncesinde ise ayda en az 2 filme gitmeye gayret eden birisi idim.

Sinemayı sinema salonunda ve o atmosferde izleme taraftarı olan bir insanım, ve şuan bile bu şekilde düşünüyorum.

Sinemaya gitmek istemiyorum, sevdiğim bir filmi sinemada izlemekten korkuyorum çünkü,
Sinema salonuna gelen insanların, izlediğim  filme ve o filmi izleyen izleyicilere saygı duymaması beni üzüyor,

  1. İnsanların hayatları boyunca patlamış mısıra, cipse, Püskevit‘e ve bilimum muhtelif gıda ürününe sadece sinemada sahip olabileceği düşüncesi ise, bir filmin başından sonuna kadar gürültülü şekilde “hayvan gibi” gıda tüketmesi (bkz:gökgörmedik) beni hem sinir ediyor, hemde izlediğim filme konsantre olmamı engelliyor.
    Cips yiyebilirsiniz, patlamış mısır yiyebilirsiniz, kola içebilirsiniz, sakız bile çiğneyebilirsiniz ancak bunu insani normlar ve formlar içerisinde  gerçekleştirdiğinizde kimse rahatsız olmayacaktır, ancak elinizdeki cipsi, karda yürüyen sherk edası ile salyalarınız aka aka yerseniz işte o zaman ne tür bir mutasyona maruz kaldığınız konusunda insanlar kendi aralarında bahis bile oynayabilir.
  2. Film başladıktan sonra insanların sinema filmi sırasında sürekli konuşması, Her sahnenin spoilerini sesli olarak söylemesi, hele ki filmi daha önce izleyen birisinin daha önce izlememiş arkadaşları ile geldiğinde sesli şekilde “ben izledim olm” mantalitesindeki sahne önceleri “ba ba ba şimdi nolcak” haykırışları insanı izlediği filmden soğutmakla birlikte bu soğukluğu tekrar ısıtmak için o arkadaşın muhtelif akrabalarına küfür etmesine vesile oluyor.
  3. İnsanların, Lütfen Cep telefonlarınızı kapatın ibaresini Lütfen cep telefonlarınızı sessiz konumuna alın şeklinde algılaması: En son gittiğim sinemada bu olaydan ötürü tartışma yaşadım, film eyvah eyvah idi. sağ çaprazımda oturan arkadaş cep telefonunu ne kapatmış nede sessize almıştı, daha doğrusu arkadaş gelen arama sesini kapatmış ancak mesaj bildirim sesini kapatmamıştı. ve filmin ilk yarısı boyunca her 4 saniyede bir arkadaşa mesaj gelmekte ve o arkadaş o mesajları sürekli cevaplamaktaydı, hem sesli olarak hemde cep telefonunun ekran aydınlatmasının karanlıkta projeksiyon gibi parlamasından ötürü sahneye bir türlü odaklanamamdan ötürü filmin ilk yarısını “ağız tadı” ile izleyememiştim. Bu süreç boyunca bahsi geçen arkadaşı defalarca uyardım, hıhı tamam gibi geçiştirme laflarına maruz kalında, bende görevliye durumu ilettim, ancak görevlide insanlara uyarı yaptıklarını ancak uymayanlara karşı bir yaptırım uygulamadıklarını söyledi.Bunun üzerine salonu terk ederek filmi yarıda bıraktım. KitapYurdu.com‘da satışa çıktığı gün sipariş verip filmi evimde tamamladım.
  4. Önünüze oturan kişinin koltukta bir türlü rahat duramaması ve sürekli kafasını sağa sola çevirerek izlediğiniz sahnenin içine etmesi : Yeni yapılan sinema salonlarındaki koltuk dizilimi sayesinde önünüzde oturan insanın boyu pek önemli olmasa da, eğer önünüze oturan insanımsı canlı kendi enerjisini sürekli hareket ederek sağlıyorsa ve bu yaşam formu sizin önünüze oturmuş ise sürekli oynayan bir kafa izlemeniz kaçınılmaz olacaktır.
  5. Film başlamadan önce arka arkaya tren vagonu gibi yardıran reklam filmleri : Film izlemek için gittiğim bir mekana istemediğim halde bana zorla reklam izlettirilmesi, zaten biraz sonra izleyeceğim film içerisinde göresel, sanal ve subminal reklamın kralı yapılacak, filmden önce sürekli reklam vererek beynimin koruma kalkanlarını uyarmakta neyin nesidir ?
  6. Herkesin eşit para vererek geldiği bir ortamda evinizdeki rahatı sinemada bulamayacağınızın farkındayım hatta bırakın başkalarını kendisine bile saygısı olmayan insanlarla aynı ortamda olunan bir sistemde evinizdeki rahatı kimsenin size vaad etmediğinin de farkındayım ancak bu böyle olmamalı, ben tercihimi böyle ortamlar içerisinde bulunmama olarak kullanıyorum ama nereye kadar ?
Sırf saydığım bu sebeplerden ötürü hastası olduğum Behzat amirinim seni kalbime gömdüm isimli filmine dahi gidemedim gitmeye korktum, DVD’si çıksada izlesek modundayım.

10
Kasım 2011
0 Yorum

Yazımın içeriği başlığı kadar uzun olmayacak sanırım,

vb.net ile kullanılan nesnelerden birisi olan openfiledialog nesnesi windows ortamında dosya seçim dialog penceresini açmayı sağlar,  Bir seçim sonrası seçilen dosyanın tam yolunu filename özelliği ile alırız,

bana kalsa bu nesne içerisine filename yanısıa filepath gibi bir özellik ekler ve filename ‘da sadece dosya adını , diğerinde ise dosyanın disk yolunu döndürürdüm ama .net kodlayıcılarının yaptığına sual olunmaz.

eğer openfiledialog ile   seçilen dosyanın sadece  adını almak istiyorsanız

system.io kütühanesi içerisinde bulunan PATH nesnesi işinizi görecektir

çözüm olarak

GetFileName fonksiyonu işinizi görecektir.

dim sadecedosyaadi as string = system.io.path.GetFileName(OpenFileDialog.filename)
msgbox(sadecedosyaadi)

namaste.

09
Kasım 2011
0 Yorum

Php ile metinlerin sağında veya solunda bulunan boşlukları silmenin bir çok yolu vardır.

bunlardan bazıları :

trim() fonksiyonu :

Bu fonksiyon verilen metnin solunda ve sağında bulunan fazlalık boşlukları ve özel kodları temizler.

$metin = "    Selami Şahin     ";
echo "|".$metin."|\n";
$metin = trim($metin);
echo "|".$metin."|";

Örnekte verilen kodları çalıştırdığınızda göreceğiniz gibi, trim fonksiyonu sonrası boşluklar silinecektir.

trim fonksiyonu sadece boşlukları değil bununla beraber

  • “\t”, tab işareti ve boşlukları,
  • “\r”, enter için gerekli satır sonu işareti,
  • “\n”, yeni satır etiketi,
  • “\0″, Boş byte,
  • “\x0B”, dikey tab işareti.
ltrim() fonksiyonu :

Trim ile aynı işi yapar ancak verilen metnin sadece sol tarafını temizler.

$metin = "        selami şahin       ";
echo "|".$metin."|";
$metin = ltrim($metin);
echo "|".$metin."|";

örnek çalıştırıldığında sadece sol taraftaki boşlukların silindiği görülecektir.
rtrim() fonksiyonu :
trim ile aynı misyona sahip bir fonksiyondur ancak bu fonksiyonda ltrim’in tam tersi işlemi gerçekleştirmektedir.

$metin = "        selami şahin       ";
echo "|".$metin."|";
$metin = rtrim($metin);
echo "|".$metin."|";

örnek çalıştırıldığında sağ taraftaki boşlukların silindiği görülecektir.

 

08
Kasım 2011
1 comment

Php ile geliştirilen WordPress’in esen yapısı sayesinde hemen hemen her yerine kolayca müdahale edip, wordpress’i şekillendirmek mümkün.

Artık bir çok site yada internet projesi head tagları arasında meta tag ile yada <!– html comment etiketi ile sadece ilgili kişilerin görebileceği imzalar bırakmakta, hatta bu şekilde yapılan reklam yöntemleri bile var.

Bu yazımda wordpress’in Wp_head olayı ile head etiketleri içerisinde nasıl yazı yazdırabileceğimizi anlatmaya çalışacağım.

WordPress’e diler eklenti ile dilersek de tema klasöründe oluşturacağımız functions.php dosyası ile müdahale edebiliriz. ben ise tema klasörüne oluşturulmuş bir functions.php dosyası üzerinden anlatacağım,

tema klasörü içerisinde bulunan functions.php dosyası içerisine şu kodları ekliyorum

add_action("wp_head", "iki_head_bir_imza");
function iki_head_bir_imza() {
   if(is_singular()){
      echo "<meta name="copyright" content="© Me, 2011">";
   }
}

yukardaki kodları ekledikten sonra konu detayında copyright özellik değerli meta etiketi otomatik olarak eklenecektir.