Venus Programlama

MySQL Bağlantısı Yapmak

ASP, MySQL, PHP 1 yorum »

Bu yazımızda MySQL veritabanına ASP ve PHP’de nasıl bağlantı sağlanacağımızı ve veri çekebileceğimizi öğreneceğiz. Öncelikle ASP ile başlayalım. ASP’de bir MySQL bağlantısı için ADODB objesinden yararlanırız.

Set Baglanti = Server.CreateObject("ADODB.Connection")
Baglanti.Open "Driver={MySQL ODBC 3.51 Driver};Server=sunucu_adres;Database=db_adi;Port=3306;Uid=kullanici;Password=sifre;"

Set Kayitlar = Baglanti.Execute( "SELECT * FROM tablo_adi ORDER BY id DESC LIMIT 0, 10;" )
Do While Not Kayitlar.Eof
Response.Write Kayitlar("alinacak_veri") + "<br>"
Kayitlar.MoveNext
Loop

Baglanti.Close

Yukarıda geçen “Baglanti” ve “Kayitlar” birer değişken olup. Biri bize bağlantımız hakkında bilgi verir, diğeri ise Baglanti.Execute() ile istediğimiz kayıtları barındırır. Bağlantıyı Baglanti.Close() ile kapatmayı unutmayın. Yukarıda yer alan Kayitlar.EOF bir mantıksal değer olup ancak kayıt listelemeleri bittikten sonra true (doğru) karşılığını verir. Kayitlar.MoveNext ise bir sonraki kaydı istemek için kullanacağımız koddur. Yukarıda bağlantıyı sağlarken kullanılan sunucu_adresi, db_adi, kullanıcı, şifre bilgilerini doğru yazmazsanız bağlantı sağlanamaz. Bunlar MySQL’e bağlantı için gereklidir.

Peki PHP’de MySQL’e nasıl bağlanırız? Yukarıda yazdığımız ASP kodunu birebir PHP’ye dönüştürecek olursak aşağıdaki gibi bir kodlamaya gideriz.

mysql_connect('sunucu_adresi','kullanici','sifre');
mysql_select_db('db_adi');

$sorgu = mysql_query( "SELECT * FROM tablo_adi ORDER BY id DESC LIMIT 0, 10;" );
while( $kayitlar = mysql_fetch_array( $sorgu ) )
echo $kayitlar['alinacak_veri'] . '<br>';

mysql_close();

Yukarıda göreceğimiz gibi bağlantımızı mysql_connect() ile sağlıyoruz. Parantez içine sırasıyla sunucu adresi, kullanıcı adı ve şifresi yazılır. mysql_select_db() ile hangi veritabanını kullanacağımızı seçtikten sonra bağlantıyı sağlamış oluruz. Eğer birden fazla veritabanı ile işlem yapacaksanız mysql_select_db’den sonra bir de bağlantı için atayacağınız bir değişken kullanmalısınız.

Sorgu cümlemizi mysql_query() komutuyla yazdıktan sonra kayıtları mysql_fetch_array ya da mysql_fetch_assoc ile alırız. Sıralama için kolaylık olması açısından while() döngüsü kullandık. Burada başka bir değişken olarak kayıtların depolanacağı arraylist (dize) yi belirttik ($kayitlar) ve finalde mysql_close() ile veritabanı bağlantısını kapattık.

(NOT: Bir PHP belgesi mutlaka “<?” ile başlar ve “?>” ile biterken, ASP belgesi “<%” ile başlar ve”%>” ile biter. Kodlar ile ilgili alıştırma yaparken bunu dikkate almayı unutmayın.


Mesaj Kutusu Hazırlama

Visual Basic Yorum yapılmamış »

Visual Basic kullananların bazen kullanıcıya ileti vermeleri gerekebilir. Bu bir uyarı, soru ya da hata mesajı olabilir. Programı kullanarak kullanıcıya mesaj kutusu vermek için msgbox() fonksiyonundan yararlanırız. Bu komut, bir sayısal değere işaret eder. Yani bir değişkendir. İç kısımda 3 bilgi istemektedir. Aşağıda burada anlatılanı bulabilirsiniz:

Uyarı: Option Explicit kullanıldıysa kodlarımız arasında değişken öncelikle Module ya da Genel Fonksiyonlarda DIM <degisken> şeklinde belirtilmelidir.

degisken = MsgBox(“Mesaj”, ayarlamalar, “Başlık”)

Burada belirtilen ayarlamalar sayılarla belirtilir. 3 grupta ele alınır. 1. grup hangi butonların olacağı, 2. grup mesajın sol tarafındaki simge, 3. grup ise öndeğer (enter’a basıldığında çalışacak) butonu seçmemize yarar.

1. Grup Ayarları:
0- Sadece Tamam butonu.
1- Tamam ve İptal butonu.
2- Vazgeç, Yeniden Dene, Yoksay butonları.
3- Evet, Hayır, İptal butonları.
4- Evet ve Hayır butonları.
5- Yeniden Dene, İptal butonları.

2. Grup Ayarları
16- Hata İşareti
32- Soru İşareti
48- Ünlem İşareti
64- Bilgi İşareti

3. Grup Ayarları
0- 1. buton öndeğer.
256- 2. buton öndeğer.
512- 3. buton öndeğer.

Tüm grupları kullanmak zorunda değilsiniz, fakat kullanacaksanız hepsinin toplamını yazmanız gerektiğini unutmayın. Örneğin Evet Hayır sorusu soran ve soru işareti kullanılan bir mesaj kutusu hazırlayacaksak:

degisken = MsgBox("Çıkmak istiyor musunuz?", 4 + 32, "Programı Kapat")

Buradaki 4, Evet-Hayır butonlarını kullanacağımız, 32 ise soru işareti simgesi kullanılacağını ifade ediyor. Peki kullanıcıdan gelen cevabı nasıl alacağız? Bunun için mesaj kutusunun ön tarafında belirttiğimiz değişkeni kullanırız. Gelen değere göre yorumlama yaparız:

1- Tamam’a basıldı.
2- İptal’e basıldı.
3- Vazgeç’e basıldı.
4- Yeniden Dene’ye basıldı.
5- Yoksay’a basıldı.
6- Evet’e basıldı.
7- Hayır’a basıldı.

Değişkenden aldığımız veriye göre kodlarımızı yazar ve bilgiyi aldığımızda ne yapacağımızı belirleriz.

Basic Dilinde Değişkenler

Quick Basic Yorum yapılmamış »

Her programlama dili değişkenlere sahiptir. Bunlar sayısal, alfasayısal ya da mantıksal bir değer olabilir. Quick Basic’de değişkenler harf ile (A-Z) başlamak ve Türkçe karakter barındırmamak şartıyla kullanılır. Bunlar INTEGER (sayısal), LONG INTEGER (büyük sayısal), SINGLE (küçük sayısal), DOUBLE (negatif ve pozitif uzun) olabileceği gibi sonu $ işareti ile bitecek şekilde alfasayısal olabilir. Mantıksal değerler ise 0 ya da 1 ile ifade edilir. Şimdi bu anlattıklarımızı örnekleyelim.

Sonuc% = 4 + 2
PRINT "4 + 2 = "; Sonuc% // 6 gösterilir.

Burada eğer integer kullanıyorsanız kullanacağınız %, # gibi işaretler yerine hiçbir işaret kullanmadan da kullanabilirsiniz (Mesela sadece Sonuc yazabilirdik yukarı). Fakat alfasayısal yani kelimelerden oluşacak bir değişkende mutlaka $ işareti sonuna eklenmeli ve değer tırnak işaretleri arasında yazılmalıdır:

Degisken$ = "Bu bir harflerden oluşan değer..."

Bize kullandığımız programın getirdiği bir kolaylık olarak !, #, $ gibi işaretlerden birini kullanmayabiliriz. Bunu programın başında belirteceğimiz DEFINT (hiçbiri belirtilmediyse bu geçerlidir), DEFSTR ($ işareti kullanmamamızı sağlar), DEFLNG, DEFDBL gibi komutlarla yapmaktayız.

Gelgelelim işlem yapmaya. Matematiksel işlemleri + (toplama), – (çıkarma), * (çarpma), / (bölme) gibi işaretlerle yapmaktayız. Matematikte olduğu gibi işlem önceliği parantezlerdedir. Sonra çarpma-bölme ve en son toplama-çıkarma gelmektedir.


Not1 = 60
Not2 = 40
OrtNot = (Not1 + Not2) / 2
PRINT OrtNot

String yani karakterler içeren değişkenler de birbiriyle toplanabilmektedir. Bu işlemi + işareti ile yapmaktayız. Bunu bir örnekte görelim:

Ad$ = "Murat"
Soyad$ = "Eliçalışkan"
TamAd$ = Ad$ + Space$(1) + Soyad$
PRINT TamAd$

Böylelikle basit anlamda değişkenleri tanımış olduk.

PHP’de Tarih ve Saat

PHP Yorum yapılmamış »

Bir php dosyasında tarih ve saat bilgisini time() komutu ile alırız. Bu kod normalde bize 1970 yılından bu yana kaç saniye geçmiş bu bilgiyi verir. Örneğin 1227994453 bu komutla alabileceğimiz bir bilgi. Bunu anlamlı hale getirmemize yarayan kod ise date( ‘ayarlar’, zaman ); komutu. Ayarlar bölümünde geçen d günü, m ayı, Y yılı, G saati, i dakikayı ve s saniyeyi gösterir. Şimdi time komutunun yardımıyla tarihi yazdıralım:

echo date( 'd/m/Y G:i:s', time() );

Bu komutu çalıştırdığımızda 29/11/2008 23:37:11 gibi bir veriyi ekrana yazdırdığını görüyoruz. Ayarlar bölümünde değişiklik yaparak istediğimiz şekilde görünmesini sağlayabiliriz. Hatta sadece G:i kullanarak saati ya da d-m-Y kullanarak tarihi görüntüleyebiliriz.

Peki Türkçe olarak 29 Kasım 2008 Cumartesi nasıl yazdırabiliriz? Bunun için bir dize oluşturup veriyi almamız gereklidir. Bir örnekle gösterecek olursak.

$gunler = array('Pazar','Pazartesi','Salı','Çarşamba','Perşembe','Cuma','Cumartesi');
echo 'Bugün günlerden ' . $gunler[ date('w',time()) ];

Çalıştırdığımızda Bugün günlerden Cumartesi yazdığını görürüz. Burada kullandığımız w ayarlaması bize 0-6 arasında bir sayı verir. 0 = Pazar, 6 = Cumartesi şeklindedir. Gelen veriyi dizemizde kullanarak Türkçeye çevirdik.

Bazen sunucunun yerel saatine bağlı olarak time() komutu bulunduğunuz yere göre farklı saat verebilir. Buna engel olmak için php.ini dosyasını php’den değiştirmemiz yeterlidir. Örneğin Amerika lokasyonlu bir sunucudaysanız Türkiye saatine göre time() yi görebilmek için aşağıdaki kullanılmalı:

ini_set( 'date.timezone', 'Europe/Istanbul' );

Böylece tüm zaman ayarlarımız kendi saatimize göre ayarlanmış olacaktır.

Qbasic’te Ekrana Yazı Yazma

Quick Basic Yorum yapılmamış »

Şöyle bir kara kaplı defterin tozlu sayfalarını çevirirken, eski siteden buraya aktaracağım ilk konu ne olsun diye düşünüyordum. Ve tabiki başlangıç düzeyinde PRINT komutunu ile ilgili ipuçları vermenin iyi olacağına karar verdim. Halen üniversitelerin belli bölümlerinde quick basic öğretilmekte. O halde bunu öğrenen arkadaşlarımız için PRINT’in ayrıntılarına dalma vakti.

PRINT "Merhaba Dünya!"

Yukarıda görüldüğü üzere çift tırnak işareti içinde (ya da tek tırnak, ama başladığı gibi biter) kullanılır. Böylece dos ekranına Merhaba Dünya! yazdırmış olacağız. Peki nasıl renklendireceğiz yazımızı. Bunun için de COLOR <0-16> komutu kullanılır:

COLOR 14
PRINT "Renk 14 de bir yazı..."

Bazen sayılarla işlem yaparken sayıları biçimlendirmemiz gerekebilir. Örneğin 3,333333333… sonucunu ekranda göstermek yerine 3,33 yazdırmayı sağlayabiliriz. Bunun için de PRINT USING “format”; sayı komutundan yararlanırız.

PRINT USING "##.#"; 3.33333333

Bunu görüntülersek 3,33 yazdırdığını görürüz. Son olarak yazıcıya veri nasıl gönderebiliriz bunu anlatalım. Bunun içinde LPRINT komutunu kullanırız.

LPRINT "Bu yazı yazıcıdan çıkacak..."

PRINT komutunu kullanırken değişkenler kullanabildiğinizi unutmayın. Saygılarımla…


Wordpress'in katkılarıyla hazırlandı ve ndesign teması kullanıldı.
Venus © 2008
Konular RSS Yorumlar RSS Giriş