Hoşgeldin, Ziyaretçi:

l Üye Ol
Tarih: 19-07-2018, Saat: 22:11
  • Tekno Destek Team'e Hoşgeldiniz
  • Teknoloji, Mobil, Oyun, İnternet, Haber Platforumu
  • Tekno Destek Team ( TDT )
Hoşgeldin, Ziyaretçi
Sitemizden yararlanabilmek için Kayıt olmalısınız.

Kullanıcı Adı/E-posta:
  

Şifreniz:
  





Forumda Ara

(Gelişmiş Arama)

Forum İstatistikleri
» Toplam Üyeler: 6,259
» Son Üye: hoyra32
» Toplam Konular: 753
» Toplam Yorumlar: 7,237

Detaylı İstatistikler

Kimler Çevrimiçi
Toplam: 17 kullanıcı aktif
» 0 Kayıtlı
» 17 Ziyaretçi

Son Aktiviteler
PUBG indir PUBG Full İndi...
Forum: Tüm Oyunlar - Full Oyun Download
Son Yorum: yasinkaya34
4 saat önce
» Yorumlar: 202
» Okunma: 11,730
Bilgisayar Toplama İnceli...
Forum: Donanım Tavsiyesi
Son Yorum: kara_kutu
Bugün, Saat: 00:21
» Yorumlar: 0
» Okunma: 40
Bilgisayar Toplama İnceli...
Forum: Donanım Tavsiyesi
Son Yorum: kara_kutu
Bugün, Saat: 00:10
» Yorumlar: 0
» Okunma: 63
200 TL'ye Her Oyunu Oynat...
Forum: Donanım Tavsiyesi
Son Yorum: kara_kutu
Dün, Saat: 23:51
» Yorumlar: 0
» Okunma: 69
Metin 2 Mobil İndir Full ...
Forum: Google Android
Son Yorum: maddoctorfx
Dün, Saat: 22:30
» Yorumlar: 139
» Okunma: 8,416
595~675 ₺ 'ye PC Toplama
Forum: Donanım Tavsiyesi
Son Yorum: kara_kutu
Dün, Saat: 22:26
» Yorumlar: 0
» Okunma: 68
Python Face Identifier Ya...
Forum: Diğer Programlama Dilleri ve Databaseler
Son Yorum: kara_kutu
Dün, Saat: 21:55
» Yorumlar: 0
» Okunma: 69
RomerG Mekanik Anahtarlı ...
Forum: Donanım
Son Yorum: kara_kutu
Dün, Saat: 21:29
» Yorumlar: 0
» Okunma: 71
[MOD] Username or E-Mail ...
Forum: PhpBB
Son Yorum: kara_kutu
Dün, Saat: 17:51
» Yorumlar: 0
» Okunma: 52
[MOD] BBcode Quick time P...
Forum: PhpBB
Son Yorum: kara_kutu
Dün, Saat: 17:49
» Yorumlar: 0
» Okunma: 53

 
  Bilgisayar Toplama İncelikleri
Yazar: kara_kutu - Bugün, Saat: 00:21 - Forum: Donanım Tavsiyesi - Yorum Yok

Bilgisayar Toplama İncelikleri 

Bugün sizlere bilgisayar toplamanın inceliklerini ve nelere dikkat edilmesi gerektiğini anlatacağım.
Öncelikle şöyle başlayalım Bütçe belirlemeden önce de ne alanda kullanacağımız önemlidir. Bütçemizi belirledikten sonrası fiyat araştırmaları yapmak.

Her zaman güncellik ve yenilik ön planda tutulmalıdır, mesela 6. nesil işlemci ile 7. nesil işlemci fiyatları aşağı yukarı aynı ise 7.nesil tercih etmeyi ihmal etmeyin.

 İŞLEMCİ SEÇİMİ 
 iş veya oyun yada gündelik kullanım için alan tercihinizi belirledikten sonra seçmeniz gereken işlemciyi belirleyin.

intel işlemciler için Overclock desteği ibaresi K harfidir, Overclock destekleyen intel işlemciler içlerinde fan bulundurmazlar.
AMD işlemciler için Overclock desteği ibaresi X harfidir. Kutusunda fan bulundururlar.




Fotoğraf'da tercih edilen işlemcileri genelleme olarak baz aldım.

iş için kullanılan işlemciler genellikle i7 2011vX - 2066 soket işlemcilerdir. Fotoğrafta eklediğim gibi geniş bellek ve çok çekirdeklidirler.

Gündelik ve oyun için ideal işlemciler ise genellikle i5 tercih ediliyor.

Sadece oyun amaçlı kullanılacak bir bilgisayar için i5 yeterlidir. (Tabiki de i7 de tercih edilebilir herşey bütçeye bağlı )
BELLEK (RAM) SEÇİMİ 

Belleklerde ise dikkat etmemiz ve tercih etmemiz gereken iki önemli değer vardır.

Mhz ve CL değeridir.

Mhz değer bellek hızını belirler, CL değeri ise gecikme değeridir.

Mhz değeri ne kadar yüksekse o kadar iyidir, CL değeri ne kadar düşükse o kadar iyidir.

Örnek olarak 8GB 2400Mhz CL16 bir bellek ile 8GB 2400Mhz CL14 arasında tercih yapmamız gerekiyorsa CL14 değere sahip olan rami-belleği tercih etmemiz daha iyi olur.

Anakartımızda genellikle 4 RAM slotu bulunur. 4 ram slotumuz varken gidip single (tek) kanallı bir ram almamız performansı biraz düşürebilir, onun yerine dual (çift) kanallı ram almamız daha iyi olur.

Örneğin tek kanal 16gb ram tercih edeceğimize, iki kanal 16 gb ram tercih edersek performansımızda artış görebiliriz. (Kesinlikle tek kanallı ram alınmaz öyle yapmayın demiyorum, tercih edilebilir diyorum.)

ANAKART SEÇİMİ 
Kullanacağımız alan tercihine göre, işlemcimizi seçtikten sonra yapılmalıdır.
ATX, Micro-ATX, Mini-ITX, Nano-ITX ve Pico-ITX olarak boyutları vardır, seçmek istediğiniz bilgisayar kasasına göre de anakartınızda boyut seçebilirsiniz.
K ibareli bir işlemci seçtiğimizde Z yonga setli bir anakart seçmemiz gerekir.

RAM bellek slotu çok olan tercih edilmelidir.
PCI Express ekran kartı yuvası x16 hızında olmasına dikkat edilmelidir.
Ses kartı içerip içermediği.
Güncel yonga setine sahip olması.
Güncel bios sistemine sahip olması.
EKRAN KARTI SEÇİMİ 
Ekran kartı seçimi tamamen bütçenize kalmış bir donanım parçasıdır.
Oyun için tercih edilen en az 1050 olmalıdır.

DEPOLAMA (SSD VE HDD ) SEÇİMİ 
SolidStateDisk SSD seçimi bilgisayarınızı dehşet şekilde performans artışı yaşatır. HDD sabit disk'e oyunlarınızı ve gerekli belge, dosya depolayabilirsiniz. İşletim sisteminizi ve gerekli programlarınızı ise SSD'yi kurmalısınız.
SSD olarak 240 gb'lık, HDD olarak 1TB tercih edebilirsiniz. Bütçeye bağlı olarak ikisinde birini seçmeniz gerekirse kesinlikle SSD seçmenizi tavsiye ederim.

GÜÇ KAYNAĞI SEÇİMİ 
Güç kaynağı seçerken dikkat edilmesi gerekenler ise W değeri ve sertifikasıdır.
Sertifika bronze, silver , gold ,platinum, titanum diye sıralanır. En iyisi titanum'dur.


Fiyatlarda soldan sağa doğru gittikçe artar.
Tercih edilmesi gereken en az bronze sertifikalı olması gerekir, sertifikasız güç kaynağı kullanmamaya lütfen özen gösterelim.

KASA SEÇİMİ 
Kasa seçimi kasanın yapılmış olduğu malzeme, hava akışı, içeriği, ve görünüşüne göre seçilmelidir.
Kişinin kendi tercihine bağlıdır.

Bu konuda profesyonelim demiyorum ama iyi sayılırım.

Yardımcı olduysam ne mutlu bana, iyi forumlar.

Bu konuyu yazdır

  Bilgisayar Toplama İncelikleri
Yazar: kara_kutu - Bugün, Saat: 00:10 - Forum: Donanım Tavsiyesi - Yorum Yok

Bilgisayar Toplama İncelikleri 

Bugün sizlere bilgisayar toplamanın inceliklerini ve nelere dikkat edilmesi gerektiğini anlatacağım.
Öncelikle şöyle başlayalım Bütçe belirlemeden önce de ne alanda kullanacağımız önemlidir. Bütçemizi belirledikten sonrası fiyat araştırmaları yapmak.

Her zaman güncellik ve yenilik ön planda tutulmalıdır, mesela 6. nesil işlemci ile 7. nesil işlemci fiyatları aşağı yukarı aynı ise 7.nesil tercih etmeyi ihmal etmeyin.

 İŞLEMCİ SEÇİMİ 
 iş veya oyun yada gündelik kullanım için alan tercihinizi belirledikten sonra seçmeniz gereken işlemciyi belirleyin.

intel işlemciler için Overclock desteği ibaresi K harfidir, Overclock destekleyen intel işlemciler içlerinde fan bulundurmazlar.
AMD işlemciler için Overclock desteği ibaresi X harfidir. Kutusunda fan bulundururlar.




Fotoğraf'da tercih edilen işlemcileri genelleme olarak baz aldım.

iş için kullanılan işlemciler genellikle i7 2011vX - 2066 soket işlemcilerdir. Fotoğrafta eklediğim gibi geniş bellek ve çok çekirdeklidirler.

Gündelik ve oyun için ideal işlemciler ise genellikle i5 tercih ediliyor.

Sadece oyun amaçlı kullanılacak bir bilgisayar için i5 yeterlidir. (Tabiki de i7 de tercih edilebilir herşey bütçeye bağlı )
BELLEK (RAM) SEÇİMİ 

Belleklerde ise dikkat etmemiz ve tercih etmemiz gereken iki önemli değer vardır.

Mhz ve CL değeridir.

Mhz değer bellek hızını belirler, CL değeri ise gecikme değeridir.

Mhz değeri ne kadar yüksekse o kadar iyidir, CL değeri ne kadar düşükse o kadar iyidir.

Örnek olarak 8GB 2400Mhz CL16 bir bellek ile 8GB 2400Mhz CL14 arasında tercih yapmamız gerekiyorsa CL14 değere sahip olan rami-belleği tercih etmemiz daha iyi olur.

Anakartımızda genellikle 4 RAM slotu bulunur. 4 ram slotumuz varken gidip single (tek) kanallı bir ram almamız performansı biraz düşürebilir, onun yerine dual (çift) kanallı ram almamız daha iyi olur.

Örneğin tek kanal 16gb ram tercih edeceğimize, iki kanal 16 gb ram tercih edersek performansımızda artış görebiliriz. (Kesinlikle tek kanallı ram alınmaz öyle yapmayın demiyorum, tercih edilebilir diyorum.)

ANAKART SEÇİMİ 
Kullanacağımız alan tercihine göre, işlemcimizi seçtikten sonra yapılmalıdır.
ATX, Micro-ATX, Mini-ITX, Nano-ITX ve Pico-ITX olarak boyutları vardır, seçmek istediğiniz bilgisayar kasasına göre de anakartınızda boyut seçebilirsiniz.
K ibareli bir işlemci seçtiğimizde Z yonga setli bir anakart seçmemiz gerekir.

RAM bellek slotu çok olan tercih edilmelidir.
PCI Express ekran kartı yuvası x16 hızında olmasına dikkat edilmelidir.
Ses kartı içerip içermediği.
Güncel yonga setine sahip olması.
Güncel bios sistemine sahip olması.
EKRAN KARTI SEÇİMİ 
Ekran kartı seçimi tamamen bütçenize kalmış bir donanım parçasıdır.
Oyun için tercih edilen en az 1050 olmalıdır.

DEPOLAMA (SSD VE HDD ) SEÇİMİ 
SolidStateDisk SSD seçimi bilgisayarınızı dehşet şekilde performans artışı yaşatır. HDD sabit disk'e oyunlarınızı ve gerekli belge, dosya depolayabilirsiniz. İşletim sisteminizi ve gerekli programlarınızı ise SSD'yi kurmalısınız.
SSD olarak 240 gb'lık, HDD olarak 1TB tercih edebilirsiniz. Bütçeye bağlı olarak ikisinde birini seçmeniz gerekirse kesinlikle SSD seçmenizi tavsiye ederim.

GÜÇ KAYNAĞI SEÇİMİ 
Güç kaynağı seçerken dikkat edilmesi gerekenler ise W değeri ve sertifikasıdır.
Sertifika bronze, silver , gold ,platinum, titanum diye sıralanır. En iyisi titanum'dur.


Fiyatlarda soldan sağa doğru gittikçe artar.
Tercih edilmesi gereken en az bronze sertifikalı olması gerekir, sertifikasız güç kaynağı kullanmamaya lütfen özen gösterelim.

KASA SEÇİMİ 
Kasa seçimi kasanın yapılmış olduğu malzeme, hava akışı, içeriği, ve görünüşüne göre seçilmelidir.
Kişinin kendi tercihine bağlıdır.

Bu konuda profesyonelim demiyorum ama iyi sayılırım.

Yardımcı olduysam ne mutlu bana, iyi forumlar.



Ek Dosyalar Ekran Görüntüleri
       
Bu konuyu yazdır

  200 TL'ye Her Oyunu Oynatan Ekran Kartı
Yazar: kara_kutu - Dün, Saat: 23:51 - Forum: Donanım Tavsiyesi - Yorum Yok

200 TL'ye Her Oyunu Oynatan Ekran Kartı 

Selamlar.
Bildiğiniz gibi Dolar aldı başını gidiyor.Bu Dolar kurunda PC toplamak imkansız.
Bizim de yapabileceğimiz tek şey eski sistemleri upgrade etmek.
Tabi konu yine Dolara geliyor ve ekran kartı almak zorlaşıyor.Yabancılar kendi paralarından 700 birim döküp güncel bir sistem alabilirken biz bir ekran kartı alamıyoruz.


Buna çözüm olarak sadece 200TL ile her oyunu oynayabileceğiniz bir ekran kartı tanıtacağım.

Üstelik bu ekran kartı Nvidia'nın eski kartlarından değil ! Güncel ve Nvidia GeForce GT 1030 ekran kartından bir tık daha iyi bir ekran kartı.




Yalnız şuna dikkat etmemiz gerek; ekran kartı ikinci el.Ama 200TL'ye Türkiye'de bu ekran kartını ikinci el bulmanız imkansız.Hatta alıp burda satsanız yine kar etmiş olacaksınız.

Ekran kartımızın adı Nvidia GeForce GTX 750 (1GB).
Marka olarak ASUS'u tercih ettim.Bu ekran kartını aldığınızda satıcıların da dediği gibi çizikler kaçınılmaz.Ama bir arızası olursa satıcı para iadesi yapıyor.

Ekran kartı tahmin edeceğiniz gibi Aliexpress'de satılıyor ve geri bildirimleri çok olumlu.İsterseniz bakabilirsiniz.

Bu Ekran Kartı İle Hangi Oyunlar Oynanır ?
  • Grand Theft Auto V
    PUBG
    Fortnite
    CS:GO
    Super Mario Bros. 
    Rainbow Six Siege
    DotA 2
    League of Legends
    ve diğer birçok eSpor oyunu...


Türkiye vs. Çin



Çin'den ikinci el olarak aldığınızda 200TL gibi bir fiyat ödüyorsunuz ve kapınıza 20-30 gün gibi bir sürede teslim ediliyor.
Türkiye'den sıfır olarak aldığınızda 750TL gibi bir fiyat ödüyorsunuz ve bir zahmet kapınıza 1-2 günde motokurye varsa 2 saat içinde teslim ediliyor.

Ve 750TL ikinci el 1060 3GB parası.

Riskleri
* Satıcıyı iyi seçmelisiniz.Ben en ucuzunu koyacağım.Kartta mining yapıldıysa ömrü kısa olacaktır.5 sene dayanacaksa 2-3 sene dayanır.
* Şansınıza bozuk ürün gelirse gelmesini boşuna beklemiş olacaksınız.
* Klasik AliExpress Riskleri

Benim bu ürüne puanım "eve haciz gelse alırım".

Size ürünü genel olarak öneriyorum.



Ek Dosyalar Ekran Görüntüleri
       
Bu konuyu yazdır

  595~675 ₺ 'ye PC Toplama
Yazar: kara_kutu - Dün, Saat: 22:26 - Forum: Donanım Tavsiyesi - Yorum Yok

595~675 ₺ 'ye PC Toplama

Merhaba arkadaşlar sizlere bir çok yerde olan güzel 2.el bilgisayartopladım. Belki işinize yarar diye düşünüyorum.

Bu arada içinde Kasa eklemedim. Bunlar elinizde varsa yoksa bile bilgisayarcıdan uygun falan temin edebilirsiniz. Bu arada işlemci satın aldığınız yer size stock bir fan vermeyecektir. Bu yüzden stock bir soğutucu yada iyi bir soğutucu takmanızı öneriyorum.. Bu arada eğer HDD ( Harddisk ) varsa listeden onu çıkartabilirsiniz.



Özellikler;

Intel Xeon X5460 İşlemcisi seçtim. Hem güçlü hemde ucuz bir işlemci. Sizi yarı yolda kolay kolay bırakmayacaktır.

Asus GTX 750 ekran kartını seçtim. Ucuz ve güçlü bir ekran kartıdır. Tavsiye ederim.

Asus P5G41T-M LX V2 anakart size yeterli olacaktır.

CORSAIR 2 GB DDR3 1333 Mhz 2 tane takabilirsiniz. Bu benim önerim. Tabi eğer RAM almak isterseniz bilgisayarcıdan 2. el 1333 Mhz bir almanızı öneririm. Hem daha ucuza işi kapatabilirsiniz. Altta belirttiğim fiyat internet üzerinden 2GB*2 şeklinde fiyattır.



Bunlar özelliklerimizdi şimdi fiyatlara geçelim.



Fiyat Listesi;

Intel Xeon X5460 80 ₺

Asus GTX 750 219 ₺

Ram ( Markaya Göre Değişiklik Gösterebilir ) 70~80 ₺ Arası değişebilir.

HDD ( Harddisk ) 500 GB bir HDD ortalama 80~150 ₺ arası değişkenlik gösterebilir.

Asus P5G41T-M LX V2 146 ₺

Toplam Fiyat : 595~675 Arası değişiklik gösterebilir. 




Buraya kadar her şey tamam. Ortalama bu fiyatlara kasa hariç bir bilgisayar toplanabilir. Tabi monitör, klavye ve fare gibi ekipmanlar bunun dışında. Bu ürünleri alabilecek olduğunuz yerlerin linkerini aşağıya bırakıyorum.



Intel Xeon X5460: TIKLA GİT

Asus GTX 750: TIKLA GİT

RAM: TIKLA GİT

HDD: TIKLA GİT

ANAKART: TIKLA GİT

Not: Parçaları satın alımdan önce kontrol edin..

Size güzel bir şey daha sunuyorum. Bu aparat ile de bilgisayarınıza Sata3 desteği sağlayabilirsiniz. Hatta SSD bile takabilirsiniz. Bu aparatı taktıktan sonra SATA3 çıkışlarına SSD bağlayarak kullanabilirsiniz.



PCi Express Sata3 :  TIKLA GİT


Bu cihaz ile SSD takabilirsiniz. Ne kadar performans verdiği bu resimde mevcut. SSD taktığınız zaman bu değerleri görebiliyorsunuz.
Bu değerler ile güzel bir performans alabilirsiniz. Bu sadeye güzel bir şekilde bilgisayarınızı canlandırabilirsiniz. Windows bu SSD ye kurarak daha akışkan bir bilgisayara sahip olabilirsiniz.





Ek Dosyalar Ekran Görüntüleri
   
Bu konuyu yazdır

  Python Face Identifier Yapımı
Yazar: kara_kutu - Dün, Saat: 21:55 - Forum: Diğer Programlama Dilleri ve Databaseler - Yorum Yok

Python Face Identifier Yapımı 




NumPy, numerical python, oldukça büyük bir bilimsel işlem kütüphanesidir. Mantıktan cebire, dizilerden istatiki işlemlere kadar birçok işlemi yapmanızı sağlar.
opencv:
OpenCV bildiğiniz üzere görselleri işlememize yarayan oldukça güçlü bir kütüphane
pickle:
Oluşturacağımız çıktıyı dosyaya yazdırmamızı sağlayan bir araç.

Kütüphanelerimizi import edelim

Kod:
import numpy as np
import cv2
import pickle

Şimdi bir sınıf oluşturup kodlamaya geçmeden önce yapacaklarımdan bahsedeyim; Öncelikle kameradan bir video kaydı alacağım, sonra bu video kaydındaki yüzleri tanımlayacağım. Sonra kendi yüzümü ve bir takım ünlülerin yüzünü train edip bir dataset oluşturacağım, hemen ardından video kaydındaki yüzün oradaki herhangi bir yüzle eşleşip eşleşmediğini kontrol edeceğim. Eşleşme varsa bu yüzün sahibinin adını ekrana yazdıracağız.

Buraya kadar her şey tamam ise sınıfımızı oluşturup kodlamaya başlayalım.

Kod:
class faceID(object):
    def __init__(self):
    self.cap = cv2.VideoCapture(0)
    
    def video_capture(self):
        while 1:
            ret, frame = self.cap.read()
            cv2.imshow('video', frame)
            if cv2.waitKey(20) & 0xFF == ord('q'):
                break
        self.cap.release()
        cv2.destroyAllWindows()


Bu sınıfı çağırdığımızda videokaydının başladığını göreceğiz. Şimdi videodaki yüzleri tespit edelim, bunun için opencv nin bize sunduğu classifier'ları kullanacağız. Kameraya direkt bakacağımdan "haarcascade_frontalface_alt2.xml" benim için uygun bir tercih olacaktır. Üstteki sınıfımıza dönelim ve bazı değişiklikler ekleyelim.


Kod:
self.face_cascade = cv2.CascadeClassifier('cascades\\data\\haarcascade_frontalface_alt2.xml')


Bu parçacığı init kısmına ekledikten sonra alttaki fonksiyonuma geçiyorum. Şimdi daha kolay okuyabilmek için video kaydını siyah-beyaza dönüştüreceğim, ardından tespit ettiğim yüzün koordinatlarını bulup etrafına bir kare çizeceğim. Tüm bunları yaparken bana openCV kütüphanesi yardımcı olacak.

Kod:
self.gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)#siyah beyaza çevirir.
self.faces= self.face_cascade.detectMultiScale(self.gray, scaleFactor=1.5, minNeighbors=5)#yüzleri tespit eder
for (x,y,w,h) in self.faces:#yüzlerin koordinatlarını alıyorum
                
    self.roi_gray = self.gray[y:y+h, x:w+w]
    color=(95,234,249)
    stroke=2
    end_cord_x = x + w
    end_cord_y = y + h
    cv2.rectangle(frame, (x, y), (end_cord_x, end_cord_y), color, stroke)#bu koordinatlara bir kare çiziyorum

Bu değişikliklerden sonra yüzümüzün etrafında bir kare oluşacaktır, mantıken ne yaptığımız zaten üst koddaki yorum satırlarında yazılı.

Şimdi, bu yüzü diğer yüzlerden ayırmaya çalışacağım. Bu yüzden birkaç ünlünün fotoğrafını kullanacağım.
mikhail tal:





Bonie Tyler



Atatürk





Tüm bu üstteki isimlere dair 5 er tane fotoğraf indirdikten sonra "images" adı altında bir klasör açıyorum ve bu klasörün içine hepsinin isminde 5 klasör daha açıyorum. Her klasöre ilgili ünlüye ait 5 fotoğraf atıyorum ve klasör yapımız şu şekilde oluyor.

Kod:
-images
|
|
|
|___>rock
    |
    |
    |__>fotoğraflar
|
|
|
|___>mikhail tal
        |
        |
        |___>fotoğraflar
|
|
|
|___>Atatürk
.
.
.


Şeklinde bir dosya yapımız olacaktır. Şimdi bu dosya yapısından fotoğrafları ve isimleri işleyelim. Yeni bir script yazacağım bu işlem için, tekrardan en başta kütüphanelerimizi içe aktaralım.

Kod:
import os


Şimdilik bu yeterli, lazım oldukça ekleme yapacağım. Bir sınıf oluşturalım ve kodumuzu yazmaya başlayalım.

Kod:
import os
class train_image(object):
    def __init__(self):
        self.base_directory = os.path.dirname(os.path.abspath(__file__))#dizine ilerle
        self.image_directory = os.path.join(self.base_directory, "images")
    def train(self):
        for root, dirs, files in os.walk(self.image_directory, "images"):#dosyadaki diğer dosyaları bulalım. Arka planda bu;
            #C:\Users\Hackno\Desktop\eye_final>py -3 konu_.py
            #C:\Users\Hackno\Desktop\eye_final\images ['atatürk', 'mikhail tal',...] []
            #C:\Users\Hackno\Desktop\eye_final\images\atatürk [] ['a..]
            #şeklinde bir çıktı döndürür            
            for self.file in files:
                if self.file.endswith("png") or self.file.endswith("jpg"):#png ilee jpg ile biten, yani resim dosyalarını bulalım
                    self.path = os.path.join(root, self.file)#
                    self.label = os.path.basename(os.path.dirname(self.path)).replace(" ", "-").lower()
                    print(self.path, self.label)#Fotoğraf adını ve o fotoğrafın bulunduğu klasörü (yani şahsın ismini) yazdırdım.
train = train_image()#sınıfı çağırıyoruz...
train.train()


Kodu çalıştırdığımıda aldığımız çıktı bu;

Kod:
C:\Users\Hackno\Desktop\eye_final\images\michael tal\Mikhail-Tal-300x168.jpg mikha
il-tal
C:\Users\Hackno\Desktop\eye_final\images\michael tal\tal1.png mikhail-tal
C:\Users\Hackno\Desktop\eye_final\images\rock\WHDQ-512469260.png rock
C:\Users\Hackno\Desktop\eye_final\images\rock\WHDQ-512469283.jpg rock
C:\Users\Hackno\Desktop\eye_final\images\rock\WHDQ-512469299.jpg rock
C:\Users\Hackno\Desktop\eye_final\images\rock\WHDQ-512469316.jpg rock
C:\Users\Hackno\Desktop\eye_final\images\rock\WHDQ-512469340.png rock
C:\Users\Hackno\Desktop\eye_final\images\Hackno\my-image.png utku
C:\Users\Hackno\Desktop\eye_final\images\Hackno\0xhacknology.png utku
C:\Users\Hackno\Desktop\eye_final\images\Hackno\0xhacknology.png utku
C:\Users\Hackno\Desktop\eye_final\images\Hackno\0xhacknology.png utku
C:\Users\Hackno\Desktop\eye_final\images\Hackno\0xhacknology.png utku

Şimdi bu yüzleri işlememiz gerekiyor. Neyse ki ekstra bir machine learning kütüphanesi kullanmama gerek yok, şimdiki kütüphaneler işe yarayacaktır. init fonksiyonuma son kez dönüyorum ve editliyorum

Kod:
class train_image(object):
    def __init__(self, c_path): #c_path = classifier path
        self.base_directory = os.path.dirname(os.path.abspath(__file__))
        self.image_directory = os.path.join(self.image_directory, "images")

        self.face_cascade = cv2.CascadeClassifier(c_path)
        self.recognizer = cv2.face.LBPHFaceRecognizer_create()
        self.current_id = 0
        self.label_ids = {}
        self.y_labels = []
        self.x_train = []


Gerekli değişkenlerimizi tanımladık, zamanı geldikçe tek tek ne işe yaradığından bahsedeceğim. Öncelikle dosya adlarını isim olarak kullanacağımızdan bahsetmiştik, bir nevi bu klasör adları bizim "label" ımız olacak. current_id isimli değişkenimiz ise onun kaçıncı label olduğunu söyleyecek. 


Kod:
Kod:
if not self.label in label_ids:
                       self.label_ids[self.label] = self.current_id
                       self.current_id += 1
                   self.id_ = self.label_ids[self.label]

Bu kod işimize yarayacaktır. Label'ları belirlediysek elimizdeki yüzleri birer array'e dönüştürüp bunu uygun bir dataset olarak kaydetmeliyiz. array işlemlerini "numpy" adlı kütüphane ile yapacağımızı zaten söylemiştim. Basitçe elimizdeki resmi "L" yada "RGB" moda çevirip diğer resimlerle olan benzerliğini kıyaslayacağım. Bunu da yüzdeye vuracağım, eğer beni ikna edecekte bir yüzdeye sahipse bunu label olarak yazdıracağım. Hemen ardından bunu kaydedeceğim ki ilk scriptim'de bu dataseti kullanabileyim.


Kod:
self.pimage = Image.open(self.path).convert("L")
                   self.image_array = np.array(self.pimage, "uint8")
                   
                   self.faces= self.face_cascade.detectMultiScale(self.image_array, scaleFactor=1.5, minNeighbors=5)
                   for (x, y, w, h) in self.faces:
                       self.roi = image_array[y:y+h, x:x+w]
                       self.x_train.append(self.roi)
                       self.y_labels.append(self.id_)
   def pickle(self):
       self.train_it()
       with open("labels.pickle", "wb") as f:
           pickle.dump(self.label_ids, f)
        self.recognizer.train(self.x_train, np.array(self.y_labels))
        self.recognizer.save("trainner.yml")


Gördüğünüz üzere resmi rgb olarak array'e dönüştürdüm. Pickle kütüphanesini kullanarak bu dataset'i kaydettim.Bu sınıfı bir defa çalıştırdıktan sonra ilk
Şimdi asıl kodumuza dönelim.
Kaydettiğim trainer'ı asıl scriptte okuyacağım. Ardından üstte bahsettiğim gibi beni ikna edecek bir yüzdeyse ise bu label'ı ekranda yazdıracağım. Daha teknik olmayan bir dille anlatırsam, kameranın gördüğü kişiyi tanıyorsanız yanında ismi yazacak. İlk script'teki init fonksiyonumu tekrar editlemem gerekiyor.

Kod:
class faceID(object):
    def __init__(self):
        self.cap = cv2.VideoCapture(0)
        self.face_cascade = cv2.CascadeClassifier('cascades\\data\\haarcascade_frontalface_alt2.xml')
        self.recognizer = cv2.face.LBPHFaceRecognizer_create()
        self.recognizer.read("trainner.yml")
    def get_label_names(self):
        self.labels = {"person_name": 1}
        with open("labels.pickle", "rb") as f:
            self.labels = pickle.load(f)
            self.labels = {v: k for k,v in self.labels.items()}

Gördüğünüz gibi hem datasetimi hem de label'ları çektim diğer scriptten. Elimde zaten yüzü işaretleyen kod vardı, geldik sonuna...

Kod:
for (x,y,w,h) in self.faces:
                
                self.roi_gray = self.gray[y:y+h, x:w+w]#siyah beyaz versiyon
                roi_color = frame[y:y+h, x:x+w]#renkli versiyon
                id_, conf = self.recognizer.predict(self.roi_gray)#yüzdeye vuracak
                if conf >= 4 and  conf <= 85:#yüzde 4 ten büyük 85 ten küçük ise
            
                    font = cv2.FONT_HERSHEY_COMPLEX#yazının fontunu seçtim
                    name = self.labels[id_]#id_ = isim
                    color = ()
                    stroke = 2
                    cv2.putText(frame, name, (x,y), font, 1, color, stroke, cv2.LINE_AA)#Yüzün yanına ismi yazıyorum
                else:
                    pass

Bu kod parçacığını ana fonksiyonuma yazıyorum, ve işlem tamam. Tüm kod şu şekilde oldu

Kod:
face_identifier.py:
import numpy as np
import cv2
import pickle
class faceID(object):
    def __init__(self):
        self.cap = cv2.VideoCapture(0)
        self.face_cascade = cv2.CascadeClassifier('cascades\\data\\haarcascade_frontalface_alt2.xml')
        self.recognizer = cv2.face.LBPHFaceRecognizer_create()
        self.recognizer.read("trainner.yml")
    def get_label_names(self):
        self.labels = {"person_name": 1}
        with open("labels.pickle", "rb") as f:
            self.labels = pickle.load(f)
            self.labels = {v: k for k,v in self.labels.items()}
    def video_capture(self):
        self.get_label_names()
        while 1:
            ret, frame = self.cap.read()
            self.gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
            self.faces= self.face_cascade.detectMultiScale(self.gray, scaleFactor=1.5, minNeighbors=5)
            for (x,y,w,h) in self.faces:
                
                self.roi_gray = self.gray[y:y+h, x:w+w]
                roi_color = frame[y:y+h, x:x+w]
                id_, conf = self.recognizer.predict(self.roi_gray)
                if conf >= 4 and  conf <= 85:
            
                    font = cv2.FONT_HERSHEY_COMPLEX
                    name = self.labels[id_]
                    color = ()
                    stroke = 2
                    cv2.putText(frame, name, (x,y), font, 1, color, stroke, cv2.LINE_AA)
                else:
                    pass
                self.img_item = 'my-image.png'
                cv2.imwrite(self.img_item, self.roi_gray)
                color=(95,234,249)
                stroke=2
                end_cord_x = x + w
                end_cord_y = y + h
                cv2.rectangle(frame, (x, y), (end_cord_x, end_cord_y), color, stroke)
            cv2.imshow('video_rec', frame)

            if cv2.waitKey(20) & 0xFF == ord('q'):
                break
        cap.release()
        cv2.destroyAllWindows()
ID = faceID()
ID.video_capture()


face_trainer.py:


Kod:
import cv2
import os
import numpy as np
from PIL import Image
import pickle
import sys
class trainer(object):
    def __init__(self, c_path): #c_path = classifier path
        self.BASE_DIR = os.path.dirname(os.path.abspath(__file__))
        self.image_dir = os.path.join(self.BASE_DIR, "images")

        self.face_cascade = cv2.CascadeClassifier(c_path)
        self.recognizer = cv2.face.LBPHFaceRecognizer_create()
        self.current_id = 0
        self.label_ids = {}
        self.y_labels = []
        self.x_train = []
    def train_it(self):
        for root, dirs, files in os.walk(self.image_dir, "images"):
   
           for self.file in files:
               if self.file.endswith("png") or file.endswith("jpg"):
                   self.path = os.path.join(root, file)
                   self.label = os.path.basename(os.path.dirname(self.path)).replace(" ", "-").lower()
                   
                   if not self.label in label_ids:
                       self.label_ids[self.label] = self.current_id
                       self.current_id += 1
                   self.id_ = self.label_ids[self.label]
           
                   self.pimage = Image.open(self.path).convert("L")
                   self.image_array = np.array(self.pimage, "uint8")
                   
                   self.faces= self.face_cascade.detectMultiScale(self.image_array, scaleFactor=1.5, minNeighbors=5)
                   for (x, y, w, h) in self.faces:
                       self.roi = image_array[y:y+h, x:x+w]
                       self.x_train.append(self.roi)
                       self.y_labels.append(self.id_)
   def pickle(self):
       self.train_it()
       with open("labels.pickle", "wb") as f:
           pickle.dump(self.label_ids, f)
        self.recognizer.train(self.x_train, np.array(self.y_labels))
        self.recognizer.save("trainner.yml")



Ek Dosyalar Ekran Görüntüleri
               
Bu konuyu yazdır

  RomerG Mekanik Anahtarlı Logitech G413 CARBON'u İnceledik
Yazar: kara_kutu - Dün, Saat: 21:29 - Forum: Donanım - Yorum Yok

RomerG Mekanik Anahtarlı Logitech G413 CARBON'u İnceledik 



Logitech her zaman olduğu gibi yine siyah renkte ince bir kutu ile geliyor. Kutu üzerinde gerekli detay ve özellikleride yine yazılmış elbette.

G413 Carbon klavyesinin kutusunu açtıktan sonra içinden 12 adet yedek tuş çıkıyor ve tuşları deiştirebilmeniz için aparatada yer yerilmiş.
 
Toplamda 104 tuşlu yapıda olan klavyenin ingilizce ve Türkçe tuş dizilimli versiyonları bulunuyor. 
Ki günümüzde oyuncu klavyesi tercih ederken şahsen en çok dikkat edilen nokta. Logitech yıllardır her modelinde Türkçe Q destekli klavyeler sunuyor bizlere.
 
G413 Carbon modelinde gereksiz alan doldurmaktan kaçınılmış. Ve görebileceğiniz gibi medya tuşları F tuşlarına gizlenmiş. Yani bu tuşlar çift fonksiyonlu.
Medya tuşlarını kullanmak istediğiniz zaman klavyemizin sağ alt kısmındaki CTRL butonlarının olduğu yerde FN tuşuna basıp fonksiyonlar arasında atlama yapabiliyorsunuz.
Mesela FN+Play / Pouse ileri veya geri sarma ve FN+ Ses kısma / Açma  gibi rahatlıkla tek elle halledebiliyorsunuz.
 
G413 Carbon boyut olarak gerçekten çok kompakt bir yapıda. Toplamda 1105 gram ağırlığında olan klavye 44cm uzunluğa ve 13cm enine sahip. Yüksekli olarakta tuşlar dahil sadece 3,4cm.
Arka yükselti ayaklarını açtığımızda yaklaşık 2cm daha yükseliyor klavyemiz. 
 
Klavyede kullanılan gövde malzemesi plastik ve Alüminyum alaşım. Alt kısmı plastik malzeme iken klavyenin üst tablası Alüminyum ve Magnezyum alaşımlı malzemeden.
Metal tablanın zımparalanmış olmasıda klavyenin sağlamlığını şık bir görünüm ilede sunmuş oluyor.
 
Klavyenin pc ye bağlantısı için sleeve kaplı güçlendirilmiş 2 adet USB kablosu olduğunu görüyoruz. Konnektörlerin ucunda klavye be veri bağlantı simgelerine yer verilmiş. Yani kablonun bir ucu klavye içinken diğeri klavyenin arka kısmında bulunan USB 2.0 çıkışı için.
Arkada yer alan USB bağlantısıda bu sayede veri aktarımı ve şarj özelliği barındırıyor.
 
Klavyenin ayak yüksekliğinin 2cm olduğunu belirtmiştik. Ayaklarda ve alt tablada bulunan kauçuklar işini tam anlamıyla yapıyor. Oyun ve günlük işlem sırasında hiç kayma yapmadı.
 
NumLock tuşlarının olduğu alanda 2 adet gösterge ledi yer alıyor. Bunlardan biri CapsLock içinken diğeri GamingG tuşu için.
 
 
Şimdi en önem verdiğimiz kısma yani G413 Carbon klavyesinin tuşlarına değinelim.
 
Logitech mekanik anahtar switchlerde 3 farklı yapı sunuyor. Romer G Tactile / Romer G Linear / GX Blue.
Bu klavyede ise Romer G Tactile adını verdiği switchleri kullanmış.
Tuşların aktif mesafe aralığı 1,5mm ki bu bayağı hızlı olduğu anlamına geliyor. Tuşa hafifçe dokunmanız ile hızlıca baskıyı algılayabiliyor ve bu oyunlarda büyük bir artı.
 
Tuşların toplam mesafesi ise 3,2mm. Tuşlardaki işlem gücü yani baskı kuvveti hassasiyeti 45 gram olarak belirlenmiş ve 70.Milyon tuş vuruş ömrü sunuyor.
 
Tüm bu özellikleri ortalama baz aldığımızda Cherry Mx ve Razer switchler ile kafa kafaya olduğu kesindir diyebilirim.
 
Burada önemli bir noktaya değinmek istiyorum. Bazı kullanıcılar Logitech RomerG tuşlarının mekanik olmadığını belirtmişler. Fakat bu yanlış bir bilgi.
 
Dünyada tuşlu yapıda 2 farklı klavye çeşidi vardır.
Membran ve Mekanik olarak geçer bunlar. Membran klavyeler tuşların altında silikon malzeme ile devre kartına birleşir.
Mekanikler ise tuşlarda direk devre kartı üzerine lehimlenir. Yani işlevi tuş dediğimiz switchler yapar.
Membranda ise tuşların altında bulunan silikon algılayıcılarının verdiği baskı ile tuş devreye girer.
 
Bu sebeple RomerG tuşlarda Mekanik switchlerdir. Bizlerin alışkın olduğu cherry switchler ile hemen hemen aynı mekanizmadır sadece dış görünümü farklıdır. Bu yüzden yanlış bilgilere lütfen tamaa etmeyin.
 
Logitech G413 klavye ABS tuşlara sahip ve iç bükey yapıda bombeli. İçinden çıkan yedek tuşlar ise yine içe doğru köşeli bir kesit ile parmağınızın kaymasını gerçek anlamda önlüyr. Bu tasarım da sadece Logitech'e ait onuda belirtiyim. Diğer markalar sadece kaydırmaz kauçuk ekleyebiliyor o kadar.
 
RGB özelliği olmasada  kırmızı ledleri tuşlardan rahatlıkla kendini belli ediyor. Mekanik tuşların dip kısmında yer alan ledler karanlık ortamda kendini belli ediyor. Tuşların harf ve sayılarının okunabilirliğide tam olması gerektiği gibi kusursuz diyebilirim.
 
Logitec'in klavyeleri için Gaming Software adını verdiği yazılımı kullanabiliyorsunuz.
Yazılıma ilk girdiğimizde uygulamalar kısmı çıkıyor ve bu alanda oyunlara göre led profilleri atama yapabiliyorsunuz. Tabiki RGB aydınlatma özelliği olan klavyeler için geçerli.
 
Hemen alt bölmede program klavyemizi tanıyor ve görselin üzerine tıklayınca ilk ekranda Makro yani G tuşlarına profil atama özellikleri bizi karşılıyor. Profil atamak istediğiniz tuşu seçerek gerekli ayarlamaları buradan yazılımsal olarak yapabiliyorsunuz.
Sağda ışık ayarları kısmına geçtiğimizde ise klavye tek renk kırmızı ledli olduğundan Nefes alıp verme efekti ile Parlaklık ayarı mevcut sadece.
Oyun Modeu ayarında devre dışı bırakmak istediğiniz tuşları seçme imkanıda sunulmuş. Profesyönel oyuncuları bilmem ama şahsen benim gibi acemi oyuncular için işe yarayan bir özellik.   Oyunun heyecanından olsa gerek şarjör değiştirirken işaret parmağım bazen yanlış tuşa kayabiliyor Smile
 
Ayriyeten Logitech'in yazılımı ''Giriş Analizi'' de sunmuş. Bu sayede en aktif hangi tuşları kullandığınızı ve hangi tuşlara daha sert bastığınızı sizlere gösterebiliyor.
 
Şimdi oyun performansı ve tuş seslerine değinelim.
 
Aksiyonu hızlı olan ve benim daha yeni yeni oynamaya başladığım Counter Strike oyununda test ettim.
Cherry Mx  Red switchli klavye kullanan biri olarak oyunda hiçbir yadırgama yaşamadan rahatlıkla kullandım diyebilirim. Oynanış olarak hiç bir eksi yön sunmadı. Demekki profesyonel oyuncuların  bir bilgiği varmış.
 
Tuş sesi olarak çok aşırı yüksek değil şahsen. Diğer mekaniklere kıyasla birazcık az sese sahip. Ki oyuncular ve özellikle yayıncılar sesli klavyelerden kaçınırlar. Fakat farkedilebilir bir tıklama hissiyatıda veriyor. Ki bu hem oyun hemde yazı yazarken çok önemli. Tuşa bastığınızda aktif olduğu yani bastığımızı hissetmemiz açısından çok iyi. 
 
G413 Carbon RomerG tuşları ile bu hissiyatıda verip bizden güzel bir not alıyor.
 



Ek Dosyalar Ekran Görüntüleri
   
Bu konuyu yazdır

  [MOD] Username or E-Mail Address Login / Girişte Mail Adresi
Yazar: kara_kutu - Dün, Saat: 17:51 - Forum: PhpBB - Yorum Yok

[MOD] Username or E-Mail Address Login / Girişte Mail Adresi 

Açıklama : Girişte Kullanıcı adı yada mail adresi ( üyelikte kullanılan ) ile giriş izni..



################################################## ############
## MOD Title: Username Or Email Login Mod
## MOD Author: Johnpg82 < webmaster@theindy.net > http://www.theindy.net Code changes by bonelifer and *=Matt=* from Phpbb.com
## MOD Description: This mod allows your users to login using their email address or username
## MOD Version: 1.0.3
##
## Installation Level: Easy
## Installation Time: 3 minutes
## Files To Edit: login.php
## includes/page_header.php
## templates/subSilver/login_body.tpl
## language/lang_english/lang_main.php
##
################################################## ############
## Author Notes:
##
## Copyright © Johnpg82, 2006-2006
##
## For any concerns please contact me at http://www.theindy.net
##
################################################## ############
## This MOD is released under the GPL License: http://opensource.org/licenses/gpl-license.php GNU General Public License v2
## Intellectual Property is retained by the MOD Author(s) listed above
################################################## ############
## MOD History:
##
## v1.0.3
## - Johnpg82 removed user_email select from the query as it was not necesary.
##
##
## v1.0.2
## - *=Matt=* made a few changes here is a direct quote See the "'" that makes the php die "Parse error: syntax error, unexpected '=' in ***" so what I did to make this work is" This was a mistake by bonelifter when doing code changes in 1.0.2
##
## v1.0.1
## - bonelifer made a few changes for better use with easymod
##
## v1.0.0
## - Initial Release
##
################################################## ############
##
## Demo/Discussion Forum: http://www.phpbb.com or http://www.phpbbhacks.com
##
##
##
################################################## ############
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
################################################## ############

#
#-----[ OPEN ]------------------------------------------
#
login.php
#
#-----[ FIND ]------------------------------------------
#
WHERE username = '" . str_replace("\'", "''", $username) . "'";

#
#-----[ IN-LINE FIND ]------------------------------------------
#
$username) . "'"

#
#-----[ IN-LINE REPLACE WITH ]------------------------------------------
#
$username) . "' or user_email = '" . str_replace("\'", "''", $username) . "'"

#
#-----[ OPEN ]------------------------------------------
#
includes/page_header.php
#
#-----[ FIND ]------------------------------------------
#
'L_USERNAME' => $lang['Username'],
#
#-----[ AFTER, ADD ]------------------------------------------
#
'L_USERNAME_EMAIL' => $lang['Username_Email'],
#
#-----[ OPEN ]------------------------------------------
#
language/lang_turkish/lang_main.php
#
#-----[ FIND ]------------------------------------------
#
$lang['Username'] = 'Kullanıcı Adı';
#
#-----[ BEFORE, ADD ]------------------------------------------
#
$lang['Username_Email'] = 'Kullanıcı Adı yada E-mail Adresi';
#
#-----[ OPEN ]------------------------------------------
#
templates/subSilver/login_body.tpl
#
#-----[ FIND ]------------------------------------------
#
{L_USERNAME}
#
#-----[ REPLACE WITH ]------------------------------------------
#
{L_USERNAME_EMAIL}
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM


       

Bu konuyu yazdır

  [MOD] BBcode Quick time Player / BBkod Quick time Oynatıcı
Yazar: kara_kutu - Dün, Saat: 17:49 - Forum: PhpBB - Yorum Yok

[MOD] BBcode Quick time Player / BBkod Quick time Oynatıcı 

###############################################
## MOD İSMİ: Quick time Player BBCODE
## VERSİYONU: 0.1
## YAPIMCISI: Jikey
## AÇIKLAMASI: Let's you play Quick time Media files.
## Compatibility: 2.0.8
## URL : English Support: www.jikey.net/english
## Chinese Support: www.jikey.net/chinese
## KURULUM SEVİYESİ: KOLAY
## KURULUM SÜRESİ : 3 DK
## Files To Edit: 4
## bbcode.php
## bbcode.tpl
## posting.php
## lang_main.php
###############################################
## This hack is released under the GPL License.
## This hack can be freely used, but not distributed, without permission.
## Intellectual Property is retained by the hack author(s) listed above.
###############################################

#
#-----[ OPEN ]------------------------------------------
#
includes/bbcode.php
#
#-----[ FIND ]------------------------------------------
#
$bbcode_tpl['email'] = str_replace('{EMAIL}', '\\1', $bbcode_tpl['email']);
#
#----[ AFTER, ADD ]-----------------------------------------
#
//www.jikey.net
$bbcode_tpl['quick'] = str_replace('{URL}', '\\1', $bbcode_tpl['quick']);
#
#-----[ FIND ]------------------------------------------
#
// user@domain.tld code..
$patterns[5] = "#\[email\]([a-z0-9\-_.]+?@[\w\-]+\.([\w\-\.]+\.)?[\w]+)\[/email\]#si";
$replacements[5] = $bbcode_tpl['email'];
#
#----[ AFTER, ADD ]-----------------------------------------
# Note: you may need to change array number if used with other BBcode mods
#
//[ quick ]and[ /quick ]for quicking audio.
$patterns[6] = "#\[quick:$uid\](.*?)\[/quick:$uid\]#si";
$replacements[6] = $bbcode_tpl['quick'];
#
#-----[ FIND ]------------------------------------------
#
// [img]image_url_here[/img] code..
$text = preg_replace("#\[img\](http(s)?://)([a-z0-9\-\.,\?!%\*_\#:;~\\&$@\/=\+]+)\[/img\]#si", "[img:$uid]\\1\\3[/img:$uid]", $text);
#
#----[ AFTER, ADD ]-----------------------------------------
#
//[ quick]image_url_here[/quick ]code..
$text = preg_replace("#\[quick\](([a-z]+?)://([^, \n\r]+))\[/quick\]#si", "[quick:$uid]\\1[/quick:$uid]", $text);
#
#-----[ OPEN ]------------------------------------------
#
templates/subSilver/bbcode.tpl
#
#-----[ FIND ]------------------------------------------
#
<!-- BEGIN email --><a href="mailto:{EMAIL}">{EMAIL}</A><!-- END email -->

#
#----[ AFTER, ADD ]-----------------------------------------
#
<!-- BEGIN quick -->
<OBJECT CLASSID="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" WIDTH="420" HEIGHT="276" CODEBASE="http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0">
<PARAM NAME="controller" VALUE="TRUE">
<PARAM NAME="type" VALUE="video/quicktime">
<PARAM NAME="autoplay" VALUE="true">
<PARAM NAME="target" VALUE="myself">
<PARAM NAME="src" VALUE="{URL}">
<PARAM NAME="pluginspage" VALUE="http://www.apple.com/quicktime/download/indext.html">
<EMBED WIDTH="420" HEIGHT="276" CONTROLLER="TRUE" TARGET="myself" SRC="{URL}" type="video/quicktime" BGCOLOR="#000000" BORDER="0" PLUGINSPAGE="http://www.apple.com/quicktime/download/indext.html"></EMBED>
</OBJECT>
<!-- END quick -->


#
#-----[ OPEN ]------------------------------------------
#
posting.php


#
#-----[ FIND ]------------------------------------------
#

'L_BBCODE_F_HELP' => $lang['bbcode_f_help'],

#
#-----[ AFTER, ADD ]------------------------------------------
#
'L_BBCODE_qt_HELP' => $lang['bbcode_qt_help'],

#
#-----[ OPEN ]------------------------------------------
#
lang_main.php

#
#-----[ FIND ]------------------------------------------
#
$lang['bbcode_f_help'] = "Font size: small text";

#
#-----[ AFTER, ADD ]------------------------------------------
#
$lang['bbcode_qt_help'] = "Quick time online: [quick]http://link_of_quick_time[/quick]";

#
#-----[ OPEN ]------------------------------------------
#
templates/xxx/posting_body.tpl

#
#-----[ FIND ]------------------------------------------
#
f_help = "{L_BBCODE_F_HELP}";


#
#-----[ AFTER, ADD ]------------------------------------------
#
qt_help = "{L_BBCODE_qt_HELP}";

#
#-----[ FIND ]------------------------------------------
#
,'',''

#
#-----[ AFTER, ADD ]------------------------------------------
#
,'[quick]','[/quick]'

#
#-----[ FIND ]------------------------------------------
#
<td><span class="genmed"><input type="button" class="button" accesskey="w" name="addbbcode16" value="URL" style="text-decoration: underline; width: 40px" onClick="bbstyle(16)" onMouseOver="helpline('w')" /></span></td>
#
#-----[ AFTER, ADD ( note: +2 if you hack other bbcode )]------------------------------------------
#
<td><span class="genmed"><input type="button" class="button" accesskey="qt" name="addbbcode18" value="quicktime" style="width: 80px" onClick="bbstyle(18)" onMouseOver="helpline('qt')" /></span></td>

Bu konuyu yazdır

  [MOD] phpBB pre-2.0.21 Code Changes
Yazar: kara_kutu - Dün, Saat: 17:44 - Forum: PhpBB - Yorum Yok

[MOD] phpBB pre-2.0.21 Code Changes 

2.0.20 sonrası fixleri unutmayın ; https://www.phpbb.com/community/viewtopic.php?t=382680

################################################## ############
## MOD Title: phpBB 2.0.21 Development
## MOD Author: romans1423 < rick.beckman@gmail.com > (Rick Beckman) http://beckman-ministries.com/
## MOD Description: The following changes to phpBB 2.0.20 have been made in
## phpBB CVS and will appear in the next release, phpBB 2.0.21. This MOD
## will be useful to anyone wishing to fix several phpBB 2.0.20 bugs without
## the need to wait on phpBB 2.0.21 to be released.
##
## These updates make the following changes:
## * [Fix] Changes to random number generator code to explicitly truncate
## the length of the string
## * [Fix] Quoting on boards with HTML enabled
## * [Fix] Redirect to list if cancelling deletion of ranks, smilies or word censors
## * [Fix] Wrong variable used in private message word filter
## * [Fix] Wrong template called in styles management
## * [Fix] Poll deletion mistakenly altered forum stats
## * [Fix] Missing error message for inactive users
## * [Fix] Invalid cookie name/globalization in sessions code
## * [Change] Backported more efficient highlighting code from Olympus
## * [Change] Loosened HTML filtering a bit
## MOD Version: 1.0.1
##
## Installation Level: Easy
## Installation Time: 17 minutes
## Files To Edit: admin/admin_ranks.php
## admin/admin_smilies.php
## admin/admin_styles.php
## admin/admin_words.php
## includes/functions.php
## includes/functions_post.php
## includes/sessions.php
## includes/usercp_register.php
## login.php
## privmsg.php
## profile.php
## viewtopic.php

## Included Files:
## License: http://opensource.org/licenses/gpl-license.php GNU General Public License v2
## Generator: MOD Studio [ ModTemplateTools 1.0.2288.38406 ]
################################################## ############
## For security purposes, please check: http://www.phpbb.com/mods/
## for the latest version of this MOD. Although MODs are checked
## before being allowed in the MODs Database there is no guarantee
## that there are no security problems within the MOD. No support
## will be given for MODs not found within the MODs Database which
## can be found at http://www.phpbb.com/mods/
################################################## ############
## Author Notes: This MOD is not endorsed by the phpBB Group. The code contained within is development

code and should be used at your own risk. It should be noted that though these changes are currently

in phpBB CVS, they may not make into a final release.
################################################## ############
## MOD History:
##
## 2006-05-08 - Version 1.0.1
## -Updated to include May 06 CVS checkins
## 2006-05-07 - Version 1.0.0
## -Accounts for all phpBB CVS checkins in the 2.0.x line from the release of phpBB 2.0.20 up through

April 23.
##
################################################## ############
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
################################################## ############

Bu konuyu yazdır

  [MOD] BBcode Border / BBkod Çerçeve
Yazar: kara_kutu - Dün, Saat: 17:41 - Forum: PhpBB - Yorum Yok

[MOD] BBcode Border / BBkod Çerçeve 

################################################## ###############
## Mod İSMİ: BBBorder
## Mod YAZARI: Nome < nome@bk.ru > http://www.altermusic.ru
## Mod VERSİYONU: 1.0.0
## Mod AÇIKLAMASI: This mod will allow users to place borders
## around any objects they want.
##
## Installation Level: Easy
## Installation Time: 5 Minutes
##
## Files To Edit: 5
## posting.php
## includes/bbcode.php
## language/lang_english/lang_main.php
## templates/subSilver/bbcode.tpl
## templates/subSilver/posting_body.tpl
##
################################################## ###############
## Author's notes:
## Requires Multiple BBCode Hack
## http://www.phpbbhacks.com/download/2172
#
#-----[ OPEN ]------------------------------------------
#
posting.php

#
#-----[ FIND ]------------------------------------------
#
$EMBB_keys = array('');

#
#-----[ IN-LINE, FIND ]------------------------------------------
#
);

#
#-----[ BEFORE, ADD ]------------------------------------------
#
,'d'

#
#-----[ FIND ]------------------------------------------
#
$EMBB_widths = array('');

#
#-----[ IN-LINE, FIND ]------------------------------------------
#
);

#
#-----[ BEFORE, ADD ]------------------------------------------
#
,'60'

#
#-----[ FIND ]------------------------------------------
#
$EMBB_values = array('');

#
#-----[ IN-LINE, FIND ]------------------------------------------
#
);

#
#-----[ BEFORE, ADD ]------------------------------------------
#
,'Border'

#
#-----[ FIND ]------------------------------------------
#
'L_BBCODE_F_HELP' => $lang['bbcode_f_help'],

#
#-----[ AFTER, ADD ]------------------------------------
#
'L_BBCODE_D_HELP' => $lang['bbcode_d_help'],

#
#-----[ OPEN ]------------------------------------------
#
includes/bbcode.php

#
#-----[ FIND ]------------------------------------------
#
// [i]and [/i]for italicizing text.
$text = str_replace("[i:$uid]", $bbcode_tpl['i_open'], $text);
$text = str_replace("[/i:$uid]", $bbcode_tpl['i_close'], $text);

#
#-----[ AFTER, ADD ]------------------------------------
#
// [border] and [/border] for making a border.
$text = str_replace("[border:$uid]", $bbcode_tpl['border_open'], $text);
$text = str_replace("[/border:$uid]", $bbcode_tpl['border_close'], $text);

#
#-----[ FIND ]------------------------------------------
#
// [i]and [/i]for italicizing text.
$text = preg_replace("#\[i\](.*?)\[/i\]#si", "[i:$uid]\\1[/i:$uid]", $text);

#
#-----[ AFTER, ADD ]------------------------------------
#
// [border] and [/border] for making a border.
$text = preg_replace("#\[border\](.*?)\[/border\]#si", "[border:$uid]\\1[/border:$uid]", $text);

#
#-----[ OPEN ]------------------------------------------
#
# Note: I use lang_english as an example
language/lang_english/lang_main.php

#
#-----[ FIND ]------------------------------------------
#
$lang['bbcode_f_help'] = 'Font size: small text';

#
#-----[ AFTER, ADD ]------------------------------------
#
$lang['bbcode_d_help'] = "A frame around any object: [border]object[/border] (alt+d)";

#
#-----[ OPEN ]------------------------------------------
#
# Note: I use subSilver as an example
templates/subSilver/bbcode.tpl

#
#-----[ FIND ]------------------------------------------
#
<!-- BEGIN img --><img src="{URL}" ...

#
#-----[ AFTER, ADD ]------------------------------------
#
<!-- BEGIN border_open --><span style="border-width: 1; border-style: solid; border-color: #910404; padding: 2px;"><!-- END border_open -->
<!-- BEGIN border_close --></span><!-- END border_close -->

#
#-----[ OPEN ]------------------------------------------
#
# Note: I use subSilver as an example
templates/subSilver/posting_body.tpl

#
#-----[ FIND ]------------------------------------------
#
f_help = "{L_BBCODE_F_HELP}";

#
#-----[ AFTER, ADD ]------------------------------------
#
d_help = "{L_BBCODE_D_HELP}";

#
#-----[ FIND ]------------------------------------------
#
# Note: It's a long line
bbtags = new Array('[b]','[/b]','[i]','[/i]','[u]','[/u]' ...

#
#-----[ IN-LINE, FIND ]------------------------------------
#
);

#
#-----[ BEFORE, ADD ]------------------------------------
#
, '[border]', '[/border]'

#
#-----[ SAVE/CLOSE ALL FILES ]--------------------------
#
#EoM

Bu konuyu yazdır

Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB
© 2002-2018 MyBB Group.
Tasarım Tekno Destek Team © 2018