awoken adlı üyeden alıntı:
mesajı görüntüle
PHP PDO Veritabanı Yönetim Class'ı
20
●449
- 03-10-2020, 14:53:21Evet aynen hocam zaten wp'nin fonksiyonları sayesinde bir çok şeyine mantığına aşinayım ama hani bazı yerler mantık değil bilgi istiyor. Onları da tam olarak ne olarak aratacağımı çözemiyorum Türkçe kaynak pek olmadığından. https://prnt.sc/usen1q bu benim tablom bu wp'nin tablosu https://prnt.sc/usenrc wp de kırmızı alanla işaretlediğim yerler benzersiz diyor lakin onlar hep benzer değeler alıyor bu resimde id ler bir https://prnt.sc/useo50 mesela 2. bir üyelik yok ama olsa meta_keylerde aynı şekilde olacak sadece biri user_id => 1 , meta_key => is_admin ise diğeri user_id => 2 , meta_key => is_admin şeklinde olacak. Ama niye benzersiz verildi anlamadım. birde bu ' tek tırnak benzeri şey var sql sorgularında bu ne tam olarak.
- 03-10-2020, 15:01:08Geliştirme kısmında da sağlık olsun hocam. Hani benim istediğim bir Türkçe kaynak ya içinde ki kullanım ingilizce olsa bile anlatımı ve yapımı Türk olması nereye baksam hep yabancı framework kaynak yok diye ağlıyoruz ama kaynak üretmeye çalışmıyoruz millet olarak çok değişik bir milletiz şahsen benim gördüğüm rabbena hep bana adam alacak sadece alacak hiç bir şey vermicek lakin bilmiyorki vermeden almak Allaha mahsustur ha ben bunu geliştirir paylaşırım ama ben üst düzey veya üst düzeye yakın bir bilgiye sahip değilim yani en azından beni güvenlik ve performs bu iki madde de desteklicek yönlendiricek birisi lazım bunun için Tayfun hocaya mail atmayı düşünüyorum umarım olumlu dönüş alırım.
- 03-10-2020, 15:07:57Üyeliği durdurulduBu duruma tam ne deniyor bilmiyorum ama SQL'de birden fazla sütun'u birbirine bağlarak MULTIPLE UNIQUE yapabiliyorsunuz. Şöyle anlatayım:Misafir adlı üyeden alıntı: mesajı görüntüle
user_id ve meta_key birleşik unique olsun, veri tabanı içeriği de şöyle olsun:

Bu durumda insert denemeleri yapalım:
user_id = 1, meta_key = 'deneme' => Insert edemez.
user_id = 2, meta_key = 'deneme' => Insert eder.
user_id = 1, meta_key = 'test' => Insert eder.
SQL sorgularında tek tırnak stringleri belirtmek için kullanılıyor. ` den bahsediyorsanız backtick diye geçer, Mysql'e ait keywordlardan birini sorgu içinde kullanacak iseniz bunu kullanmanız lazım. Örnek verelim, key MySQL'e özel ayrılmış bir kelimedir. Siz sütun adını key yaparsanız insert ederken şöyle kullanamazsınız:
SET key = 'value'
Şöyle yapmanız lazım:
SET `key` = 'value' - 03-10-2020, 15:12:01Anladım hocam çok teşekkür ederim ben wp'ninkine bakıyorum benzersiz diyor e benzersiz denilince aynı şeyin insert olmadığını biliyorum bir ihtimal olur mu? Diye deniyorum olmuyor ama wp'de oluyor bunu nasıl aratacağımı da bilemedimawoken adlı üyeden alıntı: mesajı görüntüle
Ama şimdi biraz aydınlandım yani tek başına benzersiz değil de çift veri benzersiz yani aslında user_id ve meta_key bir bütün o tabloda bu mantık ile.
- 03-10-2020, 15:33:56Şahsi fikrimi değerlendirdiğimde evet güzel bir başlangıç. Lakin ben artık oturayım şuna kütüphane yazayım buna kütüphane yazayımı vs. artık geçmiş bulunmaktayım. (Bknz: Laravel) Taylor dediğimiz adam koca bir framework'ü tek başına yönetiyor gibi görünsede kullandığı paketlerin hemen hepsi symfony vb. communityler tarafından geliştiriliyor. Taylor ne yapıyor peki; Olayın civcivli kısmıda burası. Misal Guzzle örneğinden yürüyelim. Adam o kadar mükemmel bir ara katman hazırlamış ki Guzzle paketini kurduktan sonra Http facade'ini dahil edip Http::get vb. şekilde aklınıza gelecek bütün "kanser" olabilecek işlemleri düzeltmiş. Peki bu adamın aklına mı geliyor herşey? Hayır tabi ki, Pull Request'ler ile insanların geliştirmelerini alıp direkt ekliyor veya gözüne çarpan hataları düzeltip kendi eklemiş gibi gösteriyor (Bu konuda sıkıntıları vardı bu adamın ama büyük ölçüde aştı. Geçen gün Laravel 8 için bir commit atmış ve Adının olduğu alanı silmişti üstelik "Unneeded" yazarak...) Diyeceğim o ki bence bu ve benzeri konularda "fetişist" bir açıyla yaklaşmıyorsanız amerikayı yeniden keşfetmeye gerek yok. Sırf bu eloquent yapısı onlarca, belki yüzlerce insanı Laravel'e bağladı. Laravel tercih etmeyebilirsin ama Eloquent'i kullanmak için Laravel kullanmak zorunda da değilsin. Eloquent'i standalone kullanmak için Türkçe döküman dahi mevcut. Umarım yeni adım attığınız bu yolda aydınlatıcı olabilmişimdir...
Şahsi olarak ise artık özel talep olmadığı sürece PHP'den kaçınmaya başladım... - 03-10-2020, 16:01:48Aşina olduğum bir dil olduğundan öğrenmek istiyorum hocam.picpoket adlı üyeden alıntı: mesajı görüntüle
- 03-10-2020, 16:24:40O zaman bunlarda önerilerim olsun : )Misafir adlı üyeden alıntı: mesajı görüntüle
https://refactoring.guru/design-patterns/php
https://www.guru99.com/object-oriented-programming.html - 03-10-2020, 16:31:25Teşekkürler hocam birde içinde üyelik sistemi bulunan basit bir blog sistemi var mı? Bildiğiniz çok basit yani bir sürü dosya olmasın baştan sona incelemek istiyorum.picpoket adlı üyeden alıntı: mesajı görüntüle
@picpoket; Hocam birde bu paket yönetim sistemleri tam olarak ne işe yarıyor ve ne için kullanılıyor şimdi bunu linuxda biliyorum uygulamaları yüklemek için kullanıyoruz ama bunu php için mesela neden kullanıyoruz yani direkt siteden indirip kurabiliyoruz sonuçta
yani benim anlamadığım bir amacı var ve bunu merak ediyorum.
- 03-10-2020, 17:00:47Forumda Composer ile ilgili açıklama var: https://www.r10.net/php/1214936-comp...ullanilir.htmlMisafir adlı üyeden alıntı: mesajı görüntüle
Bende örnek olarak şöyle bir şey geçeyim;
Geliştirdiğimiz projelerde birçok kütüphaneye ihtiyaç duyarız ve bu kütüphanaleri projemize ekleriz. Composer ile tek komutla bu kütüphaneyi projeye dahil edebiliriz. Bu kütüphaneler sürekli geliştiriliyor,güvenlik açıkları gideriliyor performans artırıcı güncellemeler yapılıyor bir üst versiyonları çıkarılıyor bizimde bu güncellemeleri almamız gerekiyor aksi takdirde projemizde güvenlik açığı oluşabilir, performans açısından istediğimizi alamayabiliriz, eski versiyonu kullandığımız için bu teknolojide geride kalmış olabliriz. Birden fazla kütüphane kullandığımız için bu kütüphaneleri tek tek projemize eklemek veya projede bulunana kütüphaneleri güncellemek biraz zahmetli olucaktır işte tam burada devreye composer giriyor. Biz ihtiyacımız olan kütüphaneyi veya güncellemesini istediğimiz kütüphaneyi composer’a belirtiyoruz composer bizim yerimize istediğimiz kütüphaneyi projemize ekliyor veya güncelliyor. Bir örnek olarakta gözümüzde canlandıralım Bizim Php ile yazdığımız kod başka birinin Bilgisayarın’da çalışmayalbilir bu sorun Php versiyonundan kaynaklanıyor olabilir bizim kodumuz Php 5.4 üstünü destekliyordur ancak o kişi Php 5.3 kullanıyoır olabilir eğer biz projeye Composer aracını yüklemişsek o kişi Composer’ı kullanarak versiyon sorununa takılmadan projeyi çalıştırabilir.
Birazda alıntılayarak kabaca özet geçtim. Umarım doğru anlatabilmişimdir.

Ama şimdi biraz aydınlandım yani tek başına benzersiz değil de çift veri benzersiz yani aslında user_id ve meta_key bir bütün o tabloda bu mantık ile.