İzlenmesi Gereken Anlamlı Filmler

Kendi izlediğim ve kesinlikle tavsiye ettiğim anlamlı ve ilham veren filmleri paylaşmak istiyorum.
İzledikten sonra hayata bakış açınızı değiştirecek filmler.

İyilik Bul İyilik Yap

iyilik bul iyilik yap anlamlı ilham veren film

Bu film benim küçüklüğümde 3-4 defa izlediğim ve beni çok etkileyen bir film.
2000 Yılında gösterime girdi.
Konusu: 7. Sınıf öğrencisi olan, 11 yaşındaki bir çocuğun sosyal bilimler dersinde öğretmeninin “Dünyayı değiştirip, daha iyi yapmak için bir şeyler yapın.” demesi üzerine, iyilik bul iyilik yap projesini başlatır.

Kesinlikle izlenmesi gereken bir film, 11 yaşındaki bir çocuk tüm dünyayı etkileyen bir proje başlatıyor, birine iyilik yapıyor ve bu iyiliği yapan kişiden başka insanlardan 3 kişiye daha iyilik yapmasını istiyor.
Başkaları için iyilik yapmak kadar güzel birşey yoktur sanırım :)

Ölü Ozanlar Derneği

Ölü ozanlar derneği izlenmesi gereken filmler

Ölü ozanlar derneği filminde Robin Williams başrolde. Saygın ve disiplinli bir eğitim akedemisinde arkadaşlık arasındaki bağı, dayanışmayı anlatıyor. Film de farklı bir bakış açısı olan edebiyat öğretmeninin şiir ve edebiyatın bambaşka bir dünyasıyla tanıştırır.

3 Aptal (2009)

3 Aptal Aamir Khan Mutlaka izlenmesi gereken film
Aamir Khan Filmlerinden biri 3 aptal hem komik hemde arkadaşlığın önemini anlatan çok anlamlı bir film: Öğrencilerin hayallerini ve neler istediğini umursamayan bir okul sisteminin içinde yer alan öğrencilerin okulda yaşadıklarını anlatan bir film.

Aamir Khan film yaparda kötü olur mu ? ama bu film bir başka kesinlikle izlenmesi gereken filmlerden biri.

Şuan bu üç film var, kısmet olursa sizlere başka filmlerden paylaşacağım :)

Unable to update the EntitySet ‘tableName’ because it has a DefiningQuery and no element exists in the Hatası

Eğer projenizde aşağıdaki hatayı alıyorsanız.

Unable to update the EntitySet ‘tabloAdi’ because it has a DefiningQuery and no element exists in the element to support the current operation.

Tablolarınızdan birinde primary key yani diğer adıyla birincil anahtar olmadığı için veriyor demektir.

Asp.net Mvc Facebook meta taglarını layout.cshtml de gösterme

Başlığı adam akıllı attığımdan emin değilim :)

Olay şu: Projemize yerleştirdiğimiz facebook, twitter paylaş butonlarına tıklanıp paylaşım yapılmak istendiğinde, sayfada bulunan herhangi bir resmi paylaşıma ekliyor.
Aşağıdaki gibi sayfanın başlığı ve sayfada bulduğu bir görseli ekliyor.
facebook_begenme_resmi

Burada alakasız bir resmi bastırma olasılığı çok çok yüksek.

Bizde bunun için facebook ve twitter meta taglarını head tagları arasına ekliyeceğiz.
Bunu yapmanın aklıma gelen iki yolu var.

1. Yol: Section kullanmak

Layout.cshtml de eklemezi gereken section

@RenderSection("OpenGraphYazdir", false)

Partial view yada altsayfa .cshtml dosyamızada

@section OpenGraphYazdir {
 <!-- for Facebook -->
 <meta property="og:title" content="@(Model.baslik)" />
 <meta property="og:type" content="article" />
 <meta property="og:image" content="@(ViewBag.site_dizin)/Upload/sayfa/@(Model.resim)" />
 <meta property="og:url" content="@url" />
 <meta property="og:description" content="@(Model.ozet)" />
 <meta property="og:site_name" content="Aydın Aktüel" />
 <!-- for Twitter -->
 <meta name="twitter:card" content="summary" />
 <meta name="twitter:title" content="@(Model.baslik)" />
 <meta name="twitter:description" content="@(Model.ozet)" />
 <meta name="twitter:image" content="@(ViewBag.site_dizin)/Upload/sayfa/@(Model.resim)" />
    
}

Gördüğünüz gibi bu şekilde halledebiliyoruz.

Bu yöntemin dışında birde başka bir yoldan yapabiliriz. Sadece layout.cshtml de halletmek gerekirse işte o yöntemde aşağıda.

2. Yol: Tarzanca :)

Şimdi layout.cshtml de olayı bitircez.
Altsayfamızın linki şu şekilde olduğunu farzedelim: “siteadi.com/sayfa/id/seo-sozcugu”

Aşağıdaki kodlarda layout.cshtml de yer alacak.

@{
        string url = Request.Url.ToString();
    }
    @if (url.Contains("sayfa/"))
    {
<!-- for Facebook -->
 <meta property="og:title" content="@(Model.baslik)" />
 <meta property="og:type" content="article" />
 <meta property="og:image" content="@(ViewBag.site_dizin)/Upload/sayfa/@(Model.resim)" />
 <meta property="og:url" content="@url" />
 <meta property="og:description" content="@(Model.ozet)" />
 <meta property="og:site_name" content="Aydın Aktüel" />
 <!-- for Twitter -->
 <meta name="twitter:card" content="summary" />
 <meta name="twitter:title" content="@(Model.baslik)" />
 <meta name="twitter:description" content="@(Model.ozet)" />
 <meta name="twitter:image" content="@(ViewBag.site_dizin)/Upload/sayfa/@(Model.resim)" />
 }

Yukarıda ne yaptık, önce sayfa url sini aldık, sonra sayfa linkimizde bulunan “sayfa/” kelimesini aradık, varsa if şartımız sağlanıcak ve facebook, twitter open graph meta taglarını altsayfalarımızda bastırmış olacağız.

Burada contains kullandım bir sonraki yazımda bunu anlatayım.

Asp.net mvc head kısmında facebook, twitter meta tag sorunu yaşayan arkadaşlarımız varsa işini görür ve umarım faydalı olmuştur…

Asp.net C# Eposta Doğrulama

Asp.net csharp eposta kontrolü (eposta doğrulama) işlemi oldukça basit, çoğu zaman lazım olabiliyor.
Ben daha çok javascript ile email doğrulaması yapıyorum, ne olur ne olmaz diye arka planda da yapmak lazım.
Bülten üyeliği gibi yerlerde şart :)

private bool IsValidEmailId(string epostaAdresi)
    {
        //Eposta doğrulama regex kodumuz
        Regex regex = new Regex(@"^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$");
        Match match = regex.Match(epostaAdresi);
        if (match.Success)
            return true;
        else
            return false;
    }

Php ile eposta kontrolü

Php ile eposta kontrolü yapmanın çeşitli yolları var.
1. Yöntem filtre_var kullanarak:

//filtre_var yanlış hatırlamıyorsam php 5.2 ile gelen yeniliklerden biriydi.
$eposta = "[email protected]";
if(filter_var($eposta, FILTER_VALIDATE_EMAIL)){ 
   echo 'Geçerli bir eposta adresi girildi';
}else{
   echo 'Geçersiz bir eposta adresi girildi';
}

2. Yöntem (mx kaydı kontrolü) ile eposta kontrolü

$eposta = "[email protected]";
$server= substr($eposta, strpos($eposta,'@')+1);
$server= array();
getmxrr($server,$server);

if(count($sonuc)>0){
 echo 'Geçerli bir eposta adresi girildi';
}else {
 echo 'Geçersiz bir eposta adresi girildi';
}

Php ile en kolay şekilde eposta kontrolü(eposta doğrulama) uygulaması.
Eğer bir formdan gelen epostanın doğru olup olmadığını kontrol etmek istiyorsanız, ilk önce bunu javascript ile yapmanızı öneririm, post edildikten sonra arka tarafta php ile kontrol ederseniz çok daha kullanışlı olacaktır.

Fatal error: Maximum execution time of 360 seconds exceeded Hatası

Fatal error: Maximum execution time of 360 seconds exceeded hatası zaman aşımına uğradığını söylüyor. Bu yüksek boyutlu sql dosyasını phpmyadmin bölümünde import ederken yaşayabileceğiniz bir sıkıntı, vs. başka durumlarda da yaşayabilirsiniz tabi.

Peki bu hatanın çözümüne gelelim.

Phpmyadminde bu hatayı alıyorsanız ve wamp server kullandığınız varsayıyorum.

C:wampaliasphpmyadmin.conf

dizinindeki dosyayı açın ve aşağıdaki ayarları değiştirin.

php_admin_value upload_max_filesize 128M
php_admin_value post_max_size 128M
php_admin_value max_execution_time 360
php_admin_value max_input_time 360

Sayılarla oynayabilirsiniz :)

Sorununuz hala devam ediyorsa,
C:wampbinapacheapache2.4.9binphp.ini
Dosyasında şu aşağıdaki değerlerin sayılarını arttırın:

post_max_size = 8M
upload_max_filesize = 2M
max_execution_time = 30
max_input_time = 60
memory_limit = 8M

Daha sonra tüm servisleri yeniden başlatın(sağ altta bulunan wamp ikonuna sol click, restart all services).
Wamp server upload veya çalışma süresinde yaşadğınız sıkıntıyı çözecektir.

Bu çözüm aynı zamanda phpmyadminde (mysql de) yüksek boyutlu sql dosyasını içe aktarmamızı sağlıyor.

Yardımcı olacağını umuyorum…
Sinan Doğan

Bilgisayar Açıldığında Wamp Server Otomatik Başlatma

Bilgisayar açılıdığında wamp server otomatik başlatmak için bir çok yöntem var.
Ben şu yöntemi kullanıyorum.

windows kullanıdığınız farzediyorum.
1. Sol altta bulunan başlata tıklıyoruz.
2. Arama bölümüne çalıştır yazıyoruz (tabi ing. ise run yazılmalı)
3. Hizmetlere gidicez, bu sebeple, çalıştıra SERVICES.MSC yazıyoruz.
4. Wampapache64 ve wampmysql64 listede yer alıyor. Listede yerini buluyoruz.
5. Wampapache64 sağ tıklayıp properties diyoruz ve startup type kısmı sizde manuel dir, onu otomatic yapıyoruz.
6. aynı şekilde wampmysql64 de de propertiesten ayarlıyoruz.
7. Bilgisayarı yeniden başlatıyoruz.

Hepsi bu kadar, kısacası şunu yaptık:
başlat -> çalıştır -> SERVICES.MSC > Wampapache64,Wampmysql64 -> properties -> startup type (başlangıç türü) -> otomatik

İkinci yöntem:
Başlat -> çalıştır -> MSCONFIG > sistem yapılandırmasını açmak, oradan başlatma sekmesine tıklayıp, windows başlarken çalışmasını istemediğin wamp tiklerini (check) kaldırmak.

Php için kullandığımız wamp server için ufak bir ayar, bilgisayar başladığında wamp server otomatik başlatmayı paylaşmak istedim.

Sinan Doğan

Asp.net Mvc Html.ValidationSummary İçerisinde Html İçerikli Hata Mesajı Verme

Arkadaşlar mvc de form alanlarında uyarı vermek için kulllandığımız Html.ValidationSummary da bir kaç bir şey yapmam gerekti.
Html.ValidationSummary içerisinde html içerik girmem gerekiyordu, hemen aklıma Html.Raw geldi, ama Html.Raw içerisine aldım Html.ValidationSummary ama işe yaramadı.

[php lang=”c#”]
@Html.ValidationSummary(true, "")
[/php]

Yukarıdaki kısım standart kullanımıyla formlarda hata mesajlarını sağlayan vatandaş idi.
Eğer hata mesajı kısmında html karakterler kullanmak istiyorsanız, aşağıdaki işinizi görecektir:
[php lang=”c#”]
@Html.Raw(System.Web.HttpUtility.HtmlDecode((Html.ValidationSummary(false) ?? (object)"").ToString()))
[/php]

Asp.net Mvc Multi Resim Yükleme

Asp.net mvc de çoklu resim yani multi resim yükleme işlemini sizlerle paylaşıcam. Ben kendi yöntemimle sizlere aktarıcam.

Öncelikle asp.net mvc de razor engine kullanıcaz, ve bu durumda resim yüklemek için html.form kısmına bir parametre ilave etmemiz gerekicek.
View html.form varsayılan olarak böyledir sizde:
[php lang=”c#”]
@using (Html.BeginForm())
[/php]

Yukarıdakini şu şekilde yapıyoruz:
[php lang=”c#”]
@using (Html.BeginForm("MethodAdi", "SayfaControllerAdi", FormMethod.Post, new { @enctype = "multipart/form-data" }))
[/php]

Tabi biz methodAdi yerine actionResult ımızı , sayfaControllerAdi yerine controllerımızın adını yazıyoruz.

Sıra geldi, controller da bulunan methodumuza.
[php lang=”c#”]
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Create([Bind(Include = "id, baslik")] slider slider, HttpPostedFileBase[] resimler){

}
[/php]

Yukarıda ne yapmış olduk, HttpPostedFileBase[] resimler diyerek resim dizisini post eden parametreyi girmiş olduk, artık çoklu resim post edebiliyor olacağız.

[php lang=”c#”]
foreach (var img in resimler)
{
string resimAdi = Path.GetFileName(img.FileName); //resim adı alma
var yuklemeYeri = Path.Combine(Server.MapPath("~/yuklenecekDosyaYolu"), resimAdi); //resmin yükleneceği klasörü alıyoruz
img.SaveAs(yuklemeYeri); //resmi klasöre yüklüyoruz
}
[/php]

Olay bundan ibaret, daha sonra dosya yükleme uzantı kontrolü de nasıl olur onuda göstereceğim, vakit bulursam.
Sormak istediğiniz bir şey olursa, yardımcı olurum, yorum bırakmanız yeterli.