PHP & MySQL Dersleri

PHP öğrenmek için gerekli her konuyu farklı yazılarda yayınlamaya gayret gösterdim. Tüm konulara göre PHP derslerine aşağıdan ulaşabilirsiniz.  Haricen yazılmasını istediğiniz konuları iletişim sayfasından iletebilirsiniz.

Temel Düzey Dersler

Temel PHP Dersleri

  • PHP’e Giriş PHP ,sunucu tarafli calisan,dinamik ve interaktif website hazirlama konusunda cok guclu bir dildir.PHP cok yaygin olarak kullanilan,ucretsiz ve MICROSOFT’un ASP sine alternatif olabilen bir teknolojidir.
  • PHP Yazım Kuralları PHP scriptleri her zaman .anahtar dizimyle son bulur. Bu script arasında kalan bütün kodlar sunucu tarafından PHP scripti olarak yorumlanır ver derlenir.
  • PHP Değişkenleri Bir değişken geçici yada kalıcı olarak , sayı,dizi veya yazi-katarları gibi değerleri tutmak için kullanılır.Bir değişken tanımladığınız zaman scriptlerinizde defalarca kullanabilirsiniz
  • PHP – Operatörler Şimdi bütün operatörleri çeşitleri kategorilerine göre listeleyip,birer adet de örneklendirme yapalim.Aritmetik Operatörler
  • PHP-Koşullar Kosul ifadeleri(if,else,elseif)yazilan kodun farkli durumlarda farkli davranis gostermelerini saglar.
    Sıklıkla yazdıgınız kodun farklı hallerde farklı eylem gerçeklestirmeleri beklenir.
  • PHP – switch PHP’de program akışını yönlendirmekte kullandığımız bir diğer unsur, switch deyimidir. Adı anahtar anlamına gelen switch deyimi, verilen bir değişkenin değerinin sıraladığımız koşullardan hangisine uygun olduğunu sınar ve o koşula ilişkin komutları icra eder.
  • PHP – Loop PHP de Döngüler;kodun herhangi bir parçasını istenilen defa sayısı kadar yinelemesini sağlar.Sıklıkla yazdığınız kodun herhangi bir parçasını defalarca tekrarlamak ve istenilen seviyeye ulaştıktan sonra tekrarın sona ermesini istediğiniz olmuştur, yada bundan sonra olacaktır.
  • PHP – Fonksiyonlar Bu derste size kendi hakimiyetinizi kurmanız için , kendi fonksiyonlarınız yapmanız sağlanacak.Her durumda hazır fonksiyonlar kullanılmayabilir.
  • PHP – $_GET Metodu $_GET değişken get methoduyla veri alan formlardaki verileri ele alır, HTTP GET metodunun değişkenler dizisinin bir elemanıdır.Bir formdan gönderilen bilginin her kullanıcı tarafından erişilebilmesi için GET metodu kullanılır. (Tarayıcınızın adres çubuğunda görülür). Gönderilen bilgi miktarının bir limiti vardır. (max. 100 karakter gibi).
  • PHP – $_POST Metodu $_POST değişkeni post metoduyla çekilen verilerin ele alınmasını sağlar. $_POST değişkeni HTTP POST metodunun değişken dizisinin bir elemanıdır.

İleri Seviye

Gelişmiş Dersleri

  • PHP – Date() Fonksiyonu date() fonksiyonu tarih verisini daha okunaklı kılar,ve bilinen formata uyarlar (Örn:gün/ay/yil).
  • PHP – Include Server işleme koymadan evvel herhangi bir dosyayı ,include() yada require() fonksiyonları ile PHP dosyanızıa include-içe aktarım edilebilir.
  • PHP- Files PHP dilinde fopen() fonksiyonunu kullanarak dosya açılabilir.
  • PHP – Upload PHP ile ,sunucuya dosya yüklemek mümkündür.
  • PHP – Çerezler Cookie – Türkçesi ile çerez , kullanıcıyı ayırt etmeye yarar.
  • PHP – Sessions PHP dilinde Session , bir kullanıcı için ayar değişiklikleri ve hakkındaki bilgileri , almak ve özelleştirmek için kullanılır.
  • PHP- Email PHP yazacağımız yardımıyla direct olarak e-mail gönderebilir
  • PHP – Güvenli Email Önceki dersimizde güvenlik düşünülmeden hazirlanmış email gönderme formunu açıkladık.İnternet ne kadar verimli ve yararlı bir platform olsa da güvenlik düşünülmesi gereken en önemli konulardan biridir
  • PHP – Error Handling PHP dilinde hata ayıklama yöntemleri gayet basit ve güvenlidir.”php.ini” dosyasındaki error handling ayarını “1″ değerine dönüştürerek , proje dosyalarınızda bulunan hataları tarayıcınızdan izleyebilme imkanına sahipsiniz.
  • PHP – İstisna Yönetimi İstisna yönetimi , özel bir hata oluştuğu zaman kodun akışını değiştirebilir.
  • PHP – Filtreler PHP filtresi , kullanıcı girdileri gibi güvensiz kaynaklardan alınan verileri filtreleme işlemini gerçekleştirir.

Database – MySQL Dersleri

PHP Demoları

  • MySQL Giriş MySQL genellikle PHP ile birlikte kullanılan ücretsiz bir veritabanı sunucusudur. MySQL bir veritabanıdır.Veritabanı , bilgileri saklayan yapıları tanımlar.
  • MySQL Connect MySQL Veritabanına Bağlanma Uygulamanız sırasında veritabanına erişmek ve bilgi almak için öncelikle veritabanına bağlanmanız gerekir. PHP dilinde ,bu olay mysql_connect() fonksiyonu ile gerçekleşir.
  • MySQL Create Bir veritabanı bir veya birden çok tablo içerir. CREATE DATABASE ifadesi MySQL de veritabanı oluşturur.
  • MySQL Insert Mysql’de veri tabanını veriler yüklerken INSERT komutunu kullanıyoruz. Veri tabanımızda kitap adında bir tablo olsun ve tabloda; id,k_adi,yazar,yorum,onay,yayin_evi,baski_no sütunları yer alsın.
  • MySQL Select SELECT ifadesi veritabanından bilgileri seçer ve kullanıma hazır hale getirir. SELECT ifadesi veritabanından bilgileri seçer.
  • MySQL Where Where , Belirtilen kritere göre sorgu yapan ve bulunan sonucu seçen (SELECT) ifadedir. Belirtilen kritere göre sorgu yapan ve bulunan sonucu seçer.
  • MySQL Order By ORDER BY sözcüğü ile kayıtlı verileri belirten duruma göre dizilir.
  • MySQL Update UPDATE ifadesi , database(veritabanı) tablolarını yeniden düzenleme işlemini gerçekleştirir. UPDATE ifadesi veritabanındaki bilgileri düzenler.
  • MySQL Delete DELETE FROM ifadesi veritabanı tablosundaki kayıtları siler. Verileri PHP ile sorgulayıp işlemek için mysql_query() fonksiyonu ile sorgu yapılır.Bu fonksiyon MySQL başlantısına sorguyu gönderir.
  • MySQL Join MySQL işlemlerinde şimdiye kadar her seferinde sadece bir tablodan veri alımı yaptık.Çoğunlukla PHP-MySQL projelerinde bu işlemler bizim için yeterli olacaktır.Ancak daha kapsamlı projeler için aynı anda birden fazla tablodan işlem alışverişi yapmamız gerekebilir.MySQL JOIN olayı da bunun için vardır.
  • PHP – ODBC (Open Database Connectivity) ODBC(Open Database Connectivity) , bir veri kaynağına bağlanmayı gerçekleştiren bir uygulama arayüzüdür. ODBC Bağlantısı OluşturmakODBC bağlantısı ile birlikte, her türlü veritabanına , ağ üzerindeki herhangi bir bilgisayara bağlanmak mümkündür.

Demo Uygulamalar

PHP MySQL ve Ajax kullanarak yapılan basit uygulamalar bu ekranda listelenmektedir. Her uygulama için demo ve download bağlantıları yazıların altında yeralmaktadır.
Gelişmiş demo uygulamaların olduğu uygulamalar kategorisi , kod yapıları ve yazılım teknikleri açısından faydalı olacaktır.

45 thoughts on “PHP & MySQL Dersleri

  • Dersleriniz çok faydalı oluyor,yavaş yavaş php öğreniyorum.
    Çok çok teşekkürler.
    Belki bi’kaçtane örnek kod veya fonksiyon “ziyaretçi sayacı” gibi şeyler yayınlarsanız çok iyi olur.
    Yön göstermiş,olursunuz.
    Çok çok teşekkürşer.

  • Bir web çalışması üzerinde olduğumu daha önce belirtmiştim. Ancak web de dolaşırken kullanıcı tarafından genişletilebilir sitelerde şu iki çeşiti gördüm.
    İçerikleri veritabanından yönetmek. Örneğin kullanici koyumuz.com/index.php?sayfa=ana gibi get verisiyle bir sisteme giriyor ve veritabanıda o veriye göre yayınlacanak şeyi seçiyor.İkinci tür ise sayfa oluşturma taktiğiyle web üzerinden sayfalar oluşturuluyor ve yönetiliyor! Anladığım kadarıyla wordpress.com ve chip.com.tr siteleri bu sınıftan daha birçok site var tabii.
    Merak ettiğim şey bu iki içerik geliştirme yönetminin aralarında ne gibi farklar olduğu hangi yöntemin daha genişletilebilir ve aralarındaki avantaj-dezavantajlar ın neler olduğu?
    Bilgilendirseniz sevinirim.

  • Bahsettiğin konuyu açıkçası tam anlamış değişim şenol ,
    ikinci sayfa oluşturma taktiği derken neyi kastediyorsun , epey düşündüm hakkaten.

    Genel olarak şöyle bi cevap vermek evladır;

    Bi projede sistemin çalışması tamamen , geliştiricinin taktiğine kalmıştır. Kimisi uzun yolu tercih eder , kimisi de en pratik gördüğü metodu kullanır.Ben kişisel olarak yapılandırdığım içerik yönetim sistemimle yola çıkarım ve böylece vakitten ve emekten epey tasarruf ederim.
    url yoluyla get metodunu alma yönetiminde bahsetmişsin , ben açıkcası başka bir yöntem düşündüm ama bulamadım.
    Wordpress ve chip sistemleri de aynı şekilde çalışır. Ama MOD_REWRITE yöntemi ile (.htaccess) anlamlı url oluşturulur. Tekil sayfaları bir şekilde gönderdiğin bu veriye göre çekmek de sana kalıyor tabi ki.
    Umarım bir fikir vermişimdir…
    Kolay gelsin……

  • Aslında kastettiğim şey şey şu:
    örneğin bir sayfa ya girerken.
    index.php?resim_id=12 diye bir url ile gelir ve ziyaretçi bu sayfayı açtığında index.php dosyası resim_id değişkeninde gelen veriye göre yayınlanacak şeyi seçer ve yayınlar.
    Diğer yöntem ise tam bir url verilir. resimler/resim11.php gibi. İlki veri tabanından çekilir ama dosya oluşturulmaz. ara ikinci yöntem resimler/resim11.php dosyasını veritabanı ve scriptler üzerinden daha önceden oluşturmuştur.
    Bunların aralarındaki avantaj-dezavantajlar neler diye sormuştum. Ama siz MOD_REWRITE yöntemiyle anlamlı url oluşturulur deyince biraz kafam karıştı tabii. Daha yeniyim bundan itibarla anlaşılması zor veya mantıksız sorular sorabiliyorum kusuruma bakma.

  • daha açıklayıcı oldu bu sefer ki mesajın,

    şöyle anlatiim , bir wordpress blogunda bin adet yazı oldugğunu düşün. senin bahsettiğin ikinci yöntemi uygulamaya kalkarsak, 1000 ayrı php dosyası kullanmamız gerekicekti. Bu da mantıksız kaçar.Yani ,dinamik özelliğinin kaybedilmesi demek , boşuna vakit ve emek sarfiyatı demektir.

  • meraba benim bir sorum olacaktı. mesela bir sözlük sitesi için: kullanıcu “yüz” kelimesini arayınca,

    yüz: bir sayı
    yüz: bir organımız.

    diye alt alta iki ifade cıkıyor. yüz kelimesine tıklayınca da yuz.html ye gidiyor ve ayrıntılı bilgi gösteriyor.

    şimdi ikisinin de farklı sayfaya gitmesi için yuz+bosluk olarak kaydettim. ve sayfası da yuz_.html oldu.

    ama php de yuz.html ile yuz_.html aynıymış galiba. çünkü yine aynı sayfaya gidiyor.

    ben farklı sayfalara gitmesini istiyorum. ne yapmalıyım.

  • selam,
    yaklasik 1 saattir bakiyorum,okuyorum ,yaziyorum,PHP..
    Ama olmuyor.
    Olayin özünü anlayamiyorum birtürlü.Java yida böyle anlamamistim.:(

    html ve css i anladim bi derece(sayfa olusturabiliyor ve yerlestirmeler yapabiliyorum..)

    Sorum su:
    Ev de php ögrenmek icin ve funktionlarin calismasi icin (msql) gibi (db-olusturma-mysqladmin..)neyapmaliyim.
    apachie-xammp i ev de yükledim fakat .php seklinde gözükmüyor dosyalar ve localhost index sayfamdaki basit bir yazi bile acilmiyor.”merhaba dünya:)”.
    Nerede hata yapiyorum?-eksik bir yükleme mi yapiyorum acaba?
    hergecen gün istegim azaliyor ögrenmek icin böyle olunca.
    Pes etmiyeyim diyorum ama insan baslangici ve olayin özünü anlamayinca yapacak bisey yok..:(
    Yardimci olabilirseniz cok sevinecegim-simdiden tesekkürler.

  • slm,
    Belkide bu ilk sorum olmaliydi..

    PHP sadece server de görüntülenebiliyorsa,internette deki birisi browserinde php yi nasil görüntüleyebiliyor..

    biz xampp i yüklüyoruz. herkes xammp i mi yükliycek evinde php leride birlikte görebilmek icin.?belkide suan cok sacma seyler soruyorum ama bilmeyince komik duruma düsebiliyor insan.:)ama anlamak istiyorum sadece.

    baglantilari ve funktionlari anlamadim.:
    html-php-mysql-db_ birbirleriyle nasil baglaniyorlar ve calisiyorlar.olmazsa olmazlar nedir.?
    bazen nerden bulastim bu internet programciligina diyorum..daha bulasamadan böyle seyler oldu.hayatim alt üst oldu:)..
    yardimci olsun birisi-sadece islevi ögreneyim gerisi zamanla olur biliyorum..
    iyi calismalar-tesekkürler.
    melih

  • Fatih arkadaşa cevaben.
    Kardeş yuz.html ile yuz_.html dosyaları aynı olamaz, İstersen başka örneklerde dene.
    Bağlantıda bir hata yapmışındır muhtemelen.

  • 😀 melih kardeş,Sayfa görüntülenmek istendiğinde php kodları sayfanın bulunduğu server tarafından işlenerek oluşsan sonuçlar html olarak bilgisayara gönderilir,bilgisayarda kullandığı programa göre (İnternet Explorer,firefox gibi) bu kodları çözümleyerek yayınlar 🙂 Örneğin bir php sayfasını php server dizini dışına taşıyıp çalıştırsan çalışmaz,çünkü onların yayınlanması için işlenip html kodlarına dönüştürülmesi gerekir.

  • Melih kardeş önce,bilgisayarına apache2triad php server programını kur,sonra programı kurduğun dizinin içideki htdocs klasörüne php tagları arasına echo “Oleeey celisti.”; yaz ve dene.php olark kaydet,sonra da internet tarayıcında localhost yazdıktan sonra dene.php ye tıkla çalışırsa server kurulumun tamamdır. yedincisenol@hotmail.com da yardım alabilirsin.

  • Melih kardeş sana tavsiyem apache2triad kurma, Xammp kur bunu kullanıyorum ben cok memnunum cok kolay apache2triad’kullanımından ..

  • abi derslere devam ogretmenimden daha iyisin bir de turk olup yurt disinda bu derslere girmek cok kotu oluyor kimseye tavsiye etmiyorum..
    ama kafaya koydum sayende ogrenicem bu isi

    yakinda derslerin yaninda her asamasini uygulama/anlatma yontemiyle bi php site/portal gibi bi calisma yaparsan cok makbule gecer eminim..

    calismalarinin devamini dilerim,
    Gurkan Bircan

  • Kendi adıma html ile yaptığım sitemin yetersiz kalacağını düşünerek php öğrenmeye karar verdim. Ama nette o kadar dağınık ve türkçe olmayan açıklama varki insanın kafası karışıyor. Bu nedenle gayret ve emeğiniz için teşekkür. Buradan öğrendiklerimi en kısa zamanda yeni kuracağım sitede kullanacağım. Ama biraz karışık hala. dolayısıyla öğrenmek zaman alacak. Türkçeniz ve gayretleriniz için tekrar teşekkür.

  • çok güzel bir sayfa, php ile ilgili yazılarınızı beğendim, boş bir vakitte sayfayı iyi bir incelemek lazım. 🙂

    Tebrikler.

  • hocam öncelikle teşekkür edrim verdiğiniz emekten dolayı.
    internette dolaşırken iyiki sizin gibi insanlarda var demek vazifem. artık herşeyin kirlendiği internet ortamında insanların neye nasıl neden güvenmelerini dürüstce verebiliyorsunuz.teşekkürler.
    sizden ticari bir firmanın ürünlerini satmak için kullandığı bazı güvenlik önlemlerini nasıl aldıklarını öğrenmek istiyorum. kişilerin size verdiği kredi kartlarının numaraları veya sayfalarda istenmeyen reklemları nasıl önleyebilirim bunu öğrenmek istiyorum eğer cevap verme zahmetinde bulunursanız birkaç sorum daha olacak
    tekrar bizlere verdiğiniz değerli bilgiler için teşekkürler

    yardenur akan

  • teşekkür ederim yardenur,

    öncelikle veri güvenliği konusunda ilk önce söylenmesi gereken nokta, çalışan kodların tümüne hakim olunmasıdır. Bir çok sitede bazı amaçlarla script( kod parçaları ) kullanarak sayfalarını zenginleştiriyor. Tabi ki kullandıkları kodların bazıları aynı zamanda sahibine hizmet etmesi için yazılmıştır. Açılan reklam pencereleri(popup) bu yüzden önlenemiyor. Bu yüzden ne iş yaptığından emin olmadığınız scriptlerden uzak durmanızı tavsiye ederim.

    Diğer konuda ise söyleyebilirim ki, kredi kartı bilgileri artık yasalar çerçevesinde de koruma altına alınmıştır. Sanal pos kullanan ticari firmalar da artık bilgileri kaydetse bile sadece kullanıcıların kullanım rahatlığı için saklayabiliyor ve kullanıcı istediği zaman kayıtlı kart bilgilerine tekrar kolayca erişebiliyor. Sanal pos güvenliğinden bankalar sorumludur. Yazılımcıların dikkat etmesi gereken tek nokta, sayfalarda çalışan kodlarda açık bırakmamak.E-ticaret sistemleri genel anlamda sağlam yürüyen bir platformlar halini aldı.

  • ben bir yardım isteyecektim
    şöyleki : öğrencilerimi veri tababnına kaydettim. daha sonra öğretmenlerimide veri tabanına kaydettim daha sonra ismin yazdığım öğrenci ekrana geldi ve ben bu öğrencinin notunu gireceğim. karşımda da secmeli açılır menu olmasını istiyorum ve bu menude öğretmenlerin isimlerini veri tabanından okuyup açılır menude listelesin ve ben hangi öğretmen veya ders adı neyse secersem o seçimi veri tabanına kaydetsin
    böyle bir şeye ihtiyaç duyuyorum teşekkür ederim

  • hocam, bilginizi bizlerle paylaştığınız için ve yardımlarınızdan dolayı teşekkür ederim.

    aslında oldukça yabancı olduğum halde dreamwaver ile kapsamlı bir site yapmak istiyorum ve maillerin doğrulaması veya üylik sisteminin ir yerinde kayıt bir başka gün üyelik işlemine devam etme gibi bana karmaşık gelen konularda nasıl yardım alabilirim veya hazırladığım basit bir kaç form ve sayfa düzenini karmaşık ve güvenli bir siteye nasıl dönüştürebilirim. istenmeyen reklamların erişemiyeceği güvenli bir site için nelere dikkat etmeliyim. hocam eğer zahmet olmayacak ise mailime yollayabilirsiniz

    saygılar
    yardenur

  • çok iyi bir kaynak sitesi derslerde bu kod ve diğer faydalı kaynaklar sayesinde daha bilgili ve basarılı oluyorum

  • C dilini biliyorum ama PHP’e yeni başladım. Bende bir soru soracaktım. çok aramama ragmen googlede tatmin edici bir sonuç bulamadım. Benim yapacagım sitede bazı konulara ziyaretçilerin yorum yapacagı bir (Yorum Yapın) köşesi olmasını istiyorum. Bunu nasıl yapabilirim. C mantıgıyla düşündügüm zaman biraz yetersiz kalıyor. Çünkü her mesaj aynı özellikte bir tablo içerisinde gösterilecek vs…gibi. Birde Yorum yapın köşesi her konunun altında olacak. Dolayısıyla tutulan kayıtlar farklı mı olacak.İncelemem için bir örnek kod yazarsanız sevinirim.

  • @celil
    Kusura bakmayın html kodlarının acık oldugunu hesap edemedim.

    Kardesim ilk olarak Yorum köşesinin bi hazırlamalısın daha sonra bunun baglantılarına gecebilirsin.Nasıl hazırlarım diye sorarsan kodlarını vereyim.

    HTML Diliyle=

    Yorumunuzu Yazın:
    Yorum Kutusu

    \

    Slashleri ( /,\ ) Kaldırmayı unutma..

    Bu sekilde bir yorum kutusu yapabilirsin ama baglantı tarzı sana kalmıs recipient value ile msn adresine yollayabilirsin veya asp ve php diliylede bi yere kaydedebilirsin..

    Saygılar..IKSHAI

  • Üstat bende bir arıza mı var yoksa yaşadıklarım benden kaynaklanmıyor mu? Linklere tıkladığım zaman beni bir webiket isimli siteye yönlendiriyor sanırım o site kapanmış veya domaini düşmüş, derslere nasıl ulaşabilirim?

  • Geri bildirim: » Php Dersleri Yayında
  • Güzel bir açıklama olmuş. Bir hevesle öğrenmeye ve araştırmaya başladım. Hadi hayırlısı

  • Bende php öğrenmek istiyorum, çok güzel yazmışsınız bakalım öğreneceğim umarım.

  • PHP dersleri gerçekten insanların çok merak ettiği bir konu. Konu ve anlatımınız çok güzel. Başarılar

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir