PHP`de karakter ve sıralanış veya cümle içinde eşleştirmede kullanılan düzenli ifade komutları nelerdir? Bunlara bakalım ve kısacak örneklerle açıklamaya çalışalım.
^hakk
“hakk” ile başlayan bütün kelimeleri bulur. ^işareti, onu izleyen karakterin sadece alfanümerik değişkenin başında olması gerektiğine işaret eder. Bu deyimle, “Hakkı Öcal bugün buradaydı!” veya “Hakkıdır hakka tapan, milletimin istiklâl!” eşleşebilir; fakat “Anaların hakkı ödenmez!” eşleşmez; çünkü PHP açısından ^işaretinin anlamı, “Başlangıcında `hakk` karakterlerinin sıralanıyla aynı sıralanıştaki alfanümerik değeri bul!” demektir.
edilemez$
Bu deyim ise PHP`ye “edilemez” ile biten bütün kelimeleri bulur. Sözgelimi, “Kötümser insanın yükselişinden bahsedilemez” cümlesi bu deyimle bulunabilir; fakat sonunda nokta olduğu için “.. edilemez.” diye biten hiç bir cümle bu deyimle eşleşemez.
Arkadaşlar bu yazımızda PHP ile IP sorgulama üzerinde duracağız.
Merhaba arkadaşlar bu yazımızda herhangi bir link, button veya normal yazının üzerine gelince olan değişiklikler üzerinde duracağız ve bununla ilgili bir örnek uygulama yapacağız.
Php server üzerinde çalışır sayfa yenilenmeden kendi başına verileri getiremez. Bu yüzden dinamik çalışan JavaScript vardır. JS dili kullanıcılara aktif olarak döner ve sayfaların daha hareketli olmasını sağlar. Kısaca bunlara değindikten sonra örnek uygulamamıza geçebiliriz.
Örnek:
Sayfamızda bir link olduğunu varsayalım ve bu link üzerine gelince bir değişme olmasını istiyoruz.
Diyelim…
Normal link iken resim1.jpg
Üzerine gelince ise resim2.jpg
çıksın böylece hareketliymiş gibi kullanıcılar algılasın. Kodlarımız tamamen bunun üzerine kurulu…
Kodlara başlamadan önce kodlarımızın olduğu sayfaların yanında resim1.jpg ve resim2.jpg lerimizi koyalım.
Aşağıda resimleri değiştiren esas işi gören JavaScript fonksiyonlarımız bulunmaktadır.
<script language="javascript">
function resim_over()
{
document.resim.src="resim2.jpg";
}
function resim_out()
{
document.resim.src="resim1.jpg";
}
</script>
Çalışma şekli şu şekildedir.
Üzerine gelince normalde kaynağı (src) resim1.jpg olanı resim2.jpg yaparak resimi değiştirir.
Document : Javascriptte belgeyi ifade eder…
Name ile de resim adı geldiği için sonrasında resim yazılır.
Ve Özelliği olan src belirtilir.
Merhaba arkadaşlar bu yazımızda en iyilerimizin bile en çok karşılaştığı AJAX uygulamalarında ki Türkçe karakterler yaşadığımız sorunlara çözümler aramaya çalışacağız.
Genelde iki kısımda sorunlar yaşanmaktadır. Bunlardan
1-Html ile AJAX kullanırken yaşanan sorunlar
2-PHP ile AJAX kullanırken yaşanan sorunlardır.
İlk olarak sorunumuz HTML ile nasıl çözeriz ona bakalım.
Ajax ile yapılan uygulamalarda çıktı ya da veri alış-verişi, text/xml içerik türüne göre gerçekleşmektedir.
Bu veri-, alış-veriş biçiminde varsayılan karakter tip tanımlaması ISO-8859-1 veya UTF-8 seçildiğinde düzgün çalışmaktadır.
Eğer sadece herhangi bir text ya da HTML içerikli bir sayfadan bilgi alınacaksa (PHP değil) çözüm bu sayfaların kayıt biçimini UTF-8 yaparak aşabiliriz.
Örneğin:
Farklı kaydet penceresinde iken kodlama türünü utf-8 seçtikten sonra sayfa kaydedilirse AJAX ile çalışmalarınızda türkçe karekter sorunu yaşamamış oluruz.
İkinci olarak sorunumuz PHP ile nasıl çözeriz ona bakalım.
Eğer ki php ve veritabanını kullanarak bir scriptimiz var ve Türkçe kararterler de kaydederken ve çekerken sorunlar yaşıyorsak neler yapmamız gerekir onların üzerinde duracağız.
Türkçe desteği olan bir veritabanımız var ise veritabanımızın karakter setini phpmyadmin kısmından latin5_turkis_ci olarak ayarlamalıyız.
Sorun hala devam ediyorsa tablolarında kendine göre kararter seti olur bunlarıda işlemler kısmından aynı şekilde latin5_turkis_ci olarak ayarlamalıyız.
Sorunla hala devam ediyorsa daha bunun için çözümler aramaya devam etmeliyiz. Ve aşağıdaki kodları ilgili sayfalara eklemeliyiz.
Sayfamızın en başına
<?php
header ("Content-Type: text/html; charset=iso-8859-9");
?>
kodunu eklemeliyiz.
Sorunumuz hala devam ediyorsa hotsa bağlanırken baglanti.php veya hangi sayfayı kullanıyorsanız siz o bağlantının altına yani veritabanına bağlandıktan sonraki hemen alt satıra aşağıdaki kodlardan birini ekleyerek deneyiniz.
Bu kodu eklediğiniz de büyük ihtimallere sorun düzelmiş olacaktır.
mysql_query("SET NAMES 'latin5'");
İkinci kod…
mysql_query("SET CHARACTER SET latin5");
Üçüncü kod…
mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'");
Bu kodlarımızı eklediğimizde ve phpmyadmin kısımından da gerekli yerleri değiştirdiğimizde büyük ihtimal ile sorunlarınız çözülmüş olacaktır.
Sorunun çözüldüğünden emin olmak için veritabanına yeni veriler girerek kontrol etmeniz en sağlıklı olacaktır.
Eğer ki sorunlarıza isterseniz utf-8 karakter setlerini de kullanarak deneyebilirsiniz. Bütün heryer utf-8 olursa sorunlarınıza bu şekilde bir çözüm de olabilir. Dediğim gibi bu sorunun tek bir çözümü yoktur. Veritabanı ve sizin kodlarınız uyum içinde çalışmasına bağlıdır.
Merhaba arkadaşlar biz webmasterlar olarak en çok karşılaştığımız sorunlar sitelerimizdeki Türkçe karakterlerin sorunlu olarak gözükmesidir. Bunların birden fazla sebebi olabiliyor ve bizde onlara göre çözümler üretmeye çalışacağız.
Arkaşdalar ilk çözüm olarak saymamızın meta kısmında dilimizin Türkçe desteği olan iso-8859-9 ayarını yapmalıyız. Aşağıdaki kodlar sayfanın en üstündeki
<meta http-equiv="Content-Type" content="text/HTML; charset= iso-8859-9" />
Eğer sizin sayfalarınız İngilizce düzene göre ise siz bu kodu şu şekilde yazıp da deneyebilirsiniz.
<meta http-equiv="Content-Type" content="text/HTML; charset=utf-8" />
Arkadaşlar bu kodları yazarken dikkat etmeniz gereken nokta karakter setini değiştirince düzenleyicimizde de aynı zamanlı olarak Türkçe karakterler html kodlarına dönebilir. Bu yüzden onları öyle bir sorunla karşılarsanız deneme olarak birkaç karakteri düzeltip tarayıcınızda sorun düzelmiş ise o yöntem sizin çözümünüzdür demektir. Her zaman bu gözden kaçan bir noktadır. Lütfen bu konuya dikkat edelim.
Merhaba arkadaşlar bu dersimizde sitelerin genelinde birden fazla logo veya resim kullanılmakta. Bunun üzerine bir kaç soru geldi ve bende bu dersi yazmaya karar verdim.
$siteismi = "phpsorunu.com"; // Logonun üstüne geldiğinizde çıkmasını istediğiniz yazı $format = "jpg"; // Resim formatı olmalı... (gif, jpg, png vs.) $sayi = rand (1,10); // Kaç tane logonuz varsa 10 yerine sayıyı yazın $logo = "<img src=\"logo".$sayi.".".$format."\" alt=\"".$siteismi."\"/>";
Merhaba arkadaşlar bu dersimizde PHP ile ayrıntılı olarak nasıl bir mail gönderriz onun üzerinde duracağız. Yaptığım kodlar çalışmaktadır. İsterseniz direkt olarak sizin için gerekli yerleri değiştirerek kullanabilirsiniz.
PHP de önemli olan işlevi yapan…
mail()
fonksiyonudur.
Fonksiyonumuz 4 parametre alır
mail( gidecekadres, baslik,icreik,karakterseti);
karakterseti isteğe baglıdır.
Evet arkadaşlar sizlerde bilirsiniz ki; SQL’ de tarih formatı YYYY-MM-DD şeklindedir. Yani 2010-06-10 gibidir. Peki elinizde bir form ve tarih alanı var. Bu input alanı değerini DD-MM-YYYY (10-06-2010) şeklinde tutup veritabanına yukarıdaki standartta kaydetmek istiyorsunuz. Bunun için aşağıda yazmış olduğum fonksiyonu kullanmanız yeterli olacaktır.
explode() komutu kullanımları zorunlu olarak 2 değişken alır istersek 3 değişkenli yani argumanlı olarak da kullanabiliriz.
1.explode(ayirac,veri)
2.explode(ayirac,ver,kac tane ayırcak sayısı)
Bu şekilde kullanımları mevcuttur.
Ayırılanlar bir dizide tutulur.
Örnek uygulama:
Bu dersimizde PHP ile dosyalar var mı yok mu diye nasıl kontrol ederiz. Bunu bize php de hangi fonsiyon sağlar ona bakacağız.
PHP’de dosya varmı diye soran fonksiyon
file_exits("dosya_adi.uzantisi")
Bu fonsiyon eğer dosya var ise true yoksa false değer döndürür.
Örnek kullanım:
if ( file_exits ( "phpsorunu.txt" ) ) echo "Dosya vardır!"; else echo "Dosya yoktur!";
Gördüğünüz gibi çok küçük fakat işlevsel bir fonksiyon.
Herkese başarılar….