Skip to main content
drzeki.com
    Dünyanın en farklı web hosting deneyimi seni bekliyor!

    PHP ile MySQL İşlemleri – Sürekli Güncel

    Merhabalar, bu başlık altında PHP ile temel MySQL bağlantı ve sorgulama işlemlerini gerçekleştireceğiz. (Fonksiyonel ya da nesnel yaklaşım kullanmayacağım, sadece temeli vermeyi amaçlıyorum.) Yararlı olması dileğimle.

    Öncelikle MySQL veritabanını oluşturduğunuzu varsayarak PHP ile MySQL veritabanı sunucusuna nasıl bağlantı yapılacağından bahsedeceğim.

    Kod:

    [php]
    #Yazar: R. Zeki AYAN

    #Çalışma: Veritabanı bağlantısını ve veritabanı seçimini yapan betik.

    #Son güncelleme: 12/05/2010

    $sunucu = ‘localhost’;

    $vt_adi = ‘mysql_vt’;

    $vt_kullaniciadi = ‘root’;

    $vt_sifre = ‘aspoerwq3’;

    // Aşağıdaki kod ile veritabanı bağlantısını yapıyoruz, mysql_connect() fonksiyonu bize bir bağlantı kulpu gönderir ya da başarısızlık anlamında FALSE boolean değerini döndürür.

    $bag = @mysql_connect($sunucu,$vt_kullaniciadi,$vt_sifre) or die(‘MySQL Sunucusuna Bağlanılamıyor.’);

    // Yukarıdaki işlemde bir sorun olmaz ve betik çalışmaya devam ederse aşağıdaki işlemi yaparak MySQL veritabanımızı seçiyoruz. Bu fonksiyon ise başarı durumunda TRUE aksi takdirde FALSE boolean değerini döndürür.

    @mysql_select_db($vt_adi,$bag) or die(‘MySQL Veritabanı Seçilemiyor.’);[/php]

    PHP ve MySQL’in Tarihçesi ve Güçlü Yanları – PHP Nedir? – MySQL Nedir?

    PHP ve MySQL’in Tarihçesi ve Güçlü Yanları

    Merhabalar, bu makalemi size PHP ve MySQL’in tarihçesinden başlayıp neden PHP ve MySQL kullanmamız gerektiğinden bahsederek bitireceğim.Evet kollarınızı sıvayın, kemerlerinizi yerine oturtun. Başlıyoruz…

    PHP Nedir?

    PHP, 1994’te Rasmus Lerdorf’un özgeçmişini internette yayınlamak ve başvuracağı iş yerlerine de bu internet adresini vermek istemesiyle başlayan bir süreçtir. O zamanlarda üniversitelerin unix tabanlı ağlarında web sayfası hazırlamak oldukça güç olduğundan Lerdorf, kendisi ve başka insanların rahatça kullanabileceği bir dil hazırlama düşüncesine kapıldı ve PHP doğdu. Bu arada unutmadan PHP’nin açılımının Personal Home Page olduğunu ancak daha sonraları bunun PHP:Hypertext Processor olarak değiştiğini söyleyeyim.

    PHP, açık kaynak (open source) kodlu bir üründür ve PHP yi isteyen herkes geliştirebilir/değiştirebilir. Günümüzde PHP, dünya çapında 20 milyon civarı alanda kullanılmaktadır. Şu anda kullanılan PHP sürümü 5.x.x tir. Bu sürüm, temeli oluşturan Zend motorunun tamamen yeniden yazılmasıyla oluşturulmuştur.

    PHP’nin anasayfası: http://php.net
    Zend Technologies anasayfası: http://zend.com

    MySQL Nedir?

    MySQL çok hızlı ve çok sağlam bir ilişkisel veritabanı yönetim sistemidir. Bunlara literatürde RDBMS (Relational Database Management System) denir. MySQL çok kullanıcılı, çok kanallı bir sunucudur. Dünya çapında standart kabul edilen veritabanı sorgulama dili olan SQL’i (Stractured Query Language) kullanır. Dünyanın en popüler açık kaynak kodlu veritabanı sistemi olmasıyla birlikte Linux Journal Okuyucuların Seçimi Ödülü’nü birkaç kez kazanmıştır.

    MySQL’i ticari amaçla kullanacaksanız çok cüzzi bir miktar lisans ücreti ödemeniz gerekiyor, kişisel kullanımlarda GPL lisansıyla dağıtılmaktadır.

    PHP’nin Güçlü Yanları

    PHP’nin en güçlü rakipleri arasında Perl, Microsoft ASP.NET, Java Server Pages ve ColdFusion bulunur. Bu diller ile kıyaslandığında PHP aşağıdaki yönerden daha güçlüdür:

    – Yüksek performans
    – Birçok farklı veritabanı sistemine bağlantı desteği
    – Sık kullanılan birçok web işlemi için yerleşik kütüphaneler
    – Düşük maliyet
    – Öğrenim ve kullanım kolaylığı
    – Güçlü nesne yönelimli programlama desteği
    – Taşınabilirlik (PHP birçok platformda sorunsuz çalışır)
    – Açık kaynak

    MySQL’in Güçlü Yanları

    MySQL’in başlıca rakipleri PostgreSQL, Microsoft SQL Server ve Oracle’dır. Ancak MySQL şu yanlarıyla daha güçlüdür:

    – Yüksek performans
    – Düşük maliyet
    – Yapılandırma ve öğrenim kolaylığı
    – Taşınabilirlik
    – Açık kaynak

    Bir makalenin daha sonuna geldik. Günümüzde açık kaynak savunucularının hızla artmasıyla doğru orantılı olarak açık kaynaklı yazılımlar ve sistemler de çok hızlı gelişiyorlar. Biz neden kullanmayalım ki? (:

    R.Zeki AYAN

    Yeni Proje: İndirme Yöneticisi – Download System

    Merhaba drzeki.com!

    Şu günlerde bir süredir aklımda olan bir proje için AR-GE çalışmalarına başladım. Bu bir web projesi ve tıbbi içerikli olacak. Öncelikle proje kapsamında sunacağım içeriği düzenleyip/toparlayıp yaklaşık bir ay içerisinde hazır bir script ile yayınlayacağım. Bu işlemler ile uğraşırken bir yandan da proje için sıfırdan başlayarak yeni bir sistem kodlayacağım ve veritabanını yeni sisteme taşıyacağım. Proje özellikle tıp asistanlarına ve doktorlara hitap edecek. Gelir kaynağı olarak Google Adsense ve ilaç sanayii firmalarının reklamlarını kullanacağım. Şimdilik bu kadar bilgi vereceğim. Bekleyin ve görün! (:

    R. Zeki AYAN

    BIOS Sesli Uyarı Hatalarının Anlamları ve Çözümleri

    Merhabalar, Bilgisayarınızın açılısı sırasında BIOS’un POST (Power on Self Test) fonksiyonunun hataları tespit etmesi ve bildirmesi hakkındaki makalemizi inceleyelim.

    BIOS Sesli Uyarı Hatalarının Anlamları

    – Sürekli ses varsa güç kaynağınızın arızası var demektir.
    – Birçok kısa bip sesi varsa anakart arızası var demektir.
    – Bir uzun ses varsa bellek tazelenmesinde hata var demektir.
    – Bir uzun bir kısa ses varsa anakart veya bios cipi arızalıdır.
    – Bir uzun iki kısa ses varsa ekran kartı arızalıdır.
    – İki uzun bir kısa ses varsa Ramdac arızalı demektir.
    – İki kısa ses ise bellek parity hatası demektir.
    – Üç kısa ses varsa belleğin ilk 64 Kb’lık bölümünde hata var demektir.
    – Dört kısa ses ise timer hatası var demektir.
    – Beş kısa ses ise işlemci hatası vardır.
    – Altı kısa ses ise klavye işlemcisi hatası var demektir.
    – Sekiz kısa ses ise ekran kartı belleğinde okuma yazma hatası vardır.
    – Dokuz kısa ses varsa BIOS Ram hatasıdır.
    – On kısa ses ise CMOS okuma – yazma hatasıdır.
    – On bir kısa ses varsa tampon bellek hatası vardır.

    Arızaların Giderilmesi

    – Birinci hata için güç kaynağınızın bağlantılarını kontrol edip bir deneme daha yapın. Sorun devam ediyorsa yeni bir güç kaynağı takıp deneyin.
    – Anakart arızası, anakart veya BIOS cipi arızası, timer hatası, klavye işlemcisi hatası ve CMOS okuma- yazma hatası için tüm kartları, işlemciyi ve ramları söküp tekrar takın. Öncelikle mümkün olduğunca az bileşenle bilgisayarı başlatmaya çalışın.
    – Bellek tazelenmesinde hata, bellek parity hatası ve belleğin ilk 64 Kb lık yerinde hata var ise öncelikle ramların yerlerine iyice oturduklarında emin olunuz. Hata devam ediyorsa başka bir ram daneyin.
    – Anakart ve BIOS cipi arızası, BIOS Ram hatası ve CMOS okuma – yazma hatası Bıos cipinin yerine tam oturmadığından kaynaklanabilir. Cipin yerine düzgünce oturduğundan emin olmak için üstüne hafifçe bastırın.
    – Ekran kartı arızası var ise ve Ramdac kaynaklı ise ekran kartının yerine iyice oturduğundan emin olun. Monitör bağlantısını düzgün yapın. Başka bir ekran kartı alıp kendi bilgisayarınızda deneyin. Sorun devam ediyorsa kart yuvası bozulmuş olabilir.
    – İşlemci hatası beş kısa ve on bir kısa ses var ise; işlemcinizin düzgün bir şekilde takıldığından emin olun.Özellikle on bir kısa ses varsa anakartınızdan şüphelenebilirsiniz.
    – BIOS Ram Check Sum Error- System Halted, BIOS çipindeki bir hatayı gösterir. Çipteki fiziksel hata veya Bios yazılımında hata olabilir.Sisteminizi yeni bir Bios ile güncelleyin. Sorun devam ediyorsa yeni bir Bios cipi alın.
    – Cmos battery failed; Bios piliniz bitmiş veya bitecek demektir. Pilinizin türünü belirleyin ve yeni bir pil alın.
    – Flopy disk failed; sisteminizde takılı bulunan disket sürücüleri ile Bios’taki disket sürücü ayarları birbirini tutmuyor demektir.
    – Keyboard or error keyboard no present: Klavyenizin F1 tuşuna basarak hatadan kurtulabilir veya yeni bir klavye deneyebilirsiniz.
    – Memory Test Fail; Bios’taki bellek ayarlarınızda olabilecek bir problemden kaynaklanabileceği gibi bellek modüllerinizdeki kısmi arızalar nedeniyle de ortaya çıkabilir.
    – Hardisk failed; sisteminizdeki mevcut hardisk ile Bios’ta belirlenmiş hardisk ayarları birbirini tutmuyor demektir.

    Alıntıdır (:

    Bilişim Güvenliği Prensipleri

    Bilişim Güvenliği Prensipleri

    Bilişim Güvenliği Nedir?
    Bilişim güvenliği, bilişim ürünleri/cihazları ile bu cihazlarda işlenmekte olan verilerin gizliliğini, bütünlüğünü ve sürekliliğini korumayı amaçlayan bir disiplindir.

    Bilişim güvenliği temel olarak Gizlilik (Confidentiality) , Veri Bütünlüğü (Data Integrity) , Süreklilik (Availability) üç prensip ve bunlara eklenebilecek İzlenebilirlik/Kayıt Tuma (Accountability), Kimlik Sınaması (Authentication), Güvenilirlik (Reliability – Consistency), İnkar Edememe (Non-repudiation)
    prensipleri ile ifade edilebilir. Bu prensipleri kısaca açıklamak gerekirse;

    Gizlilik (Confidentiality) : Bu prensip Bilginin yetkisiz kişilerin eline geçmesini engellemeyi amaçlamaktadır. Bilgi hem bilgisayar sistemlerinde, hem disk, disket, cd, dvd ve benzeri saklama ortamlarında hemde ağ üzerinde gönderici ve alıcı arasında taşınırken yetkisiz erişimlerden korunmalıdır.
    Saldırgan bir yapılandırma veya yazılım hatasını istismar ederek, yahut Sosyal Mühendislik teknikleri ile yetkili insanlarların hatalarını istismar ederek bilgilere izinsiz olarak erişebilir.
    Parola dosylarının çalınması, ağ üzerindeki trafiğin gözetlenmesi ve kaydedilmesi, yetkili kullanıcının fark ettirilmeden gözetlenmesi ile kullanıcıya ait kullanıcı adı ve parola gibi özel bilgilerin alınması, sisteme giriş yapan kullanıcının bilgisayarını saldırganın izinsiz kullanması gibi durumlar Gizlilik (Confidentiality) prensibi kapsamında değerlendirilir.

    Veri Bütünlüğü (Data Integrity) : Bu prensibin amacı veriyi olması gerektiği şekilde tutmak ve korumaktır. Var olan bilginin bozulmasını, değiştirilmesini, yeni veriler eklenmesini, bilginin bir kısmının veya tamamının silinmesini engellemeyi hedefler.
    Bu durumda veri, haberleşme sırasında izlediği yollarda değiştirilmemiş, araya yeni veriler eklenmemiş, belli bir kısmı ya da tamamı tekrar edilmemiş ve sırası değiştirilmemiş şekilde
    alıcısına ulaşır.

    Süreklilik (Availability) : Bilginin her an ulaşılabilir ve kullanılabilir olmasını amaçlayan prensiptir. Bilişim sistemlerinin kendilerinden beklenen işi sürekli bir şekilde tam ve eksiksiz olarak yapmasını amaçlamaktadır. Süreklilik hizmeti, bilişim sistemlerini, kurum içinden ve dışından gelebilecek başarım düşürücü tehditlere karşı korumayı hedefler. Süreklilik hizmeti sayesinde, kullanıcılar, erişim yetkileri dahilinde olan verilere, veri tazeliğini yitirmeden, zamanında ve güvenilir bir şekilde ulaşabilirler.
    Sistem sürekliliği sadece bir saldırı sonucu zedelenmez, yanlış, bilinçsiz ve dikkatsiz kullanım gibi kullanıcı hatları, yazılım hataları sonucu yazılımların çökmesi gibi yazılım hataları veya donanım sorunları, yangın, su basması, yıldırım düşmesi gibi ortam şartlarındaki olumsuz değişiklikler bu prensip kapsamındadır.

    İzlenebilirlik/Kayıt Tutma (Accountability) : Bu prensip sistemde gelişen her türlü olayın daha sonra incelenmesine olanak sağlaycak şekilde kayıt altına alınmasını kapsar. Kullanıcıların sisteme giriş yapmaları, e-posta alıp göndermeleri, çeşitli servislerin ve yazılımların çalıştırılaması yahut durdurulması gibi bilgisayar sistemi veya ağ üzerinde meydana gelen her türlü etkinlik olay kapsamına girmektedir.
    Toplanan kayılar incelenmek sureti ile bilinen saldırı türlerine ait kayıtların varlığı yahut büyük ihtimalle yeni bir saldırıyı işaret eden sıradışı kayıtların olup olmadığı kontrol edilerek sistem yöneticilerini uyaracak alarm mesajları üretilebilir.

    Kimlik Sınaması (Authentication) : Kimlik sınaması alıcının veya göndericinin yahut kullanıcının iddia ettiği kişi olduğundan emin olanmasıdır. En basit şekli ile bir bilgisayar sistemine giriş yaparken parola girilmesi de kimlik sınamasıdır. Bilgisayar ağları ve bilgisayar sistemleri dışında fiziksel sistemler için de çok önemlidir ve bu yüzden Akıllı Kartlar veya Biyometrik teknolojilere dayalı kimlik sınama sistemleri kullanılamaya başlanmıştır.

    Güvenilirlik (Reliability – Consistency) : Sistemin öngörülen ve beklenen davranışı ile elde edilen sonuçlar arasındaki tutarlılık durumudur. Sistemin kendisinden beklenen şeyi eksiksiz ve fazlasız olarak her çalıştırıldığında tutarlı bir şekilde yapması olarak tanımlanabilir.

    İnkar Edememe (Non-repudiation) : Bu prensip verinin iletilidiği gönderici ve alıcı arasında ortaya çıkabilecek iletişim sorunları ve anlaşmazlıkları en aza indirmeyi amaçlar. İki sistem arasında bir bilgi aktarımı yapılmışsa ne gönderen veriyi gönderdiğini, nede alıcı veriyi aldığını inkar edememelidir. Özellikle gerçek zamanlı işlem gerektiren finansal sistemlerde kullanım alanı bulmaktadır.

    Alıntıdır (:

    Microsoft Windows Klavye Kısa Yolları – Keyboard Shortcuts

    Genel Kısayollar

    ·  CTRL+C (Kopyala)
    ·  CTRL+X (Kes)
    ·  CTRL+V (Yapıştır)
    ·  CTRL+Z (Geri Al)
    ·  DELETE (Sil)
    ·  ÜSTKRKT+DELETE (Seçili öğeyi Geri Dönüşüm Kutusu\’na atmadan kalıcı olarak sil)
    ·  Bir öğeyi sürüklerken CTRL (Seçili öğeyi kopyala)
    ·  Bir öğeyi sürüklerken CTRL+ÜSTKRKT (Seçili öğeye kısayol oluştur)
    ·  F2 tuşu (Seçili öğeyi yeniden adlandır)
    ·  CTRL+SAĞ OK (Ekleme noktasını sonraki sözcüğün başına götür)
    ·  CTRL+SOL OK (Ekleme noktasını önceki sözcüğün başına götür )
    ·  CTRL+AŞAĞI OK (Ekleme noktasını sonraki paragrafın başına götür)
    ·  CTRL+YUKARI OK (Ekleme noktasını önceki paragrafın başına götür )
    ·  Ok tuşlarının herhangi biriyle birlikte CTRL+ÜSTKRKT (Bir metin bloğu vurgula)
    ·  Ok tuşlarının herhangi biriyle birlikte ÜSTKRKT (Pencere veya masaüstünde birden fazla öğe seç veya bir belgede metin seç)
    ·  CTRL+A (Tümünü seç)
    ·  F3 tuşu (Bir dosya ya da klasör ara)
    ·  ALT+ENTER (Seçili öğenin özelliklerini görüntüle)
    ·  ALT+F4 (Etkin öğeyi kapat veya etkin programdan çık)
    ·  ALT+ENTER (Seçili nesnenin özelliklerini görüntüle)
    ·  ALT+ARA ÇUBUĞU (Etkin pencere için kısayol menüsünü aç)
    ·  CTRL+F4 (Aynı anda birden çok belge açmayı sağlayan programlardaki etkin belgeyi kapat)
    ·  ALT+SEKME (Açık öğeler arasında geçiş yap)
    ·  ALT+ESC (Öğeler arasında açılma sıralarına göre dön)
    ·  F6 tuşu (Bir penceredeki veya masaüstündeki ekran öğeleri arasında dolaş)
    ·  F4 tuşu (Bilgisayarım veya Windows Gezgini\’ndeki Adres çubuğu listesini görüntüle)
    ·  ÜSTKRKT+F10 (Seçili öğe için kısayol menüsünü görüntüle)
    ·  ALT+ARA ÇUBUĞU (Etkin pencere için Sistem menüsünü görüntüle)
    ·  CTRL+ESC (Başlat menüsünü görüntüle)
    ·  ALT+Bir menü adındaki altı çizili harf (Karşılık gelen menüyü görüntüle)
    ·  Açık bir menüdeki bir komut adındaki altı çizili harf (Karşılık gelen komutu gerçekleştirir)
    ·  F10 tuşu (Etkin programda menü çubuğunu etkinleştirir)
    ·  SAĞ OK (Sağdaki sonraki menüyü aç veya bir alt menü aç)
    ·  SOL OK (Soldaki sonraki menüyü aç veya bir alt menüyü kapat)
    ·  F5 tuşu (Etkin pencereyi günceleştir)
    ·  GERİ AL (Bilgisayarım ya da Windows Gezgini\’nde bir seviye üstteki klasörü görüntüle)
    ·  ESC (Geçerli görevi iptal et)
    ·  CD-ROM sürücüye bir CD-ROM taktığınızda ÜSTKRKT (CD-ROM\’un otomatik olarak oynatılmasını önle)

    İletişim Kutusu Klavye Kısayolları

    ·  CTRL+SEKME (Sekmeler arasında gezin)
    ·  CTRL+ÜSTKRKT+SEKME (Sekmeler arasında geriye doğru git)
    ·  SEKME (Seçenekler arasında ileriye doğru git)
    ·  ÜSTKRKT+SEKME (Seçenekler arasında geriye doğru git)
    ·  ALT+Altı Çizili harf (İlgili komutu gerçekleştir veya ilgili seçeneği seç)
    ·  ENTER (Etkin seçeneğin veya düğmenin komutunu gerçekleştir)
    ·  ARA ÇUBUĞU (Etkin seçenek bir onay kutusuysa onay kutusunu seç veya temizle)
    ·  Ok tuşları (Etkin seçenek seçenek düğmeleri grubuysa bir düğme seç)
    ·  F1 tuşu (Yardım görüntüle)
    ·  F4 tuşu (Etkin listedeki öğeleri görüntüle)
    ·  GERİ (Kaydet veya Aç iletişim kutusunda bir klasör seçiliyse bir üst düzeydeki klasörü aç)

    Microsoft Doğal Klavye Kısayolları

    ·  Windows Logosu (Başlat menüsünü göster veya gizle)
    ·  Windows Logosu+BREAK (Sistem Özellikleri iletişim kutusunu görüntüle)
    ·  Windows Logosu+D (Masaüstünü göster)
    ·  Windows Logosu+M (Tüm pencereleri küçült)
    ·  Windows Logosu+ÜSTKRKT+M (Küçültülmüş pencereleri geri yükle)
    ·  Windows Logosu+E (Bilgisayarım\’ı aç)
    ·  Windows Logosu+F (Bir dosya veya klasör ara)
    ·  CTRL+Windows Logo+F (Bilgisayar ara)
    ·  Windows Logosu+F1 (Windows Yardımı\’nı görüntüle)
    ·  Windows Logosu+ L (Klavyeyi kilitle)
    ·  Windows Logosu+R (Çalıştır iletişim kutusunu aç)
    ·  Windows Logosu+U (Hizmet Programı Yöneticisi\’ni aç)

    PHP ye Giriş – Veri Türleri – Tip Ataması – Sabitler

    Değişken Tiplerini İncelemek

    Bir değişkenin tipi, içinde depolanan veri tipiyle belirlenir.PHP’nin sunduğu veri tiplerinin sayısı sürekli olarak artmaktadır.Farklı veriler farklı veri tiplerinde depolanabilir.

    PHP’deki Veri Tipleri

    PHP aşağıdaki temel veri tiplerini destekler:

    integer – Tam sayılar için kullanılır.
    float – (double olarak da adlandırılır) – Gerçek sayılar için kullanılır.
    string – Karaker katarları için kullanılır.
    boolean – true ve false değerleri için kullanılır.
    array – Çok sayıda veri öğesini depolamak için kullanılır.
    object – Sınıf örneklerini depolamak için kullanılır.

    İki özel tip daha vardır:
    NULL – Bir değer verilmemiş, atama yapılmamış ya da NULL değeri verilmiş değişkenlerdir.
    resource – Belirli yerleşik fonksiyonlar bu değeri(tipi) döndürür.Bunlar harici kaynakları temsil eder.

    Tip Ataması (Type Casting)

    Bir tip ataması (type casting) işlemi kullanarak bir değişken ya da değer farklı bir tipteymiş gibi davranabilirsiniz. Geçici tipi, tip atamak istediğiniz değişkenin önündeki parantezlerin içine koymanız yeterlidir.

    Örnek:
    $totalqty = 0;
    $totalamount = (float)$totalqty;

    İkinci satırın anlamı, “$totalqty içindeki değeri al, bir float olarak yorumla ve bunu $totalamount içinde depola” olacaktır. $totalamount değişkeninin tipi float olacaktır. Tip atama değişkeni, tipleri değiştirmediğinden $totalqty nin tipi integer olarak kalır.

    Değişken Değişkenler

    Değişken değişkenler bir değişkenin adını dinamik olarak değiştirebilmemizi sağlar.Yani değişken değişkenler bir değişkenin değerini, bir diğerinin adı olarak kullanırlar.

    Örnek:
    $varname = “tireqty”;
    Şeklinde bir satır tanımlarsanız, $tireqty yerine $$varname kullanabilirsiniz.

    $$varname = 5;
    Şeklinde değer de atanabilir.

    Sabitleri Deklare Etmek ve Kullanmak

    Daha önce de gördüğünüz gibi, bir değişken içinde depolanan değeri kolaylıkla değiştirebilirsiniz. Bir sabitte tıpkı bir değişken gibi değer depolar; ancak ona bir değer verildiğinde script içinde bu değer bir daha değiştirilemez.

    Örnek:
    define(‘TIREPRICE’, 100);
    Bu kod satırı TIREPRICE adında ve değeri 100 olan bir sabit (constant) tanımlar. Bir sabiti script içinde kullanmak için örneğin;
    echo TIREPRICE;
    kullanabilirsiniz.

    Sabitlerin isimlerinin tümünün büyük harf olduğunu görüyorsunuz. Bu C den alınan bir konvansiyondur ve değişkenlerle sabitleri bir bakışta birbirinden ayırmaya yarar. Bu kurala uymak zorunlu değildir, ancak kodlarınızın okunurluğu ve bakımını kolaylaştıracağı da bir gerçektir.

    Kendi tanımladığınız sabitlerin dışında PHP’nin de çok sayıda kendi sabiti vardır. Ayrıntılar için PHP Manual (PHP Kullanma Kılavuzu) bakabilirsiniz.

    Değişkenler ve sabitlerin arasındaki diğer bir önemli fark da, sabitlerin sadece boolean, integer, float ve string tipinde verileri depolayabilmesidir ve bu veri tiplerinin tümüne birden skaler değerler (scalar values) adı verilir.

    Makalelerin devamını PHP & MySQL kategorisi altından takip edebilirsiniz.

    Bilgisayar Açılışında F1 Problemleri ve Anlamları

    Genellikle bilgisayar açılışında Bios’ta yüklenen ortam sürücülerinden ve sürücü durumlarından kaynaklanır. Şimdi bunlara bir bakalım.

    Klavye Hatası (Keyboard Error): Klavyenizde oluşan bir problem bu hataya sebep olabilir. Klavyenizin kablo soketi yerine tam olarak oturmamış olabilir. Böyle bir durumda F1 e basarak devam eder ya da gerekli kontrolleri yaparsınız.

    Donanım Hatası (Hardware Monitor Error): İşlemcinin aşırı ısınması ya da fan devrinde bir problem olması durumunda bu hatayı alabilirsiniz. Bios’tan ilgili değerlere göz atarsanız sorun hakkında bilgi edinebilirsiniz.

    Disket Sürücü Hatası (Floppy Error): Her ne kadar günümüzde artık disket sürücü ya da diğer adıyla floppy disk kalmadıysa da bu konuya değinmekte fayda var. Disket sürücünüz takılı değilse ama bios’ta tanımlı ise, kablosunda problem varsa vb. bu hatayı alabilirsiniz.

    HDD Hatası: Ide kanallı HDD’lerde bilgisayar açılışında boot yerleşiminde master olarak tanınmadığı durumlarda çıkan hata mesajıdır. (Wait For ‘F1’ If Error) Bios ekranında Boot ayarlarını kurcalayarak çözüme kavuşabilirsiniz.

    Bios versiyonları hemen her bilgisayarda farklı olabileceğinden/olduğundan çok fazla ayrıntıya değinmedim. Problemsiz bilgisayarlarınız olması dileğimle… (:

    Tersine Mühendislik – Reverse Engineering – cracking

    Tersine mühendislik (Reverse Engineering) bir aygıtın, objenin veya sistemin; yapısının, işlevinin veya çalışmasının, çıkarımcı bir akıl yürütme analiziyle keşfedilmesi işlemidir. Bu yöntem, genellikle orijinalinden kopyalamadan onunla aynı şeyi yapan yeni bir alet veya yazılım yapmaya çalışır ve sıklıkla bir şeylerin (örneğin; makine veya mekanik alet, elektronik komponent, yazılım programı gibi) parçalarına ayrılması ve çalışma prensiplerinin detaylı şekilde analizini içerir.

    Amerika Birleşik Devletleri dahil diğer birçok ülkede bir sanat eseri veya bir süreç meslek sırlarıyla korunsa dahi, bunların tersine mühendisliği yasal olarak elde edildiği taktirde yapılabilir. Patentler, diğer taraftan, Buluşların kamusal ifşasını gerektirir, ve böylece patentli parçalar üzerinde araştırma yapmak için tersine mühendisliğe ihtiyaç duyulmaz.Tersine mühendislikle uğraşanların bir genel motivasyonu rakiplerin ürünlerinin patent koruması veya telif hakkı koruması taşıyıp taşımadığıdır.

    Tersine Mühendisliğin Türleri ve Uygulamaları

    Bilgisayar destekli tasarım (CAD) daha popüler hale geldikçe, tersine mühendislik, 3D bilgisayar destekli tasarım (CAD), bilgisayar destekli üretim (CAM), bilgisayar destekli mühendislik (CAE) ve diğer yazılımlarda kullanılmak üzere, varolan parçaların üç boyutlu sanal modellerinin yaratılması için kullanılabilir bir metod haline gelmiştir. Tersine mühendislik işlemi bir objenin ölçümünü ve ardından üç boyutlu model olarak oluşturulmasını içerir.Fiziksel objenin boyutları, koordinat ölçme makinesi (Coordinat measuring machine, CMM), üç boyutlu üçgenli lazer tarayıcılar, üç boyutlu yapısal ışık sayısallaştırıcılı tarayıcı veya bilgisayarlı tomografi gibi üç boyutlu tarama teknolojileri kullanılarak ölçülebilir. Genellikle bir nokta bulutu olarak temsil edilen Ölçülmüş veri kendi başına, topolojik bilgi eksikliği taşır ve bu yüzden sıklıkla, üçgen kaplı ağ veya bir CAD modeli gibi daha kullanışlı bir formata dönüştürülür. Nokta bulutları bir çok üç boyutlu yazılımla uyumlu değildir, bu yüzden Imageware Rapidform veya Geomagic gibi uygulamalar nokta bulutlarını; 3D CAD, CAM, CAE gibi uygulamalarda veya görselleştirmede kullanılabilecek formatlara dönüştürür.

    Tersine mühendislik, sıklıkla, diğer milletlerin teknolojilerini, aletlerini, bilgilerini veya sahada sıradan askerler tarafından toplanan veya haberalma operasyonlarıyla toplanan bilgi parçalarını kopyalamak için, ordu tarafından sık sık kullanılır. İkinci Dünya Savaşı’nda ve Soğuk Savaş’ta sıkça kullanılmıştır. II. Dünya Savaşı’ndan çok bilinen örnekler şunlardır:

    • Jerry bidonu:İngiliz ve Amerikan kuvvetleri Almanların Jerry can denen ve mükemmel bir tasarıma sahip olan benzin bidonlarına sahip olduklarını fark ettiler. Bu bidonların kopyaları üzerine ters mühendislik uyguladılar. Bu bidonlar popüler olarak “Jerry can” olarak bilinirler.
    • Tupolev Tu-4:Japonya görevi sırasında bir çok B-29 Superfortress bombardıman uçağı Sovyetler Birliği’ne (SSCB) inmek zorundaydı. Böyle stratejik bir bombardıman uçağına sahip olmayan Sovyetler B-29’u kopyalamaya karar verdiler. Birkaç yıl içinde neredeyse mükemmel bir kopyası olan Tu-4’ü geliştirdiler.
    • V2 Roketi:V2 ve bağlantılı teknolojilerin teknik dökümanları savaşın sonunda batılı müttefikler tarafından eldeederiz.tersine mühendisliktekişi edildi.Sovyet ve yakalanmış Alman mühendisler, daha sonra R-7 Semyorka’nın öncüsü ve uzay programının başlangıcı olan, kendi klon roketleri R-1 i yapmak için ele geçirilen dökümanlardan yola çıkarak, yeni teknik dökümanlar ve planlar oluşturdular.

    Birlikte işlerlik amacıyla (örneğin; belgesiz dosya formatlarını veya donanım ekipmanlarını desteklemek için) yapılmış tersine mühendislik donanım veya yazılımlarının, patent sahipleri çoğunlukla buna karşı çıksa da ve kendi ürünlerinin herhangi bir sebeple ters mühendisliğe uğramasını engellemeye çalışsa da, legal olduğuna inanılır.

    Benzer şekilde, Yazılım mühendisliğindeki kara kutu testinin ters mühendislikle pek çok ortak noktası vardır. Testi yapan çoğunlukla uygulama programlama arayüzüne sahiptir, fakat amaçları, ürüne dışarıdan saldırarak, hataları ve belgelendirilmemiş özellikleri bulmaktır.

    Güvenlik denetimi, kopya korumanın kaldırılması(yazılımı kırma, krekleme), tüketici elektronik eşyalarında bulunan erişim önlemesini giderme, gömülü sistemlerin (motor yönetim sistemleri gibi) uyarlanmasında, ev içi tamirat ve uyarlamalarda, düşük maliyetli arızalı donanımlarda(bazı grafik kartları çipleri gibi) ek özelliklerin sağlanmasın da veya sadece merak gidermek gibi amaçlar, tersine mühendisliğin diğer amaçlarındandır.

    Tersine mühendislik aynı zamanda, işletmeler tarafından, kendi ürünlerinin üç boyutlu dijital kayıtlarını yapmak veya rakiplerinin ürünlerine değer biçmek için, var olan fiziksel geometriyi dijital ürün geliştirme ortamlarına aktarmak için kullanılır. Örneğin; bir ürünün nasıl çalıştığını, ne yaptığını hangi bileşenlerden oluştuğunu; analiz etmek için, maliyetini hesaplamak için ve potansiyel patent ihlalini saptamakta kullanılır.

    Değer mühendisliği işletmeler tarafından kullanılan benzer bir aktivitedir.Yapı çözümlemeyi ve ürünü analiz etmeyi içerir ancak asıl amacı maliyeti azaltmak için fırsatlar bulmaktır.

    Son olarak, tersine mühendislik sıklıkla özel bir aletin dökümanlarının kaybolması (veya hiç yazılmaması) ve onu inşa eden kişinin artık şirket için çalışmaması sebebiyle yapılır.Entegre devreler çoğunlukla modası geçmiş, tescilli sistemler üzerine dizayn edilir, bu şu anlama gelir; işlevselliği yeni teknoloji ile birleştirmenin tek yolu, var olan çip üzerinde tersine mühendislik yapmak ve onu yeniden dizayn etmektir.

    Yazılımda Tersine Mühendislik
    Yazılımlarda “tersine mühendislik” terimi insandan insana değişir; Chikofsky ve Cross çeşitşi kullanımları araştıran ve bir taksonomi tanımlayan bir çalışma yapmışlardır.Bu çalışmaya göre;

    Tersine mühendislik bir sistemin daha yüksek bir soyutlama seviyesinde temsilini yaratmak için analiz edilmesi işlemidir. Aynı zamanda geliştirme çevriminde geriye gitme olarakta görülebilir. Bu modelde, uygulama fazının çıktısına(kaynak kodu formunda) tersine mühendislik uygulanarak, geleneksel şelale modelinde(waterfall model) geri dönerek, analiz fazına geri gidilmiştir.

    Tersine mühendislik sadece, modifiye edilmediği(ki nu onu yeniden yapılandırma anlamındadır) düşüncesi altında, yazılım sistemini inceleme işlemidir.

    Pratikte, tersine mühendisliğin iki çeşidi bulunur.Birinci durumda, yazılım için kaynak kodu zaten vardır, fakat programda kötü şekilde yazılmış veya yazılıp ta artık geçerli olmayan yüksek seviye görünüşlerinin bulunmasıdır.İkinci durumda yazılım için uygun kaynak kodu yoktur ve yazılım için kaynak kodunu bulmak için yapılan bütün teşebbüsler tersine mühendislik olarak adlandırılır.Bir çok insan bu ikinci terime aşinadır.

    Yazılımların tersine mühendisliği, telif hakları ihlallerinden sakınmak için temiz oda dizaynı tekniği denen(clean room design) teknikten faydalanır.

    İkili Yazılım
    Bu işlem bazen Tersine kod mühendisliği(Reverse Code Engineering,RCE) olarak da adlandırılır. Bir örnek olarak, java platformu için ikili kodların kaynak koduna dönüştürülmesi Jad(Joint Application Development) kullanılarak yapılabilir.Tersine mühendisliğin ünlü bir örneği yıllardır bilgisayar donanım platformuna hakim olan eden tarihi IBM PC compatible endüstrisindeki PC BIOS ‘un llk IBM kaynaklı olmayan uygulamasıdır.

    Amerika’da Digital Millennium Copyright Act adlı telif hakları yasası, önleme yasağından muaf olarak dosya formatlarının birlikte işlerliğini hedefleyen bazı tersine mühendislik uygulamalarını yasaklar fakat yargıçlar anahtar davalarda bu kanunu göz ardı eder, çünkü kullanım kısıtlamalarını önleyebilmekte fakat giriş kısıtlamalarını önleyememektedir. Önlemedeki kısıtlamaların yanında, yazılımların tersine mühendisliği Amerika’da telif hakkı kanunundaki adil kullanım istisnasıyla korunmaktadır.

    Microsoft Windows sistemlerini çalıştıran sistemlere onu çalıştırmayan sistemlerle dosya paylaşımına izin veren Samba yazılımı tersine mühendislik yazılımının klasik bir örneğidir, çünkü Samba projesi Windows’un dosya paylaşımıyla ilgili yayınlanmamış bilgiyi, Windows kullanmayan bilgisayarlar buna öykünebilsin diye, tersine mühendislikle bulmak zorundaydılar.Wine yazılımı projesi Windows API için aynı şeyi yapar ve OpenOffice.org bunu Microsoft Office dosya formatları için yapar.Reactos projesi ise ikili(ABI ve API) uyumluluğun NT dalının günümüz Windows işletim sistemine, yazılıma ve Windows için yazılmış sürücülerin bir temiz oda ters mühendislik uygulanmış GPL açık kaynak karşılığında çalıştırılmasına izin vererek, sağlanması konusunda daha hırslıdır.

    İkili Yazılım Teknikleri
    Yazılımlarda tersine mühendislik çeşitli yöntemler kullanılarak yapılabilir.Yazılımlarda tersine mühendisliğin üç ana grubu şunlardır;

    • Bilgi değişimi gözleminin analizi, standart tersine mühendislikteki en yaygın yöntemdir, bus analyzer ve packet sniffer denen yazılım ve donanımların kullanımını içerir, örneğin, bilgisayar ağına bağlantıya giriş için ve verilere erişmek için.Ağ davranışı daha sonra, o davranışı temsil eden tek uygulama olarak analiz edilebilir.Bu özellikle sürücülerin tersine mühendisliğinde faydalıdır.Bazen, gömülü sistemlerdeki tersine mühendislik üretici tarafından üretilen aletlerden yardım alır; örneğin JTAG portları veya diğer hata ayıklayıcı metodlar.Microsoft Windows’ta, SoftICE gibi düşük seviye hata ayıklayıcıları popülerdir.
    • Bir ayırıcı kullanarak ayırmak (Disassembler), sadece makine dili anımsatıcıları kullanılarak programın kendi ham makine dilinde okunup anlanşılmasıdır.Bu herhangi bir bilgisayar programına uygulanabilir, fakat özellikle makine kodlarına alışık olmayan biri için uzun bir zaman alır.Etkileşimli ayırıcı (İnteractive Disassembler) ise popüler bir araçtır.
    • Kaynak koduna geri dönüştürücü kullanarak dönüştürme, değişen sonuçlarla, sadece makine veya byte kodunda uygun olan bazı yüksek seviye dillerinde kaynak kodunun yeniden yaratılmasını deneyen bir işlemdir.

    Kaynak: Vikipedia

    WHM de Sorry, a DNS entry for *.com already exists Hatası

    WWWAcct 10.1 (c) 1997-2006 cPanel, Inc.

    Sorry, a DNS entry for xxxxx.com already exists, please delete it first (from all servers in the dns cluster)

    Merhabalar, eğer WHM de böyle bir hata alıyorsanız endişelenmeyin, bu hesaba ait DNS kaydı sunucuda bulunduğundan dolayı hesap açılamamaktadır. Bu domaine ait bir hesap açmak istiyorsanız aşağıdaki işlemi uygulayınız.

    SSH ile root olarak;
    /scripts/killdns domain.com
    service named restart

    WHM ile reseller/root olarak;

    DNS Functions menüsü altından Delete a DNS Zone bölümüne girerek ilgili domaine ait dns kaydını silin.

    Kolay gelsin.