Kendi Yazdığımız Veritabanı İle Basit Mesajlaşma Uygulaması (JSON)

codinger06

Üye
1 Mar 2023
161
136
127.0.0.1
JavaScript - JSON kullanarak basit bir veritabanı yazmıştık, bu konuda yazdığımız veritabanını kullanarak çok basit bir mesajlaşma uygulaması yazacağız.
Normalde böyle bir tasarımla böyle bir proje mesajlaşma uygulaması olarak
gerçek hayatta kullanılmaz fakat bu basit projenin amacı, veritabanı konusunda belirttiğim gibi JSON'u kullanmak.

Yazdığımız veritabanı : Veritabanı

Bu projenin kaynak kodları : Proje

VirusTotal

Projeye gelelim, app.js :
JavaScript:
var db = new DatabaseEngine("messages");
var chat = document.getElementById("chat");
var form = document.getElementById("form-send-msg");
function scrollToBottom(){
    chat.scrollTop = chat.scrollHeight;
}

"messages" adlı bir veritabanımız var, onunla bağlantı kuruyoruz.
Sonrasında
mesajlarımızın gözükeceği alanı ve mesaj göndereceğimiz form'u alıyoruz.
scrollToBottom() fonksiyonu ise mesajlarımızın gözükeceği alanın scrollbarını en aşağı indiriyor, yeni bir mesaj attığımızda bunu kullanacağız.

JavaScript:
function listMessages(){
    var messages = db.getRows();

    chat.innerHTML = "";
    if(messages == 0){
        chat.innerHTML = "<h2 style='text-align:center;'>Daha önce hiçbir mesaj yazılmamış.<h2>";
        return 0;
    }

    for(let i = 0; i < messages.length; i++){
        chat.innerHTML += `
        <div class="msg">
            <div class="sender">${messages[i].sender}</div>
            <div class="text">${messages[i].message}</div>
        </div>
        `;
    }
}

listMessages() adlı bir fonksiyonumuz var, bu fonksiyonda veritabanından mesajları alıp ekrana yazdıracağız. Veritabanımızdaki satırları alıyoruz (mesajları), sonrasında mesajlarımızın gözükeceği yeri temizleyip kontrol ediyoruz eğer herhangi bir mesaj var mı diye yoksa ekrana yok diye yazdırıyoruz, eğer varsa elimizde olan satırların içerisini dolaşarak teker teker tüm mesajları ekrana mesajı yazdıran kişinin adıyla birlikte yazdırıyoruz.



JavaScript:
function sendMessage(){
    var msg = document.getElementById("msg");
    var sender = document.getElementById("username").value;

    db.addRow({"sender" : sender, "message" : msg.value});

    msg.value = "";

    listMessages();
    scrollToBottom();
}


form.onsubmit = e => {
    e.preventDefault();
    sendMessage();
}



setInterval(listMessages, 250);

sendMessage() fonksiyonumuzda kullanıcının gönderdiği mesajı, ve kullanıcının adını depoluyoruz. Sonrasında veritabanımıza ek bir satır olarak bu bilgileri ekliyoruz. Kullanıcı başka bir şey yazarsa diye kullanıcının input'unu temizliyoruz ve mesajları tekrar listeliyoruz, listeledikten sonra da scrollbar'ı en aşağı indiriyoruz.

En sonda bir interval var, her 250 milisaniyede bir mesajları listeliyoruz. Başka bir kullanıcı mesaj yazdığı anda görebilmemiz için.


Büyük ihtimalle bu veritabanımız ile alakalı son konuydu fakat bir de bu veritabanının yönetim paneli gibi bir şeyi de yapabilirim. Görmüş olduğumuz üzere basit projelerde işimizi çok kolaylaştırıyor. Küçük bir mesajlaşma uygulamasının yazılmasının süresini iyice azalttı.

Bunun gibi
birçok proje JSON veritabanını kullanarak gerçekleştirilebilir. Gerçek hayatta halka açık olarak uygulanamaz fakat kendi kullanımınız için zamanınızdan tasarruf ettirebilir.


 

teux

Katılımcı Üye
23 Ocak 2023
959
1,332
JavaScript - JSON kullanarak basit bir veritabanı yazmıştık, bu konuda yazdığımız veritabanını kullanarak çok basit bir mesajlaşma uygulaması yazacağız.
Normalde böyle bir tasarımla böyle bir proje mesajlaşma uygulaması olarak
gerçek hayatta kullanılmaz fakat bu basit projenin amacı, veritabanı konusunda belirttiğim gibi JSON'u kullanmak.

Yazdığımız veritabanı : Veritabanı

Bu projenin kaynak kodları : Proje

VirusTotal

Projeye gelelim, app.js :
JavaScript:
var db = new DatabaseEngine("messages");
var chat = document.getElementById("chat");
var form = document.getElementById("form-send-msg");
function scrollToBottom(){
    chat.scrollTop = chat.scrollHeight;
}

"messages" adlı bir veritabanımız var, onunla bağlantı kuruyoruz.
Sonrasında
mesajlarımızın gözükeceği alanı ve mesaj göndereceğimiz form'u alıyoruz.
scrollToBottom() fonksiyonu ise mesajlarımızın gözükeceği alanın scrollbarını en aşağı indiriyor, yeni bir mesaj attığımızda bunu kullanacağız.

JavaScript:
function listMessages(){
    var messages = db.getRows();

    chat.innerHTML = "";
    if(messages == 0){
        chat.innerHTML = "<h2 style='text-align:center;'>Daha önce hiçbir mesaj yazılmamış.<h2>";
        return 0;
    }

    for(let i = 0; i < messages.length; i++){
        chat.innerHTML += `
        <div class="msg">
            <div class="sender">${messages[i].sender}</div>
            <div class="text">${messages[i].message}</div>
        </div>
        `;
    }
}

listMessages() adlı bir fonksiyonumuz var, bu fonksiyonda veritabanından mesajları alıp ekrana yazdıracağız. Veritabanımızdaki satırları alıyoruz (mesajları), sonrasında mesajlarımızın gözükeceği yeri temizleyip kontrol ediyoruz eğer herhangi bir mesaj var mı diye yoksa ekrana yok diye yazdırıyoruz, eğer varsa elimizde olan satırların içerisini dolaşarak teker teker tüm mesajları ekrana mesajı yazdıran kişinin adıyla birlikte yazdırıyoruz.



JavaScript:
function sendMessage(){
    var msg = document.getElementById("msg");
    var sender = document.getElementById("username").value;

    db.addRow({"sender" : sender, "message" : msg.value});

    msg.value = "";

    listMessages();
    scrollToBottom();
}


form.onsubmit = e => {
    e.preventDefault();
    sendMessage();
}



setInterval(listMessages, 250);

sendMessage() fonksiyonumuzda kullanıcının gönderdiği mesajı, ve kullanıcının adını depoluyoruz. Sonrasında veritabanımıza ek bir satır olarak bu bilgileri ekliyoruz. Kullanıcı başka bir şey yazarsa diye kullanıcının input'unu temizliyoruz ve mesajları tekrar listeliyoruz, listeledikten sonra da scrollbar'ı en aşağı indiriyoruz.

En sonda bir interval var, her 250 milisaniyede bir mesajları listeliyoruz. Başka bir kullanıcı mesaj yazdığı anda görebilmemiz için.


Büyük ihtimalle bu veritabanımız ile alakalı son konuydu fakat bir de bu veritabanının yönetim paneli gibi bir şeyi de yapabilirim. Görmüş olduğumuz üzere basit projelerde işimizi çok kolaylaştırıyor. Küçük bir mesajlaşma uygulamasının yazılmasının süresini iyice azalttı.

Bunun gibi
birçok proje JSON veritabanını kullanarak gerçekleştirilebilir. Gerçek hayatta halka açık olarak uygulanamaz fakat kendi kullanımınız için zamanınızdan tasarruf ettirebilir.


elinize sağlık hocam
 

edeben

Üye
8 Eki 2022
57
19
JavaScript - JSON kullanarak basit bir veritabanı yazmıştık, bu konuda yazdığımız veritabanını kullanarak çok basit bir mesajlaşma uygulaması yazacağız.
Normalde böyle bir tasarımla böyle bir proje mesajlaşma uygulaması olarak
gerçek hayatta kullanılmaz fakat bu basit projenin amacı, veritabanı konusunda belirttiğim gibi JSON'u kullanmak.

Yazdığımız veritabanı : Veritabanı

Bu projenin kaynak kodları : Proje

VirusTotal

Projeye gelelim, app.js :
JavaScript:
var db = new DatabaseEngine("messages");
var chat = document.getElementById("chat");
var form = document.getElementById("form-send-msg");
function scrollToBottom(){
    chat.scrollTop = chat.scrollHeight;
}

"messages" adlı bir veritabanımız var, onunla bağlantı kuruyoruz.
Sonrasında
mesajlarımızın gözükeceği alanı ve mesaj göndereceğimiz form'u alıyoruz.
scrollToBottom() fonksiyonu ise mesajlarımızın gözükeceği alanın scrollbarını en aşağı indiriyor, yeni bir mesaj attığımızda bunu kullanacağız.

JavaScript:
function listMessages(){
    var messages = db.getRows();

    chat.innerHTML = "";
    if(messages == 0){
        chat.innerHTML = "<h2 style='text-align:center;'>Daha önce hiçbir mesaj yazılmamış.<h2>";
        return 0;
    }

    for(let i = 0; i < messages.length; i++){
        chat.innerHTML += `
        <div class="msg">
            <div class="sender">${messages[i].sender}</div>
            <div class="text">${messages[i].message}</div>
        </div>
        `;
    }
}

listMessages() adlı bir fonksiyonumuz var, bu fonksiyonda veritabanından mesajları alıp ekrana yazdıracağız. Veritabanımızdaki satırları alıyoruz (mesajları), sonrasında mesajlarımızın gözükeceği yeri temizleyip kontrol ediyoruz eğer herhangi bir mesaj var mı diye yoksa ekrana yok diye yazdırıyoruz, eğer varsa elimizde olan satırların içerisini dolaşarak teker teker tüm mesajları ekrana mesajı yazdıran kişinin adıyla birlikte yazdırıyoruz.



JavaScript:
function sendMessage(){
    var msg = document.getElementById("msg");
    var sender = document.getElementById("username").value;

    db.addRow({"sender" : sender, "message" : msg.value});

    msg.value = "";

    listMessages();
    scrollToBottom();
}


form.onsubmit = e => {
    e.preventDefault();
    sendMessage();
}



setInterval(listMessages, 250);

sendMessage() fonksiyonumuzda kullanıcının gönderdiği mesajı, ve kullanıcının adını depoluyoruz. Sonrasında veritabanımıza ek bir satır olarak bu bilgileri ekliyoruz. Kullanıcı başka bir şey yazarsa diye kullanıcının input'unu temizliyoruz ve mesajları tekrar listeliyoruz, listeledikten sonra da scrollbar'ı en aşağı indiriyoruz.

En sonda bir interval var, her 250 milisaniyede bir mesajları listeliyoruz. Başka bir kullanıcı mesaj yazdığı anda görebilmemiz için.


Büyük ihtimalle bu veritabanımız ile alakalı son konuydu fakat bir de bu veritabanının yönetim paneli gibi bir şeyi de yapabilirim. Görmüş olduğumuz üzere basit projelerde işimizi çok kolaylaştırıyor. Küçük bir mesajlaşma uygulamasının yazılmasının süresini iyice azalttı.

Bunun gibi
birçok proje JSON veritabanını kullanarak gerçekleştirilebilir. Gerçek hayatta halka açık olarak uygulanamaz fakat kendi kullanımınız için zamanınızdan tasarruf ettirebilir.


Hocam eğer alıntı yapmadıysan ki ben başka yerlerde görmedim gerçekten güzel bir başlık olmuş bu dilde ilerlemek isteyen arkadaşlar için gayet güzel ve anonim mesajlaşma tarzı şeyler ile ilgilenen arkadaşlarında hoşuna gideceğinden hiç şüphem yok
 
Son düzenleme:

codinger06

Üye
1 Mar 2023
161
136
127.0.0.1
Hocam eğer alıntı yapmadıysan ki ben başka yerlerde görmedim gerçekten güzel bir başlık olmuş bu dilde ilerlemek isteyen arkadaşlar için gayet güzel ve anonim mesajlaşma tarzı hoşuna giden arkadaşlarında hoşuna gideceğinden hiç şüphem yok
teşekkürler hocam alıntı yapmadım bir sene önce falan aklıma gelmişti sıkılmıştım yapmıştım json ile veritabanı sonra onun dosyalarını bulamadım bir daha yapayım foruma atayım dedim
 

ByZehirx

Yaşayan Forum Efsanesi
10 Şub 2012
12,386
2,001
Dinlenmede.
Hocam eğer alıntı yapmadıysan ki ben başka yerlerde görmedim gerçekten güzel bir başlık olmuş bu dilde ilerlemek isteyen arkadaşlar için gayet güzel ve anonim mesajlaşma tarzı hoşuna giden arkadaşlarında hoşuna gideceğinden hiç şüphem yok


Bu yorumun için akşam seni konuya etiketliyecegim konuyu okursun :)

@codinger06 merhaba
Geçende sanki senin konuna yazmişmiydim ben sensin diye hatırladım da severim böyle konuları işin açıkçası pek böyle konu açılmaz "Ben açmazsam"


JavaScript yazılım proje oluşturulmada uzun ama çok uzun yıllardır hayatımızda ilk temasları hissedenler
Nokia/Samsung 3310 model telefonlarda oynadığımız yılan oyunu ve telefonun tamamında bütünlük sagliyan bugünün "Karnel" SDK temelini oluşturuyor.


JavaScript harika bir iş ortağı ve arkadaşıdır herşeyi biranda kolayca halletmeye sorunları ortadan kaldirmaya birebirdir.


javascriptWebView
getWebViewString() and setWebViewString(text)
Ve HTTP Get/Post işlemi ile
SMS API servislerini rahatca kullanmayı kolaylaştırır

JavaScript ve Json bir çözücü olarak birbirine benzer.
JavaScript ile bir veri gönderdiğinde
Verinin dönüşü sana "Json" ile gelmelidir şayet gelmez ise mutlaka Json ile uncode yaparak veriyi kullanılması anlaşılması için gereklidir.


WebViewer.WebViewStringChange


Bkz.

JavaScript:
let apiKey = "Get API Key from https://httpsms.com/settings";

fetch('https://api.httpsms.com/v1/messages/send', {
    method: 'POST',
    headers: {
        'x-api-key': apiKey,
        'Accept': 'application/json',
        'Content-Type': 'application/json'
    },
    body: JSON.stringify({
        "content": "This is a sample text message",
        "from": "+18005550199",
        "to": "+18005550100"
    })
})
.then(res => res.json())
.then((data) => console.log(data));

Bu bir WebViewScripts PostGet
Verinin dönüşü ise

JSON:
{
  "content": "This is a sample text message",
  "from": "+18005550199",
  "sim": "DEFAULT",
  "to": "+18005550100"
}


" : " + Noktalama ve content/event/publis/array vs gibi kod eylemlerini cözebilir ortaya bir WebSmsSend Projesi çıkarabilir.


Biraz dağınık oldu yorum ama akşama güzel bir konu açtığımda detaylandiririm.
 

edeben

Üye
8 Eki 2022
57
19
Bu yorumun için akşam seni konuya etiketliyecegim konuyu okursun :)

@codinger06 merhaba
Geçende sanki senin konuna yazmişmiydim ben sensin diye hatırladım da severim böyle konuları işin açıkçası pek böyle konu açılmaz "Ben açmazsam"


JavaScript yazılım proje oluşturulmada uzun ama çok uzun yıllardır hayatımızda ilk temasları hissedenler
Nokia/Samsung 3310 model telefonlarda oynadığımız yılan oyunu ve telefonun tamamında bütünlük sagliyan bugünün "Karnel" SDK temelini oluşturuyor.


JavaScript harika bir iş ortağı ve arkadaşıdır herşeyi biranda kolayca halletmeye sorunları ortadan kaldirmaya birebirdir.


javascriptWebView
getWebViewString() and setWebViewString(text)
Ve HTTP Get/Post işlemi ile
SMS API servislerini rahatca kullanmayı kolaylaştırır

JavaScript ve Json bir çözücü olarak birbirine benzer.
JavaScript ile bir veri gönderdiğinde
Verinin dönüşü sana "Json" ile gelmelidir şayet gelmez ise mutlaka Json ile uncode yaparak veriyi kullanılması anlaşılması için gereklidir.


WebViewer.WebViewStringChange


Bkz.

JavaScript:
let apiKey = "Get API Key from https://httpsms.com/settings";

fetch('https://api.httpsms.com/v1/messages/send', {
    method: 'POST',
    headers: {
        'x-api-key': apiKey,
        'Accept': 'application/json',
        'Content-Type': 'application/json'
    },
    body: JSON.stringify({
        "content": "This is a sample text message",
        "from": "+18005550199",
        "to": "+18005550100"
    })
})
.then(res => res.json())
.then((data) => console.log(data));

Bu bir WebViewScripts PostGet
Verinin dönüşü ise

JSON:
{
  "content": "This is a sample text message",
  "from": "+18005550199",
  "sim": "DEFAULT",
  "to": "+18005550100"
}


" : " + Noktalama ve content/event/publis/array vs gibi kod eylemlerini cözebilir ortaya bir WebSmsSend Projesi çıkarabilir.


Biraz dağınık oldu yorum ama akşama güzel bir konu açtığımda detaylandiririm.
Konuya etiketleyeceğim diye bana mı dediniz hocam.
 

codinger06

Üye
1 Mar 2023
161
136
127.0.0.1
Bu yorumun için akşam seni konuya etiketliyecegim konuyu okursun :)

@codinger06 merhaba
Geçende sanki senin konuna yazmişmiydim ben sensin diye hatırladım da severim böyle konuları işin açıkçası pek böyle konu açılmaz "Ben açmazsam"


JavaScript yazılım proje oluşturulmada uzun ama çok uzun yıllardır hayatımızda ilk temasları hissedenler
Nokia/Samsung 3310 model telefonlarda oynadığımız yılan oyunu ve telefonun tamamında bütünlük sagliyan bugünün "Karnel" SDK temelini oluşturuyor.


JavaScript harika bir iş ortağı ve arkadaşıdır herşeyi biranda kolayca halletmeye sorunları ortadan kaldirmaya birebirdir.


javascriptWebView
getWebViewString() and setWebViewString(text)
Ve HTTP Get/Post işlemi ile
SMS API servislerini rahatca kullanmayı kolaylaştırır

JavaScript ve Json bir çözücü olarak birbirine benzer.
JavaScript ile bir veri gönderdiğinde
Verinin dönüşü sana "Json" ile gelmelidir şayet gelmez ise mutlaka Json ile uncode yaparak veriyi kullanılması anlaşılması için gereklidir.


WebViewer.WebViewStringChange


Bkz.

JavaScript:
let apiKey = "Get API Key from https://httpsms.com/settings";

fetch('https://api.httpsms.com/v1/messages/send', {
    method: 'POST',
    headers: {
        'x-api-key': apiKey,
        'Accept': 'application/json',
        'Content-Type': 'application/json'
    },
    body: JSON.stringify({
        "content": "This is a sample text message",
        "from": "+18005550199",
        "to": "+18005550100"
    })
})
.then(res => res.json())
.then((data) => console.log(data));

Bu bir WebViewScripts PostGet
Verinin dönüşü ise

JSON:
{
  "content": "This is a sample text message",
  "from": "+18005550199",
  "sim": "DEFAULT",
  "to": "+18005550100"
}


" : " + Noktalama ve content/event/publis/array vs gibi kod eylemlerini cözebilir ortaya bir WebSmsSend Projesi çıkarabilir.


Biraz dağınık oldu yorum ama akşama güzel bir konu açtığımda detaylandiririm.
merhaba JavaScript çok evrensel bir şey her yerde kullanılıyor çok kullanışlı, android veya mobil taraflarında hiç çalışmam olmadı oralarda bile kendisi ve alt yapıları kullanılıyor olması ne kadar evrensel olduğunu gösteriyor. JSON'dan zaten söz etmeye gerek yok o tamamen her tarafta veri iletimi - alımı için çok iyi
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.