Translate Blog

31 Ocak 2015 Cumartesi

Veritabanından Php Form Oluşturucu / Database to Bootstrap Php Form Creator

[Düzenleme:]
2. versiyonu için tıklayınız. / Click to see the newer version.




Yıllardır şunun merak etmişimdir, neden kimse veritabanındaki tablolardan seçtiğim alanlara göre bir kayıt formunu otomatik oluşturacak bir kod yazıp da internete atmamıştır.

Dosyayı kendi localhostunuzda çalıştırmak için indirin.

Veritabanınızı ve Formunu istediğiniz tabloyu seçin. / Choose your database and table that want to make a form

Formda kullanmak istediğiniz alanları seçin / Choose your fieldnames for your form

Eğer tablonuzu oluştururken yorum kısımlarına mantıklı bir açıklama yazarsanız form elemanlarınızın üstünde olacak yazılar otomatik gelecektir. Eğer yorum kısımlarınız boş ise elinizle doldurmanız gerekecek. / If you fill the field's comments such as "Name and Surname Please" for name field, your form element's explanation come automaticly. If no you must fill the text areas like above image.


Gönder butonu ile formu görebilir ardından göster butonuna tıklayarak kodları alabilirsiniz. / Click Gönder link to see the form itself, after that click göster link to see and copy the form codes.



Kodda form elemanları http://getbootstrap.com/css/?#forms daki gibi Bootstrap'a uygun olarak oluşturulmuştur. Formunuzun yakışıklı gözükmesi için sayfanıza http://getbootstrap.com/getting-started/ daki CDN javascript ve css linklerini yüklemenizi öneririm.

Veritabanına bağlanmak için medoo kullandım. Sizin de kullanmanızı öneririm. Hem güvenlik hemde hızlanmak için birebir. Bu kütüphane veritabanına bağlantı, ve çeşitli sql yazımları için kolaylaştırılmış bir yapısı vardır. http://medoo.in/download adresinden indirebilir nasıl kullanıldığını http://medoo.in/api/new adresinden inceleyebilirsiniz. Ayrıca indireceğiniz dosyanın içindeki form.min.php dosyasını da nasıl bağlantı yapıldığına bakarak siz de kullanabilirsiniz. 

Henüz sadece text ve varchar alanlarını düzgün bir şekilde ekrana eklemekte. Int, date vb gibi alanlar için jquery ve bootstraplı form elemanları sonraki verisiyonunda eklenecektir. Takip ediniz.

how to create form from database, create form from database, create bootstrap form automaticly, automatic form creator, use tables to create form, veritabanından form oluştur, php form creator, php kullanarak veritabanından otomatik form oluşturma kodu, nasıl otomatik form oluştururum.

26 Ocak 2015 Pazartesi

Windows 7 Etkileşimli Kurulum Simulasyonu / Windows 7 Format Simulation

Windos 7'yi kurmak için elinizde bir CD var ise nasıl kurulum yapacağınıza dair güzel bir animasyon uygulaması hazırlamıştım.

Okullarda öğretmek amaçlı veya kendiniz öğrenmek istiyorsanız bu etkileşimli windos 7 kurulum animasyonunu uygulayabilirsiniz.

Uyugulama flash ile hazırlanmıştır. Bilgisayarınızda swf çalıştırabilecek bir programınız (flash player, gom player) yoksa uygulamayı bir tarayıcıya sürükleyerek de çalıştırabilirsiniz.

Uygulamayı indirmek için tıklayınız.

24 Ocak 2015 Cumartesi

Php Kelimeleri Büyük Harf Yazın, Türkçe Karakter Sorunu Çözümü / Turkish Encoding Problem on PHP

Yıllardır php ile uğraşırım şu gıcık Türkçe karakter olayından oldum olası çekmişizdir. Mesela veritabanınızda veya sayfanızda küçüklü büyüklü yazılmış saçma sapan isimler var. Bunları strtoupper ile hemen büyük harfe çevirebilirsiniz sanıyorsunuz, ama ne yazık ki öle olmuyor.

strtoupper("aşık veysel derki");
kodu
AşıK VEYSEL DERKI

şeklinde ıiş gibi türkçe harflerin saçma sapan ekranınıza yazıldığında sinirlernmekte haklı olduğunuzu görür ve google da aramalara giriştiniz. Umarım burayı hemen bulmuşsunuzdur.

Sorunu mb_strtoupper gibi bir kodun var olmadığını görmeyerek üzülmemiş olduğunuzu varsayarak devam ediyorum. (substr türkçe karakterlerde sorun yaratırken mb_substr($kelime,2,4,'utf-8') sorunu çözmekte ve mb_ ön ekli bir çok fonksiyon utf-8 encoding yaparak sorunların üstesinden gelmekte. )

Çözüm 2 fonksiyondan geçiyor.

 
function metintodizi( $string ) { 
 return preg_split('/(?<!^)(?!$)/u', $string ); 
} 
function strto($metin){
 $k_harf = array("a","b","c","ç","d","e","f","g","ğ","h","ı","i","j","k","l","m","n","o","ö","p","r","s","ş","t","u","ü","v","y","z","q","w","x"," ");
 $b_harf = array("A","B","C","Ç","D","E","F","G","Ğ","H","I","İ","J","K","L","M","N","O","Ö","P","R","S","Ş","T","U","Ü","V","Y","Z","Q","W","X"," ");
 $kalan='';
 $metin = metintodizi($metin);
 for($m=0;$m<count($metin);$m++){
  if(!array_search($metin[$m],$k_harf)){
   $kalan .= $b_harf[array_search($metin[$m],$b_harf)].''; 
  }else{
   $kalan .= $b_harf[array_search($metin[$m],$k_harf)].'';    
  }
 }
 return $kalan;
}


echo strto("aŞık Veysel derKi");
AŞIK VEYSEL DERKİ


Gelelim nedir bu kodlar, ilk fonsiyonu bende bilmiyorum :D bir yerden aldım preg komutlarını oldum olası yapamam. konuya dönelim ilk fonksiyon metninizin her bir harfini diziye aktarıyor. Bunu yapan başka hazır komutlar da var diyenleri duyar gibiyim ama ne yazikki Türkçe konuşup Türkçe yazmakta ve inanmayacaksınız ama değişkenlerin içlerindeki verilerimiz bile Türkçe. Siz türkçe bir kelimeyi explode veya str_split veya mb_split gibi komutlarla dizi hali getirmeye çalışa dururken burdaki kodları kullanlara yapan arkadaşlar çoktan sorunlarına çözüm buldular bile.

Ne diyorduk, İlk fonksiyonla metninizi dizi haline getirdik harf harf. İkinci fonksiyonda ise Türkçe küçük ve büyük harflerimiz var dizi halinde. Dizi metnimizin her bir harfi tek tek taranıyor ve küçük harflerdeki dizi sırası alınıp, bu dizi sırasına karşılık gelen büyük harflerdeki dizi elemanı alınıp bir değişkene for döngüsündeki sıra ile alınıyor.

Böylelikle harf harf metniniz kontrol edilerek (sadece harfler bir de boşluk var) harfler küçükse büyük harfe çevriliyor.




Bu lanet probleme artık bir dur dediğimize göre işimize geri dönebiliriz.

21 Ocak 2015 Çarşamba

Php ile Basit Takvim Uygulaması İndirin / Download Free Php Simple Calendar

Karşılaşabileceğiniz en basit takvim uygulamalarından birisi olduğunu düşünüyorum. Tek sayfa kod ile oluşturulmuş bir Türkçe takvim uygulamasıdır. Görüntüsü aşağıdadır.

İndirmek için tıklayın.


Yakında google takvim benzeri bir hale  yani tarihlerin içlerine tıklayarak etkinlikler eklenebilir hale getirilmesi planlanıyor.

20 Ocak 2015 Salı

Php İle Ayın Günlerini Takvim Gibi Listeleme / List days of month like a calender

Aşağıdaki kod bulunduğunuz aydaki takvimi size vermektedir. Takvim tarihleri barındırır. Gelişrirsem paylaşacağım.

//şu anki zamana göre bulunulan ayın ilk günü sayısal olarak alınır
$month_start = strtotime('first day of this month', time());

//bu ayın kaç gün çektiği sayısal bilgisi (30) cal_days_in_month(CAL_GREGORIAN, ay, yıl)
$aydaki_gun = cal_days_in_month(CAL_GREGORIAN, date('m', $month_start), date('Y', $month_start));

//date('N',tarih) bu bulunduğu haftanın kaçıncı gününe denk geldiği bilgisidir. Tarih pazar ise 1 pazartesi 2 salı 3 vb döner. Pazaartesi ilk gün olduğu için döngüyü 1den (pazartesi) başlattım. ayın ilk tarihi haftanın hangi gününden başlayacağı if ile belirlenmektedir. date('N', $month_start)==$i ye eşit olana kadar tarih yazılmaz yerine boş alanlar [00-00-0000] ekleniyor. Eşit olunca tarih yazılır ve break; ile for döngüsü kırılır.

for($i=1;$i<8;$i++){
if( date('N', $month_start)==$i){
$ilkhafta=$i;
break;
}else{
echo '<span style="text-decoration: line-through;">[00-00-0000]</span>     ';
}
}

//ayın kalan günleri de sütun sayısı 7 olana kadar yanyana echo ile yazdırılmakta. ilkhafta değişkeni ilk haftadaki günün kaçıncı gün olduğunu tutuyordu üstteki döngüde. bu sayının arttılıldığını görüyorsunuz her seferinde. Yani gün gün 1er artmakta. Ve 7ye her tam bölünmesinde bir alt satıra <br> tagı eklenerek geçilir. Her bir gün J ile sayılır ve Aydaki gün sayısına eşit olduğu zaman do while döngüsünden çıkılır.

$j=0;
do{
echo '['.date('d-m-Y', strtotime('+'.$j.' day', strtotime(date('d-m-Y', $month_start)))).']     ';
$j++;
if($ilkhafta % 7 == 0) echo '<br>';
$ilkhafta++;
}while($j<$aydaki_gun)




Kodların tamamı aşağıdadır


$month_start = strtotime('first day of this month', time());
$aydaki_gun = cal_days_in_month(CAL_GREGORIAN, date('m', $month_start), date('Y', $month_start));
for($i=1;$i<8;$i++){
if( date('N', $month_start)==$i){
$ilkhafta=$i;
break;
}else{
echo '<span style="text-decoration: line-through;">[00-00-0000]</span> ';
}
}
$j=0;
do{
echo '['.date('d-m-Y', strtotime('+'.$j.' day', strtotime(date('d-m-Y', $month_start)))).'] ';
$j++;
if($ilkhafta % 7 == 0) echo '<br>';
$ilkhafta++;
}while($j<$aydaki_gun)

6 Ocak 2015 Salı

Wordpress'e Harici Sayfa Eklemek / How to add - include php files to wordpress

Wordpress sistemi page.php dosyası ile sayfalarını çağırmaktadır.
Dosya yolu wordpress\wp-content\themes\tema_adı\page.php

Bu dosyanın bir kopyasını alın. Adını istediğiniz bir ad ile değiştirin tabi uygunsuz karakter olmasın mesela harici_dosya.php

Sayfada değişikliği sonra yapalım önce bu harici dosyayı nasıl woprdpresste bir sayfa gibi açacağız. Wordpress admin panelini açın. Sayfalar->Yeni Ekle butonuna tıklayın.

Ekranın sağ tarafında Sayfa Özellikleri başlığı altında Şablon açılır menüsünü açın ve sizin harici_dosya isimli seçeneği göreceksiniz. Seçin ve sayfanıza bir başlık adı verin, sayfada bir değişiklik yapmadan yayınlayın.

Sitenizi açtığınızda menüden linke tıklayın ve kendi sayfanızın açıldığını göreceksiniz. Şimdi gelelim dosyanın içini düzenlemeye.

<div id="content" class="site-content" role="main">
....kodlar....
</div>

harici_dosya.php nin içinde id si content olan div tag bloğunu bulun (yukardaki). İçindekileri silin ve sayfada göstermek istediğiniz veritabanı bağlantılı,bağlantısız, düz veya karmaşık site kodlarınızı buraya yapıştırın veya include() edin.

Wordpress ten bağımsız size özel sayfanız artık wordpress in içinde.



#################################

How to include external php files on wordpress,
Simple way is to use page.php file. you can find this file on wordpress\wp-content\themes\tema_adı\page.php
Make a copy of it. Name it whatever you want such as hi.php

Open your wordpress admin panel, click Pages->Add New,
Find the Page Attributes on on the rigth panel. You will see Template combobox, choose your hi template and give your page a Title and Publish.

Tada your page now on your wordpress menu. Lets fill this page,
on your hi.php file find the div that have id="content"
<div id="content" class="site-content" role="main">
....codes....
</div>
erase codes on it. This place is your page content. Write or include whatever you want on this lines.
Have a nice blog.