Bu konuda uzmanlığım yok ama bence $count 0 mantıksal olarak >0 dan daha keskin bir koşul oluyor. integer olduğundan emin olunması gerekiyor ama tabi.

merhaba arkadaşlar, yazdığım kodların daha düzenli olması adına, nce istisna ve hataları yazıp sonra yapmak istediğim işlemi yazıyorum bir sql sorgulaması yaptıktan sonra ise rneğin bir data aradığım zaman sorguyu çalıştırıp $stmt1->execute ; $count = $stmt1->rowCount ; if ($count > 0) { yapıyorum sonra datayla işimi grüp kapatıp else le de hatayı yazıyorum. acaba başta sylediğim gibi daha düzenli olması için nce if ($count 0) yapsam, bu, sistemde bir açık yaratır mı? if ($count 0) yeterli olmaz da if ($count 0 || ! is_int ) gibi bir şey mi yazmalıyım? kofcu tarafından 08/Haz/16 23:04 tarihinde düzenlenmiştir ben de sevgiden yanayım...

cevaplar için teşekkür ederim. kendimi anlatabildim ama değil mi? direk somut rnek vermem gerekirse login formunda profili çekerken girilen kullanıcı adının nce olup olmadığına bakılıyor. varsa şifreyi karşılaştırıyor vesaire. varsa için if($count>0) yapmak yerine yoksa error ver exit yap şeklinde if ($count 0) mi yapsam diye düşünmüştüm. ayrıca evet başlığı yanlış yazmışım nedense :) "||" için o mantığı bilmiyordum teşekkürler. soru sorma amacım olur da bi şekilde hata vesaire olabilir mi? mesela bir şekilde bir kullanıcı $count değişkenini '1 1 || 0' gibi bir şey gnderip bi açık oluşturmuş olabilir mi gerçi bu paranoyak mantıkla aynı şey kodun her yerinde olabilir :) bu mesajı yazarken de düşündüm ki evet ya gereksiz kasıyorum, sonuçta çoğunlukla $count>0 olacaktır. gereksiz yere $count'ın 0 olup olmadığına bakmış olur o zamanlarda, gereksiz işlem yapmış olur server. ben de sevgiden yanayım...

if ($count 0) yeterli olur, boşuna oyalanma buralarda. Ayrıca postun içeriği değil ama başlıktaki iki ifade birbirinin alternatifi değil, başka şeyleri ifade ediyor. if ($count 0 || ! is_int ) bu sorguda da iki ifadenin yerini değiştirirsen daha mantıklı olur. || işleminde ilk ifade true ise ikinciye hiç bakılmıyor olmalı. Bu case'de ilki false olsa bile ikincinin true olma ihtimali bir işine yaramaz. İlk ifade true ise zaten ikinciye bakılmaz vs.. Sen hiç kaval çaldın mı?

Tabi. Temiz kod yazmak iyidir. Gnlü ferahlatır, bakış açısını açar. :) Sadece bi imza..

Tabi. Temiz kod yazmak iyidir. Gnlü ferahlatır, bakış açısını açar. :) aynen nceki mesajında verdiğin rnek tarzı bir şey yazmak için bu işe girdim hocam. yoksa if if if else else else ile de işimi grüyordum :) bunun dışında yine düzenli kod yazmak için zellikle return kullanımını keşfedince else'leri rafa kaldırdım :) ben de sevgiden yanayım...

Sınıf içindeki fonksiyon olur, sınıf dışındaki fonksiyon olur, fonksiyon kullanmak lazım. if { if { if } } gibi bir yapı ya da if yerine function birFonksiyon { if if if // # İşlemler, işlemler.. } gibi temiz birşeyler yazmak çok daha güzel olacaktır. PcK0 tarafından 08/Haz/16 23:47 tarihinde düzenlenmiştir Sadece bi imza..

@kofcu Sql Injection için her bir formu manuel kontrol etmek kolay değil gibi. Zaten bir sürü validation + kontrol olacaktır. Bu zahmetlerden de kurtarıp ayrıca bir sürü fayda daha sağlayacak bir framework kullanmak mantıklı olabilir bu konuda. En azından bütün bu ıvır zıvır ile uğraşmaktansa doğrudan konuya odaklanıp problemini çzebilirsin / işi geliştirebilirsin. @PcK0 Ben olaya clean code olarak bakmamıştım, güzel noktaya değinmişsin. Ayrıca Object Calisthenics prensiplerine de uygun oluyor kod byle olunca. Bknz: ilk iki madde: http://williamdurand.fr/2013/06/03/object-calisthenics/ Sen hiç kaval çaldın mı?