Ionic Framework ile Havadurumu Uygulaması

Merhaba arkadaşlar okul projesi olarak ionic framework ile uygulama geliştirme projesi aldım. Projeyi çalıştırma ve ayarlamaları github hesabımda paylaştım giriş seviyesindeki arkadaşlara yardımcı olacaktır. Uygulama belirlenen 2 siteden verileri alarak sıralamadan oluşuyor. Server tarafında nodejs ön yüzde ise ionic framework kendi elementleri kullanıldı.

resim1

resim2

Kodlar

NodeJS Notlarım – 4

Merhaba arkadaşlar şuan NodeJS ile bir proje geliştiriyorum ve hatırlamak amaçlı tuttuugum notlara devam ediyorum.Önceki yazıda Express’ten bahsetmiştim. Bu bölümde ise Express ile post işlemi yapacağız. Express generator ile gerekli dosyaları oluşturalım.Body-parse paketinide yükleyelim. Normalde Express yüklediğimizde View klasörü içindeki jade kodları çalışır ancak biz html ile çalışacağımız için public klasörü içine bir html dosyası oluşturalım. Dosya dizini şu şekilde olmalı
Untitled
daha sonra form oluşturmak için kodları yazalım.

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Post Method</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
  </head>
  <body>
    <div class="row">
      <div class="col-md-4" style="padding:25px">
          <form action="/post" method="post">
        <div class="form-group">
          <label for="">Ad Soyad</label>
          <input type="text" class="form-control" placeholder="Ad Soyad" name="kadi">
        </div>
        <div class="form-group">
          <label for="exampleInputPassword1">Şifre</label>
          <input type="password" class="form-control" placeholder="Şifre" name="sifre">
        </div>
        <button type="submit" class="btn btn-default">Gönder</button>
      </form>
  </div>
 </div>
  </body>
</html>

daha sonra index.js içerisine Express’in router ile fonksiyon oluşturalım.

router.post('/post',function(req,res,next){
    var kadi = req.body.kadi;
    var sifre = req.body.sifre;
    res.send('Hosgeldin'+kadi);
});

oluşturduğumuz değişkenlere post edilen değerleri gönderiyoruz. Buradaki önemli nokta fonksiyonun geriye bir şey dödürmesidir. Kodlara buradan ulaşabilirsiniz.

Multer Kütüphanesi ile Dosya yükleme

Merhaba arkadaşlar bu yazıda NodeJS ile dosya yükleme işlemi yapacağız. NodeJS’nin paket yönetim sistemi olan npm‘den Multer kütüphanesinin kullanımına baktığımızda oldukça basittir. View kısmında bir form oluşturalım ve inputları girelim bu kısımda başka yapacağımız işlem yok.

<form id="uploadForm" enctype="multipart/form-data" action="/api/photo" method="post">
      <input type="file" name="userPhoto" class="form-control"/> 
      <input type="submit" class="btn btn-default" value="Dosya Yükle" name="submit">
</form>

daha sonra server kısmına geçmeden önce buradan Multer kütüphanesini projemize dahil edelim daha sonra yüklenecek olan dosylara bir yol belirtmemiz gerekiyor uploads adında bir klasör oluşturalım.

var upload = multer({ dest: 'uploads/' })

daha önce oluşturduğumuz formu post metodu ile buraya yolluyoruz ve kontrol işlemini gerçekleştiriyoruz.

var express    =       require("express");
var multer     =       require('multer');
var app        =       express();
var done       =       false;
 
app.use(multer({ dest: './uploads/',
 rename: function (fieldname, filename) {
    return filename+Date.now();
  },
onFileUploadStart: function (file) {
  console.log(file.originalname + ' is starting ...')
},
onFileUploadComplete: function (file) {
  console.log(file.fieldname + ' uploaded to  ' + file.path)
  done=true;
}
}));
 
app.get('/',function(req,res){
      res.sendfile("index.html");
});
 
app.post('/api/photo',function(req,res){
  if(done==true){
    console.log(req.files);
    res.end("Dosya Yüklendi");
  }
});
 
app.listen(3000,function(){
    console.log("3000'ci port çalışıyor.");
});

Yazıyı burada sonlandırıyorum. Proje dosyalarına buradan ulaşabilirsiniz.

NodeJS Notlarım – 3

NodeJS en çok kullanılan paketlerin başında expressjs gelir. Günlük olarak ortalama 100 bin(npm’nin kayıtlarına göre :D) üzerinde indiriliyor. Bu derste kurulumunu göstereceğim, bir sonraki derste ufak bir iletişim bölümü yaparak inputlar üzerinden post işlemleri yapacağız. NodeJS’nin en güzel yönü olan pratik paket yükleme kodları ile expressi kuralım.

npm install express -g

NodeJS’de klasik olan -g tabiri globaldan gelmektedir isterseniz yazmadan da kurabilirsiniz. Konsolo yazdığımızda hata ile karşılaşırsak bu büyük ihtimalle dosya izinlerinden dolayıdır. Başına sudo eklememiz yeter.

sudo npm install express -g

Hızlı bir şekilde uygulamanın iskeletini oluşturmak için aynı dizinde şunu yazmalıyız.

npm install express-generator -g

projede oluşan dosyalar bu şekildedir.
bIHIxCv

Daha sonra express myapp ile uygulama adını oluşturalım, dependencies içinde paket varsa onları yükleyelim.

npm install

Buraya kadar kurulumu tamamlamış olduk projenin olduğu dizine gelerek uygulamayı açalım. Hata alırsanız node yerine nodejs deneyin. Normalde http://localhost:4000/ portunda çalışır ancak bende o port kullanıldığı için 4000 yönlendirdim.

node ./bin/www

en son
bu yazıda anlatacaklarım bu kadar herkese iyi çalışmalar.

NodeJS Notlarım – 2

Merhaba arkadaşlar NodeJS hakkındaki notlarıma devam ediyorum. Bu yazıda Mysql ile NodeJS arasında bağlantı kurmayı göreceğiz kısa olarak, öncelikle şunu belirteyim. NodeJS’yi genel olarak MongoDB ile kullanırlar daha basittir. Mysql ile kullanımı pek tercih edilmez. Yine bir kenarda dursun diye ufaktan bahsedelim. Veritabanı oluşturalım node adında ve kisi adında tablo oluşturup 4 satır ekleyelim id,ad,soyad ve durum diye daha sonra app.js adında bir dosya oluşturalım. NodeJS kodlarımızı yazmak için bir server oluşturmamız gerekiyor NodeJS kendi sitesinden kodları alalım.

var http = require('http');

http.createServer(function (req, res) {
   res.writeHead(200, {'Content-Type': 'text/plain'});
   res.end('Hello World\n');
}).listen(1337, '127.0.0.1');

console.log('Server running at http://127.0.0.1:1337/');

serverımızı oluşturduktan sonra mysql modülünü sayfamıza dahil edelim.
npm install mysql
daha sonra app.js’de kullanmamız için sayfaya çağıralım ve veritabanı bağlantısını sağlayalım.

var mysql      = require('mysql');
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'root',
  password : '',
  database : 'node'
});

connection.connect();

şuan veritabanına bağlantıyı geçekleştirdik. Örnek olarak bir insert işlemi yapalım.

var sql = "INSERT INTO kisi (id,ad,soyad,durum) VALUES ?";
var values = [
  [1, 'Aaron', 'Swartz',1],
  [2, 'Dennis', 'Ritchie',0]
];
connection.query(sql, [values], function(err) {
  if (err) throw err;

});

sql değişkenine sorguyu yazıyoruz ve query fonksiyonun ilk parametresine ekliyoruz ikinci parametreye değerleri yazıyoruz ve son parametreye ise hata oluşması durumunda hatayı fırlatmak için bir fonksiyon yazıyoruz app.js’nin dizinine gelip çalıştırdığımızda ekleme başarılı bir şekilde gerçekleşecektir. NodeJS’de veritabanı işlemleri şekildeki gibidir daha ayrıntılı incelemek isterseniz bu adresten ulaşabilirsiniz. Herkese iyi çalışmalar.

Next Posts