PHP yi bir dnem sabah gazetesinin web sitesini yaparken kullandım. 1 haftada kküne kadar ğrendim diyebilirim tüm script dilleri gibi çok kolay. Şu ara embarcadero HTML5 yazılımı ile kullanmaya çalışıyorum hem çok pratik hemde alışık olduğum bir IDE. Nush ile uslanmayanı etmeli tekdir, Tekdir ile uslanmayanın hakkı ktektir!

ben vaciz hane bildim ile en çok yaptığım hatayı syleyeyim db de 1 sutun olsun id isim 1 asaa 2 bbbb 3 ccccc bunların sitede alt alta sıralamak için sakın ama sakın for içinde WHERE id=1 şeklinde tek tek çağırmayın bunun yerine array ile sraıalamyı kullanın hem daha az sql sorgusu oluşuyor ve performansı etkiliyor hemde silme değişirme gibi eylemelrde daha az sorun çıakrıyor I am Jack's inflamed sense of rejection

Eski sürümlerde magic_quotes'a dikkat et. Açıksa birde üstüne sen tekrardan escape yaparsan temizlik işi uğraştırır. Olabildiğince yeni sürümlerde çalışmaya çalış. Hazır script, kod parçası falan kullanacağın zaman da güncel olanları bulmaya çalış. Eskileri yeniye uydurana, onların zamanındaki sıkıntılara gre alınan nlemleri çzene kadar akla karayı seçersin. Unutma ki o zamanki açıkların bir çoğu şimdi daha kısa yollardan ve daha kolay şekilde nlenebiliyor. Gereksinim duymadığın yerlerde sistem fonksiyonlarını kapat. Sistem fonksiyonlarından kastım exec gibi sistem üzerine etki edebilecek fonksiyonlardır. Büyük projelere girişeceğin zaman script düzeni, veritabanı etkileşimleri, yazıları çıktılarken tırnak kullanımları gibi durumlarda nasıl davranman gerektiği konusunda tecrübe edinmek için wordpress tarzı hazır scriptleri incelemeni, kurcalamanı tavsiye ederim. Hatta bilgin varsa oop tarzı kodlama yapmanı neririm. Ama lütfen herşeye, ota boka class yazmaya kalkma. Yerine gre kullanırsan işini kolaylaştırır, kullanmazsan uğraşına uğraş ekler. Hazır classlar yerine gre işini kolaylaştırsa da bir çoğunun çp olduğunu ve bilgi, isim gstermek için hazırlandığını unutmamak lazım. Benim tavsiyem yeterli hale geldikten sonra kendi sınıfını yazarsan çok daha işini grür. Hazır sınıfların yapısını çzene kadar, yeterli tecrübeyi sağlayana kadar php'yi baştan sona ğrenip daha iyisini daha kısa sürede yazabilecek seviyeye gelirsin. Eclipse ve netbeans ücretsiz ve faydalı 2 ide'dir. Fakat php ğrenirken elini alıştırmak için notepad++ gibi kapsamlı editrleri kullanmanı neririm. Çalışacağın her ortamda her an ide'ler hazır bulunacak diye bir durum da yok. Sürekli eclipse ile yazan adam tamamlayıcılara, hazır kod bloğu oluşturuculara bağımlı hale gelirse oturup notepad'de 2 satır kodu 1 saatte hazırlayabilir. Tedbirli olup, işi bilmek ama işe gitmemekte fayda var :) Yeni sürümlerde bir çok komut duplicated hale geliyor. Yani yerini yeni ve daha işlevli fonksiyonlara bırakıyor . Bunları php. net'ten takip edip scriptlerini ona gre düzenlemen lazım. Bu duplicated komutların uyarıları 5. x gibi ara sürümlerde sorun teşkil etmezken php 6 gibi tam sürümlerde tamamen çalışmayacaklarını ve direk fatal error seviyesinde hataları alacağını unutma. Dizi yapılarını grüntülerken print_r yerine var_dump kullan. Daha grsel ve etkili çıktı alırsın. empty gibi komutlar değişken içeriğinde 0 gibi değerleri de null olarak kabul eder. Dışarıdan bu şekilde veri alacağın zaman buna dikkat et. Olurda kullanıcının 0 girmesi gereken bir alan olur, sen de empty ile kontrol etmeye çalışırsın. Hata da almayacağın için nerede hata yaptığını bulman uzun zaman alır. Bunun gibi değerler php. net'teki dkümanlarda detaylı var. Orayı inceleyebilirsin. Veritabanı işlemlerinde eski stil normal bağlantı yaparken sql injection'a dikkat et -ayrıca bunu sylememe lüzum yoktu ama yazının diğer cümleleri nemli-. Bu konuda şu dkümanı (http://tahribat.com/Dokuman-Php-Ile-Basit-Sql-Injection-Onleme-Yontemleri-417/) yazmıştım. Buradaki bilgiler işini grecektir. Ayrıca bunlarla uğraşmayıp daha stabil kullanım için pdo sınıfını kullanmanı neririm. En ktü hala daha klasik kullanmak istiyorum ben diyorsanız mysql yerine mysqli kullanın. Mysql sınıfının gelişimi durdu ve çıkacak ilk tam sürümde tedavülden kalkıp yerini tamamen mysqli'ye bırakacak. Ona buna, herşeye değişken tanımlamaya lüzum yok. POST ve GET dizileri ile gelen verileri değişkene atamak uzun isimlendirmelerde veya okunabilirliği artırmak açısından faydalı olabilir. Fakat normal çıktı alırken bir dizi elemanını gstermek için ayrıca değişken içine almamıza lüzum yok, dizi zaten bir değişkendir. echo "dizi elemanı $dizi " şeklinde kullanabilirsiniz. Php. net'in php temelleri blümünde bu tırnak konusuna güzelce değiniliyor. Bu çoğu kişinin atladığı bir konu fakat yerine gre kullanımlarda işi hatırı sayılır şekilde kolaylaştırıyor. Çoğu zaman sırf tek tırnak arasına alma inadından birleştirmelerle koca satırın okunaklığı yerlere iniyor. Tek tırnak yapısı gereği faydalıdır. İçindekileri direk string olarak yorumladığı için ayrıca değişken var mı yok mu yoksa varsa çzümlemek gerekiyor mu şekilde ekstra işlem yapmaz. Bu açıdan büyük projelerde performans artışı bile sağlayabilir. Fakat ufak çaplı projelerde, sayfada 2 satır çıktı alınacak yerde bu şekilde kullanmaya çalışmanın bence lüzumu yok. Hataları error_reporting veya @ kullanarak hataları bastırmak sağlıklı bir yntem değil. Çpü halının altına süpürtmekten farkı yok. O hataların çıkabileceği yerlerde nlem almak, gerekiyorsa hatanın çıkmaması için birkaç ekstra sorgu eklemekte fayda var. Bunun gibi çok şey var anlatılabilecek. Bir ara vakit buldukça onları da eklemeye çalışırım. Son olarak @iqsuz $gelen_post_deyim="isim"; $ad=$_POST ; Bu hiç bir işe yaramaz. Sen ha elle oraya isim yazmışsın, ha değişkenin içindeki isim değerini çzümletip oraya yansıtmışsın aynı şey. Php'yi ekstra zahmete sokuyorsun. Austen tarafından 11/Eki/12 09:22 tarihinde düzenlenmiştir

ben vaciz hane bildim ile en çok yaptığım hatayı syleyeyim db de 1 sutun olsun id isim 1 asaa 2 bbbb 3 ccccc bunların sitede alt alta sıralamak için sakın ama sakın for içinde WHERE id=1 şeklinde tek tek çağırmayın bunun yerine array ile sraıalamyı kullanın hem daha az sql sorgusu oluşuyor ve performansı etkiliyor hemde silme değişirme gibi eylemelrde daha az sorun çıakrıyor wtf :| echo "imzanız zel karakter içermemelidir";

iQsuz bunu yazdı aklıma gelmişken mesela şunu sormak istiyorum textbox ile post edilen bi bilgiyi şyle almak güvenliği artırırmı yoksa hiç bi değişiklik sağlamaz mı rneğin textbox id miz isim olsun $gelen_post_deyim="isim"; $ad=$_POST ; bu şekilde almak güvenliği artırır mı? php hiç bilmem ama bence posttan gelen veriyi değişkene atmak en iyisidir daha kolay kullanım sağlar hem.. güvenlik açısından bir fark olmayabilir posttan gelen veriyi zaten değişkene atadım formdan gelen textboxun name ini değişkene atamak mantıklı mı?

ncelikle herkese kolay gelsin "Tecrübeyi tecrübe etmek aptallıktır" szünden yola çıkarak php kodları yazarken nelere dikkat ettiğinizi neleri yapmak neleri yapmamamız gerektiğini formlardan bilgi alırken nelere dikkat edilmeli vs. vs. tecrübelerinizden yararlanarak paylaşırsanız sizin tecrübelerinizden yararlanarak tecrübelenmiş oluruz.

aklıma gelmişken mesela şunu sormak istiyorum textbox ile post edilen bi bilgiyi şyle almak güvenliği artırırmı yoksa hiç bi değişiklik sağlamaz mı rneğin textbox id miz isim olsun $gelen_post_deyim="isim"; $ad=$_POST ; bu şekilde almak güvenliği artırır mı?

aklıma gelmişken mesela şunu sormak istiyorum textbox ile post edilen bi bilgiyi şyle almak güvenliği artırırmı yoksa hiç bi değişiklik sağlamaz mı rneğin textbox id miz isim olsun $gelen_post_deyim="isim"; $ad=$_POST ; bu şekilde almak güvenliği artırır mı? php hiç bilmem ama bence posttan gelen veriyi değişkene atmak en iyisidir daha kolay kullanım sağlar hem.. güvenlik açısından bir fark olmayabilir İnsan; insan olsaydı, insan olmazdı..

Lightsaber bunu yazdı iQsuz bunu yazdı aklıma gelmişken mesela şunu sormak istiyorum textbox ile post edilen bi bilgiyi şyle almak güvenliği artırırmı yoksa hiç bi değişiklik sağlamaz mı rneğin textbox id miz isim olsun $gelen_post_deyim="isim"; $ad=$_POST ; bu şekilde almak güvenliği artırır mı? php hiç bilmem ama bence posttan gelen veriyi değişkene atmak en iyisidir daha kolay kullanım sağlar hem.. güvenlik açısından bir fark olmayabilir posttan gelen veriyi zaten değişkene atadım formdan gelen textboxun name ini değişkene atamak mantıklı mı? Güvenlik açığı yaratacağını sanmıyorum. Fakat 1 satır kod yazacağına 2 satır kod yazmış olacaksın. Hem de PHP işleme sürecini etkileyecektir. Ama illaki ben POST'ta ne alacağımı dinamik olarak belirleyeceğim diyorsan olabilir. İmza...

PDO kullanın sql injection u dert etmeyin. Benim deneyimim bu. Bu imzayı her grdüğünüzde 4gb kotanızın 0,00000358559191226959228515625 azalmaktadır. Bilerek ve istenerek bu imza yapılmıştır. Amaç kotanızı smürmektir

bu szü ilk defa duydum ve senden duyunca çok şaşırdım :p güzelmiş. php değilde genel bişey syleyim. ilk başlayanlar için geçerli. misal; "blog sitesi yazmak istiyorum nasıl yazacam " gibisinden bi konu açarsan kimse yardım etmez. fakat, "forum modülünü yazarken cookie den kullanıcıyı alamıyorum. kodlar aşağıda. nerde yanlış yapıyorum" tarzında açarsan konuyu gren herkes yardımcı olur. tecrübeyle sabittir. Kayalardan kayarım yoktur benim ayarım (;

aynen bende fırsat bulduk php kasmaya calisiyorum lazım olur burası bana "açık mı var la" yazdı diye ban yiyen adam!

http://www.phpbench.com/ şu siteye gz at çok faydalı olacak

yazdığın herşeyi ufak fonksiyonlar haline getir, bunları kullanmak istediğin yerde include ile çağır mesela paging diye bir sayfalama fonksiyonun olsun bunu her sayfalandırma yapacağın yerde kullan img_upload, crop, connect, list, form vb her temel işlem için bir fonksiyonun olsun bunları zamanla geliştirirsin html ile bağlantısını fonksiyna aldığın bir parametrede css-stil belirterek sağlarsın, ben bu dosyalarımı lazim_olur isimli klasrde tutuyorum aynı şekilde, bir dosyanın kullanacağı tablolarıda vt da tanımlamak gerekir bunlarıda açıklama satırı olarak girsen iyi olur ve temel tabloları da tmp halde. sql olarak tut, mesela veri, uyeler, haberler vb sonra çalışman 5-10 kat hızlanır herşeyin bir şeyi vardır

Merhaba ncelikle. Eğer herhangi bir programlama dili biliyorsanız sadece php de değişken tanımlarına ve dngülere bir gz atın. Sonra GET/POST metotlarını, string fonksiyonlarını cookie ve session tanımlamasını ğrenin sonra mysql bağlantısı, veri giriş çıkış listeleme ğrenin php sizin için bitmiştir. Ondan sonra artık google amca ve php. net ile beraber web de yapılabilecek herşeyi yapabilirsiniz.