Çok güzel tavsiye olmuş bende tesadüf şuan bu yoldan ilerliyorum ancak şunu sormak istiyorum bazen bön bön bakıyoruz ilerledikçe aşina olurmuyuz ve kodları ezberlemek çok sürermi (insana göre değişir) ama normalde kodları ezberlemek vs ne kadar sürer ve en kolay nasıl olur
Esasında ezber çokta iyi değildir.
PHP Üzerinden örnek vermek gerekirse;
$db = new PDO("mysql:host=localhost;dbname=xxx;charset=utf8", "user","pass");
$query = $db->prepare("SELECT * FROM table WHERE ID = ?");
$query->execute([5]);
$count = $query->rowCount();
if ( $count ) {
$query->fetch(PDO::FETCH_ASSOC);
}Üstteki kodu bilmediğinizi varsayalım. Ezberlemek biraz zor gibi görünüyor olmalı. Ezberlemeye ezberlenir üstteki kod. Lakin üstteki kodu ezberlediğinizde, farklı şekilde kullanımlarda zorlanırsınız. O Yüzden temeliniz öğrenmeye dayalı olsun. Kodun örneklerini her yerden bulursunuz, mantığını öğrenmeniz sizin için çok daha iyi olur. Üstteki kodu açmak gerekirse;
$db değişkenine PDO Classını açtık ve veritabanı bağlantımızı kurduk. PDO ile veritabanı bağlantısı kurmanın temelini anladıktan sonra, üstteki kodu kullanarak db bağlantısı kurabilirsiniz.
Sonrasında sorgumuzu hazırladık ve query değişkenine attık. Güvenlik önlemlerinden dolayı prepare ve execute kullandık. Kullanıcıdan herhangi bir veri almadan işlem yapacaksak direkt query methodunu kullanarakta sorguyu çalıştırabilirdik. Sadece bunu ezberlemiş olsaydık, bundan bi haber olabilirdik.
Sonrasında execute methodunu kullanarak sorgumuzu çalıştırdık. execute methodunun içerisinde bir dizi var ve 5 değerini vermişiz. Bu ne anlama geliyor ? üstteki prepare methodunun içerisine yazdığımız string ifade esasında bir sql komutu. Veritabanına bağlandık, table tablosundan tüm sütunları çekeceğimizi söyledik. Tabiki sadece 5. ID Numarasına sahip satırı çekeceğimizi belirttik. 5. ID Numarasını ise execute içerisindeki dizi içerisinde belirttik. Birden fazla veri almak isteseydik;
"SELECT * FROM table WHERE ID = ? or WHERE ID = ?" veya "SELECT * FROM table WHERE ID IN(?,?)"
Gibi bir ifade kullanabilirdik. Bu sefer execute methodunu şu şekilde değiştirmemiz gerekecekti.
$query->execute([
5,
6
]);
Şöyle bir kullanımda yapabilirdik:
"SELECT * FROM table WHERE ID IN(:val1,:val2)"
$query->execute([
"val1" => 5,
"val2" => 6
]);
Eğer ezbere gitmiş olsaydık, yapıyı, temelini öğrenmemiş olsaydık, bu tarz farklı işlemleri yapamayabilirdik.
$count değişkenindeyse satır sayısını çekmiş olduk. rowCount() methodu PDO Class'ında bulunan bir methoddur.
if ( $count ) dememizin sebebiyse, eğer değer 0'sa, yani 5. ID veritabanında mevcut değilse, 0 = false anlamına geldiğinden dolayı if bloğu çalışmayacak. Eğer mevcutsa, id'si 5. olan satır sayısını döndürecek. 1 veya 1den fazla tam sayı döneceği için true olmuş olacak ve if bloğumuz çalışacak. Sonrasında ise pdo class'ındaki fetch methodu ile ilk eşleşen veriyi çekiyoruz.
Toparlayacak olursak; ezberden ziyade öğrenerek işlem yapmanızı öneririm. Neyin ne için kullanıldığını, alternatifinin neler olduğunu bilerek kullanmanızı öneririm.
Örneğin, üstteki kodları ve benzerlerini belkide 10.000. yazışımdır

İlk zamanlarda hiç kimse çatır çatır yazamıyordu tabiki.
İlgili kodların ne işe yaradığını, nasıl, nerelerde kullanmanız gerektiğini öğrendikten sonra ise; ilk etaplarda kodlara baka baka yazın. Ama mantığını anlamadan geçmeyin. Mantığını, ne işe yaradığını anladıktan sonra bakarak yazın sürekli. Sonrasında hiçbir yere bakmadan bizzat kendinizin yazabildiğini göreceksiniz