Category Archives: Fonksiyonlar

Fonksiyonlar

Tırnak işaretli içeriklerin MySQL e kaydedilememesi? PHP tırnak problemi?

Merhaba,

Her zaman karşılaşacağınız bir problem olmamakla birlikte yeni sql sürümlerinde bu problem oluşmamaktadır. Aslında yeni sürümlerde bu problemi yaşamamamızın sebebi de sql enjeksiyon yöntemlerinin önüne geçilmiş olması. 😉

Problem şu ki bir siteye yönetim panelinden haber ekleyeceksiniz.
Haberinizin başlığı : PHP’nin yeni versiyonu!

burda ki tek tırnak veri tabanına kayıt esnasında hata verecektir. İçeriğiniz kaydedilemeyecektir.

mysql_query("insert into haberler (id, baslik, icerik) values ('', 'PHP'nin yeni versiyonu', 'bla bla bla') ");

örnekte de gördüğünüz gibi içerik eklerden fazladan tek tırnak sql cümlemizin formatını bozdu.

Bunu aşmanın çok kolay bir yolu var.


$veri = "PHP'nin yeni versiyonu!";
echo addslashes($veri);


Ekran Çıktısı: “PHP\’nin yeni versiyonu! “

php’nin addslashes() fonksiyonu, yazımızda ki tek tırnakların önüne bölü işareti koyacak. Böylelikle veritabanı kaydında problem yaşamayacağız.

Bunun yanı sıra eğer içerikte ki bölü işaretlerini temizlemek isterseniz de, stripslashes() fonksiyonu yardımımıza koşuyor;


$veri = "PHP\'nin yeni versiyonu!";
echo stripslashes($veri);

Ekran Çıktısı : PHP’nin yeni versiyonu!

Güle güle kullanın, bol bol kod yazın…

Cihan.

6 Yorum

Filed under Fonksiyonlar

PHP de bir tarihe gün ekleme veya çıkartma

Bugünün tarihine 2 gün eklersek yeni tarih kaç olur?

$bugun = date("Y-m-d");
$yenitarih = strtotime('1 day',strtotime($bugun));
$yenitarih = date('d/m/Y' ,$yenitarih );
echo $yenitarih;

Bugünün tarihinden 7 gün geriye gidersek?

$bugun = date("Y-m-d");
$yenitarih = strtotime('-7 day',strtotime($bugun));
$yenitarih = date('d/m/Y' ,$yenitarih );
echo $yenitarih;

9 Yorum

Filed under Fonksiyonlar, Hazır Kod

PHP ile iki tarih arasında ki farkı bulmak

 

Aşağıdaki fark_bul fonksiyonu ile kolayca iki tarih arasında ki günü hesaplayabilirsiniz.

 

<?php
function fark_bul ($tarih1,$tarih2)
{
/*
* İki Tarih Arasındaki Gün Sayısını Bulur
* Author: Raiden
*/

if (!preg_match("@\.@",$tarih1) || !preg_match("@\.@",$tarih2)) exit('Standart Format: 01.01.1970');

list($gun1,$ay1,$yil1) = explode('.',$tarih1);
list($gun2,$ay2,$yil2) = explode('.',$tarih2);

$tarih1_timestamp = mktime('0','0','0',$ay1,$gun1,$yil1);
$tarih2_timestamp = mktime('0','0','0',$ay2,$gun2,$yil2);

if ($tarih1_timestamp > $tarih2_timestamp)
{
$fark = ($tarih1_timestamp - $tarih2_timestamp) / 86400;

}

if ($tarih2_timestamp > $tarih1_timestamp)
{
$fark = ($tarih2_timestamp - $tarih1_timestamp) / 86400;
}

return $fark;
}

$f = fark_bul("01.04.2008","23.04.2008");
echo $f;

?>

1 Yorum

Filed under Fonksiyonlar, Hazır Kod