UO-Developer.com olarak uzun zamandır üzerinde çalıştığımız en önemli projelerden birini gururla duyuruyoruz. Artık Ultima Online Araçlar adresinde, hem Ultima Online oyuncuları hem de shard geliştiricileri için özel olarak tasarlanmış 76 araçlık kapsamlı bir merkez hizmete girdi.
Arkadaşlar ultima online account sistemi için yardım edebilecek arkadaş arıyorum yardımcı olabilecek yada sistemin işleyişi hakkında bilgi verecek kişiler lütfen buraya yazsınlar.
Ben yardımcı olayım. Account sistemindeki mantığın şu olmalı. Websitesinde mysql'a gönderdiğin bilgileri, sphere ile mysql' a aktarma işlemidir.
Hemen sphere serverda rastladığım iyi bir örnekle yola çıkayım, geliştirilebilir bu arada.
Local bilgisayarınza hem sphere hem de internet sitenizi yansıtacak bilgileri veriyorum. Bu işlem yalnızca kayıt sistemi için de kullanılabilir veyahut tüm siteyi de local'e geçirebilirsiniz tıpkı arcanum tıpkı nebula gibi.
Vereceğim account sistemi php diliyle kodlandığından dolayı bu kodlar linux işletim sisteminde çalışmaktadır. Ama Appserv veya EASYPHP gibi programlar ile c:\appserv\www klasörünü linux gibi gösterebiliyor php diliyle kodlanmış sayfalarınızı açabiliyorsunuz. Her ikisi de kullanılabilir.
Bu programları kurduktan sonra APPSERV için konuşuyorum.
http://localhost/phpmyadmin yazarak girişte belirlediğiniz root kullanıcı adılı ve şifreniz ile girin ve sphere diye database oluşturun. daha sonra sql sorgulatmasında aşağıda vereceğim kodları yapıştırın ve veritabanı tablomuz oluşsun.
Veritabanı tablomuz hazır bir köşede bulunsun bu arada bilgilerimizi hatırlayalım.
Database kullanıcı adımız root, şifremiz, veritabanı adımız sphere ve yer localhost.
Daha sonra mysql bağlantısı yapabilmemiz için gerekli 56b sürümü sphere.inimizi açıyoruz gerekli ayarlamaları yapıyoruz ki şudur;
// MySql configuration.
MYSQL=1
MySqlHost=localhost
MySqlUser=root
MySqlPassword=şifremiz
MySqlDatabase=sphere
Daha sonra database ile ilişki kurdurabilmek için sunucu açıldığında komutunun altında mysql'a bağlanalım.
[function f_onserver_start]
DB.CONNECT
if (<DB.CONNECTED>)
serv.log MySQL debug: Mysql dogrulandi, baglandi.
else
serv.log MySQL debug: Mysql baglanti hatasi.
endif
İnternet sitemizden mysql'a bilgiler girdi ama bilgileri sphere' a nasıl çekicez ve account yaratıcaz o da şöyle mümkün olacak.
[function f_acc_update]
if ( <DB.connected> )
DB.QUERY "SELECT * FROM accounts WHERE status='0'"
if (<DB.ROW.NUMROWS> > 0)
for R 0 <eval <DB.ROW.NUMROWS>-1>
DB.EXECUTE "UPDATE `accounts` SET `password` = MD5( '<DB.ROW.<eval <LOCAL.R>>.password>' ) WHERE `accounts`.`login` = '<DB.ROW.<eval <LOCAL.R>>.login>' LIMIT 1"
serv.account add <DB.ROW.<eval <LOCAL.R>>.login> <DB.ROW.<eval <LOCAL.R>>.password>
DB.EXECUTE "UPDATE accounts SET status='1' WHERE login='<DB.ROW.<eval <LOCAL.R>>.login>'"
serv.log MySQL Debug: #<eval <LOCAL.R>> Account <DB.ROW.<eval <LOCAL.R>>.login> has been created!
end
endif
endif
f_acc_update komutunu isterseniz save tetiklemesinde veya timer tetiklemesiyle yapabilirsiniz.
Mesela save tetiklemesinde şöyle olmalıdır.
[FUNCTION f_onserver_save]
serv.f_acc_update
Geriye ne kaldı diye soracak olursak bir tek internet sitesi internet sitesini de size bırakabilirim herhalde çünkü kişiden kişiye değişecektir nasıl duracağı vs. Ama onunda mantığını söyliyeyim php ile mysql bağlantını kontrol ettireceksin ilk başta daha sonra girilen bilgileri mysql' a aktarttırıcan. Bunun içinde gerekli dökümanlar birçok yerde var. Akşama çok daha detaylı belki web sayfalı geliştirdiğim dökümanı paylaşabilirim.
Afronola :
Vereceğim account sistemi php diliyle kodlandığından dolayı bu kodlar linux işletim sisteminde çalışmaktadır. Ama Appserv veya EASYPHP gibi programlar ile c:\appserv\www klasörünü linux gibi gösterebiliyor php diliyle kodlanmış sayfalarınızı açabiliyorsunuz. Her ikisi de kullanılabilir.
Bu kısmı kaçırmışsın galiba gözünden Windows işletim sistemi kullananlar appserv kullanabilir daha sonra c:\appserv\www klasörü onun web hostu olacaktır.