DÜNYADAN EVİNİZİ KONTROL EDİN_2

Bu yazımın konusunu daha önce işlemiştim. Aşağıda linkini görebilirsiniz. Fakat bir güncelleme yapmam gerekiyordu.
Eski yazım 000webhost ve SQL database ile ilgiliydi. o yazımında size çok faydası olacak. Fakat teknolojik gelişmeler ve versiyon farklılıklarından dolayı programlamada bazı değişiklikler oldu.

Bunu ilk yazıma iliştirip güncelleme yapabilirdim fakat bu doğru olmazdı. Çünkü artık eski PHP programlarım bile geçerli değildi. Bu programlar bile çalışmıyordu.

BU konuda İLK yazdığım yazı bu LİNKTEDİR.

Ayrıca FREE(bedava hosting kalmadı. bedava verdiğini söyleyen yerler de güvenlik açıklarından dolayı internet browser gibi java destekli araçlar haricinde çalışmıyordu. Mesela ESP modülünüz ile bu bedava sitelerdeki PHP dosyalarınıza ulaşamıyordunuz. Hatta SQL veri tabanı versiyonu yeni olduğundan artık MYSQL komutu değil MYSQLİ komutu ile verilere ulaşabiliyorsunuz.

Bu yazımda ise bunlara dikkat çekeceğim. Sonuçta mantık aynı, İnternette bir SQL veri tabanı var. Evdeki ESP modülünüz buna ulaşmak için bir php dosyası kullanıyor. Bu PHP dosyası da SQL veri tabanına bilgi yazıyor ya da okuyor.

Önemli olan PHP dosyasının ve SQL veritabanının ev içinde değil dışarıda olması. Çünkü ev içinde olsaydı hem güvenliğinden sorumlu olacaktınız, hem de STATIC IP satın almanız gerekirdi. Devamlı aynı IP adresinden bağlanabilmeniz için. Bundan dolayı Evde sunucu bulundurmak pek iyi değildir. Yine de evde bir PHP ve MYSQL sunucu kurup, statik IP satın alıp bunları evden de yapabilirsiniz.

Dünyadan ev kontrolü dediğimiz işi yapabilecek sadece bu ESP+PHP+SQL 3 lüsü değildir.
Evdeki ev otomasyon sistemleri ile İnternet üzerinden çeşitli broker denilen bulundurma hizmetlerini kullanabilirsiniz.
Mesela THINGSPEAK ki bu konudaki yazım aşağıdadır.
Bunun Yanısıra GOOGLE SHEET ile de bunu yapabiliyorsunuz Bu yazım da aşağıdadır.
Birçok seçenek bulabilirsiniz. Fakat benim güvenli olduğunu düşündüğüm FIREBASE sitesi de var ki bunun da yazıları aşağıdadır.

Sizler hangisini seçerseniz o şekilde çalışabilirsiniz. Bir de yazılarımın arasında
GOOGLE ASİSTAN ve ALEXA ile ev otomasyonu nasıl yapılır konusu var. Bu yazımda size faydalı olacaktır.

BU konudaki yazılarım:

THINGSPEAK Yazım: https://www.mikrobotik.com/wp2/2023/03/24/thingspeak-uygulamalari-ve-arduinoesp01s-ile-ev-otomasyonu/
GOOGLE SHEET Yazım: https://www.mikrobotik.com/wp2/2020/08/28/esp8266-01-ve-google-e-tablo-ile-dunyanin-her-yerinden-evinizi-kontrol-edin/
FIREBASE _1 Yazım: https://www.mikrobotik.com/wp2/2020/05/04/esp8266-01-firebase-database-picarduinostm/
FIREBASE_2 Yazım ile birlikte GOOGLE ASSISTAN VE ALEXA Yazım:
https://www.mikrobotik.com/wp2/2023/02/28/google-asistan-ga-ve-alexa-programlariyla-ev-otomasyon-ve-kendi-asistanimizi-yapmak/

Konumuzu anlatmaya başlarsak, aşağıdaki SQL bulundurma sitesinden bedava SQL hesabı aldım. Bu hesap 1 haftalık periyotlarla bedava olarak uzatılıyor. İsterseniz, paralı abone de olabilirsiniz.
Bununla birlikte PHP dosyalarının bulundurulacağı bedava bir site buldum. Bu da yukarıda değindiğim gibi sadece internet browser üzerinden JAVA destekli iletişim ile çalıştırmanızı sağlıyor. Mesela ben mikrobotikradyo sitemi buraya yerleştirdim buradan çalışıyor. PHP dosyalarımı yerleştirdim buradan çalışıyor. Fakat bunlara sadece internet browser dan ulaşabiliyoruz.

Bu linkleri deneyerek gelen PHP program çıktılarını internet sayfasından görebilirsiniz.
FREE HOST LİNK’i Bu link sadece İnternet browserdan görüleblir çünkü java destekli bir yerden istek yapılması lazım. ESP buna ulaşamıyor java desteği olmadığı için.
http://mikrobotikradyo.unaux.com/api2/led/read_db_mysqli2.php?id=2
http://mikrobotikradyo.unaux.com/api2/led/update_mysqli2.php?id=1&status=OFF
http://mikrobotikradyo.unaux.com/api2/led/update_mysqli2.php?id=2&status=OFF

Yukarıdaki linklerin HTTP olduğuna dikkatinizi çekerim. Bu bedava olduğundan HTTPS olarak SSL koruması yok. bundan dolayı ESP ile çalışabilse ESP01 programının SECURITY kısmı olmadan çalışacaktı. Yani ardu_esp01.ino programıyla bunu kontrol edebilirdiniz. Bedava sitelerde Güvenlik olmadığından HTTP olur.

Örnek programda önceki yazılarımda bulunan bu siteyi kullandım.
ardu_esp01.ino (http) program kontrolü
https://api.openweathermap.org/data/2.5/weather?q=London,uk&APPID=1041444a18cfb8448343254a45721b1d

ardu_esp01_secure.ino (https) program kontrolü
https://www.mikrobotik.com/api2/led/read_tek_mysqli2.php

Not: Son linki Videodaki ESP01_SECURE programımda kullandım. 

Seri MONİTÖR çıktısı da aşağıdadır.  Videodaki çalışmanın çıktısıdır. Bilgiler ARRAY ve JSON olarak gelir. Sizler istediğiniz kısmı ayrıştırarak cihaz bilgilerine ulaşabilirsiniz. Fakat ben programı sade tuttum. Bundan dolayı ayrıştırmayı yapmadım.

MIT APP INVENTOR ile de buna ulaşmak için program içinden web sitesine ulaşılabilecek bir browser kullanıp, sonrasında java ile bilgi yollayarak içindeki bilgilere ulaşıyoruz.
Yani bir şekilde kandırmış oluyoruz. Fakat sonunda sorunsuz olarak bunu çalıştırıyoruz ve verileri alıp verebiliyoruz.

Sorun ise bu tip bedava sitelerin güvenlik sisteminde. Bundan dolayı pek efektif bir çalışma sayılmaz. Fakat bir şeyler zorlaştıkça farklı şeyler öğrenebiliyoruz. Bunu kullanarak ben de bu yazıda size gösterdiğim bir çok şeyi yeni öğrendim.

Burada size önerebileceğim bir tek şey var. 000webhost gibi sorunsuz her yerden ulaşılabilir yerlerden en düşük işinize yarayan bir yer kiralamanız. Bu çalışmalarınızı orada yapmanız. Bedava olduğundaki sorunları yaşamazsınız.
Bunun yanısıra bu tip işlemler için alacağınız minimum sistem ise 1 adet WP site ki bu şimdi olmasa bile sonrasında kendinize kolaylıkla bir wordpress site kurmanızı sağlayacaktır.
PHP dosyalarınızı barındıracak ve ESP gibi Telefonlarınız gibi  herhangi bir yerden ulaşabilmenizi sağlayacaktır.
HTTPS olarak güvenli bağlanabilmeniz için SSL desteği bedava olanı seçin.
Bununla birlikte en az 1 adet SQL veritabanı bulundurmanızı sağlasın.
Bu şekilde en düşük bir yer kiraladığınızda yıllık ya da 3 yıllık ödeyin derim. çünkü döviz yükseldikçe enflasyon yükseldikçe size yük gelecektir.
İstediğiniz çalışmayı burada yapabilirsiniz.
Benim bu yazılarımı yazdığım site bu şekil ücretli kiralık bir yerdir. En düşük pakettir. Çalışmalarıma yeterlidir.
Fakat burada DOMAİN denilen, site adını ayrıca şimdilik satın almayın. Verdikleri bedava ismi kullanın. Şayet bir gün wordpress sitenizi hayata geçirip sizi kolay bulmalarını isterseniz o zaman DOMAIN satın alabilirsiniz. Bunu kolaylıkla kiraladığınız yer yapacaktır.
Bu kadar pratik bilgiden sonra konuya girelim.

ESP programı 2 tanedir. 1 tanesi HTTP sitelerinden bilgi okurken bir tanesi ise HTTPS denilen SSL güvenlikli siteden veri okurken kullanılır. Bunlar arasındaki tek fark ESP SECURE kütüphanesi ve komutlarıdır. Bu HTTPS sitenize bağlanırken kullanacağınız güvenlik parametrelerini vermenizi ve sayfaya ulaşmanızı sağlar.
ESP programında ulaşmak istediğiniz PHP dosyasının URL dediğimiz adresini verdiğinizde ESP bu adres ile temas kurar. Sonrasında PHP dosyası ise SQL veri tabanıyla temas kurar. daha sonra ise SQL den aldığı bilgileri ESP ye JSON olarak ya da ARRAY olarak iletir. Siz de ESP programınızda bunları ayırarak hangi cihazın açık ya da kapalı olduğunu ya da PWM değerini öğrenebilirsiniz. Bu şekilde ESP gerekli cihazı açar kapatır. ESP bunu yapmak için her 3-5 sn de bir php dosyasına giderek sorgulama yapar cevaba göre yönlenir.
Program ESP01S dediğimiz esp8266-01 kartında denendi. Bu kartta 2 adet GPIO ve 2 adet de TX ve RX pimleri yani 4 GPIO pim vardır. Bu pimler size yetmediğinde ise yine aşağıdaki yazımı okuyarak esp01 ile I2C kullanarak PORT çoklayıcı kartları çalıştırmanızı sağlayacak bilgiler verecektir. Mesela I2C ile kontrol edilen LCD kontrol modülünü 8 adet giriş çıkış portu olarak ESP01 modülüne bağlayabilirsiniz. Ya da Çok fazla giriş çıkış lazım  derseniz pahalı olan ESP32 yi kullanabilirsiniz. Ya da Arduino kartlarınızı ESP8266-01 kartınıza bağlarsınız haberleştirirsiniz.
Bu kendi seçiminiz.
ESP programında bilgileri sadece seri monitöre yazdırdım ayrıştırma kısmını yazmadım siz kendinize göre bunu yazabilirsiniz.
ESP programı çok basit tutulmuştur. Sadece link gönderir ve cevabını alır.

Bütün işi yapan PHP dosyalarıdır. bu dosyalar gönderilecek verileri, parametre olarak alır daha sonra bu verileri SQL veri tabanına yazar. Sonrasında ise tüm verileri ya da tek bir istediğiniz veriyi okuyup size bildirir.
PHP dosyası 3 adettir. bir tanesi config bilgilerini tutar. Yani SQL database ismi sunucusu ve password. Bunu diğer PHP programlarına koymazsınız. PHP dosyasına git config dosyasını oku dersiniz ve bu dosyadaki bilgileri kullanarak SQL ile bağlantı kurar.
Diğer PHP dosyası UPDATE dosyasıdır. Bu dosya sizden URL linki ile birlikte gönderdiğiniz cihaz ismini numarasını ve değerini alır. Bu dosyayı çağırdığınızda LİNK sonunda parametre olarak ekleme yaparsınız. Bu şekilde PHP dosyası parametreleri alır ve SQL veri tabanına yazar.
Diğer PHP programı sadece okuma yapar. isterseniz tek bir cihaz, isterseniz tüm cihazları okur.

READ link: http://mikrobotikradyo.unaux.com/api2/led/read_db_mysqli2.php?id=2

Connected successfully

Tek kayıt okunuyor
id: 2 - Status: ON

Tüm veriler okunuyor
OFF ON ON
ARRAY olarak yaz ===> array(4) { [0]=> string(0) "" [1]=> string(3) "OFF" [2]=> string(2) "ON" [3]=> string(2) "ON" }
JSON ENCODE olarak yaz ===> ["","OFF","ON","ON"]

Okuma için link’e tıkladığınızda web görüntüleyicisinde yukarıdaki gibi görünür. sadece READ kısmıdır. Okuma 2 şekildir. Ya tek bir id numarasına göre ya da tümünü okursunuz. Bu PHP dosyasında her ikisi birden görünmektedir.

UPDATE link : http://mikrobotikradyo.unaux.com/api2/led/update_mysqli2.php?id=1&status=ON

Yukarıdaki resimde ise UPDATE linkini tıkladığınızda internet göstericisinde bu şekilde bir çıktı alırsınız. En üstteki bölüm bağlantı sağlandı. sonraki gönderdiğiniz parametreler kayıt edildi diyor. bir sonrakinde kayıt edilen veriyi okuyor. Sonrasında ise tüm verileri okuyor.

PHP dosyaları 2 adettir bir tanesi READ ve bir tanesi UPDATE, bunların yanısıra CONFIG.PHP de var. Bu da SQL veri tabanının şifrelerini ve hesap bilgilerini tutar.

Aşağıdaki PHP programı aslında hem READ hem de UPDATE kısmını içerir. Fakat ben ayrı ayrı kullanılsın diye 2 ye böldüm. Zaten bu programda açıklama yerlerine baktığınızda bunu sizde görebilirsiniz. Programda 10. 11. satırlarda CONFIG.MYSQLI.PHP ye atıfta bulunuluyor bu bağlantı parametrelerini config dosyasından alıyor.
Ayrıca diğer yerlerde de açıklamalar var. En alt, tümünü al bölümünden sonra ise kullanıcıya gönderilecek cevabın nasıl olması gerektiğini söylüyor. ARRAY şeklinde ya da JSON şeklinde kullanıcıya bilgi gönderiyor. İstediğiniz kısmını kullanıp verileri ayrıştırabilirsiniz.

<?php
      // komut satırı bu şekilde olacak. parametreleri ile birlikte yazılacak. 
      // sadece tekli okumada kullanılan id parametresi verilecek
      // buna göre hangi id bilgileri okunmak isteniyorsa o parametre olarak verilecek.
      
    // http://mikrobotikradyo.unaux.com/api2/led/read_db_mysqli.php?id=1

    // database bağlantı verileri password dahil config_mysqli den alıyor. 
    // Include data base connect class
    $filepath = realpath (dirname(__FILE__));
    require_once($filepath."/config_mysqli.php");
//__________________________________________________________________________________
    // aşağıdaki satırda en sonda database ismi yer almaktadır. config dosyasında verilmedi. 
    // config dosyasından gelen verilerle databese bağlantısı yapılıyor. 

    $conn = mysqli_connect($servername, $username, $password,"sql7734385");
    
    
    if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
    }
    echo "Connected successfully \n";
    echo "<br>";
    echo "<br>";
/*	
    $sql = "UPDATE led SET status='ON' WHERE id=1";
    if ($conn->query($sql) === TRUE) {
        echo "<br>";
    echo "Record updated successfully\n";
    echo "<br>";
    } else {
    echo "Error updating record: " . $conn->error;
    }
*/	


//tek kayıt oku *************************************
if (isset($_GET['id']) ) {
    // burada parametre olarak verdiğimiz değişken değerlerini değişkenlere yükler. 
    $id = $_GET['id'];

    $sql = "SELECT id, status FROM led WHERE id='$id'";
    $result = $conn->query($sql);

    if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo " Tek kayıt okunuyor";
        echo "<br>";
        echo "id: " . $row["id"]. " - Status: " . $row["status"]. "\n";
        echo "<br>";
    }
    } else {
    echo "0 results";
    }
}
//*************************************
    
    

//  tümünü oku ====================================
    echo "<br>";
    echo "Tüm veriler okunuyor \n";
    echo "<br>";
    $merged_results[]= "";
    $sonuc=mysqli_query($conn,"select * from led");
    while($satir=mysqli_fetch_array($sonuc))
    {
        echo $satir['status'],"\n";
        $merged_results[] = $satir['status'];
        //echo "<br>";
        
    }
//=======================================================
echo "<br>";
echo "ARRAY olarak yaz ===>   ";
var_dump ($merged_results);

echo "<br>";
echo " JSON ENCODE olarak yaz ===>   ";
echo json_encode($merged_results);

?>
CONFIG_MYSQLI.PHP dosyası. 
<?php
    $servername = "sql7.freemysqlhosting.net:3306";
    $username = "sql7734385";
    $password = "xxxxxxxxxxx";
    
    

?>

Yukarıdaki PHP dosyalarının bulunduğu siteye üye olarak siz de kendi PHP dosyalarınızı yerleştirerek denemelerinizi yapabilirsiniz. Fakat daha önce de dediğim gibi ESP ile bağlantı kuramazsınız ancak internet göstericisinden denemelerinizi yapabilirsiniz. Bunun yerine kendinize host hesabı kiralayabilirsiniz. Yazıda bu konuda sizi bilgilendirdim.
Benim PHP dosyalarını koyduğum yer https://profreehost.com/
Buraya üye olduğunuzda sizi CLIENT AREA bölgesine yönlendiriyor. buraya girdiğinizde şifrenizi yazıp geçtiğinizde sitenizi yönetin sayfası çıkıyor. Bu sayfadan da kontrol panele geçiliyor sonrasında control panelinize basarak Bir çok menüye ulaşıyorsunuz. Bunlardan ONLINE FILE MANAGER butonuna basarak PHP dosyalarınızın yazılacağı yere giriyorsunuz. PHP MY ADMIN kısmına girerseniz SQL veri tabanı da hazırlayabilirsiniz. Fakat ben bunları güvenlik ayarından dolayı kullanamadım ve başka bir siteden SQL veri tabanı ayarladım.
Aşağıdaki resimler sırayla girilecek ekranları gösteriyor.

 

 

SQL VERİ TABANI:

SQL veri tabanı oluşturma kısmını ise videodan görebilirsiniz. hatta en başta verdiğim 1. yazımın linkinden ayrıntılarıyla görebilirsiniz.
https://www.mikrobotik.com/wp2/2018/08/10/esp8266-01-ile-dunyadan-evinize-web-sitenizle-baglanti-kurun/

SQL veri tabanı için ise bu linkten üye olabilirsiniz. Fakat bu sitedeki bedava üyeliğinizi her hafta uzatma işlemi yaparak devam ettirebilirsiniz. İsterseniz ücreti karşılığında kiralayabilirsiniz.

https://www.freemysqlhosting.net/account/

Not: Bu site bazen cevap vermeyebiliyor. Deneyin çalışacaktır.

Bu siteden üyelik yaptırırsanız üye sayfasına girdiğinizde PHP MY ADMIN linkini görürsünüz. buradan SQL veri tabanınızı ayarlamaya başlayabilirsiniz. Gerekli hesap bilgileri size verilecektir. Bu hesap bilgilerini CONFIG_MYSQLI.PHP dosyasına yazarsanız programlar sizin bilgilerinizi kullanacaktır. Videoda bunu görebileceksiniz.

MIT APP INVENTOR programında ise bir webviewer komponentini kullandım. Bu normal internet browser gibi olsa da buradan bilgi alınması için bir java komutu verilmesi gerekiyordu. Ekranda gösterebiliyor ama kullanmanız için bilgi vermiyordu. JAVA komutu gelen WEB sitesinin içeriğini HTML kod olarak bir değişkene yüklemenize yarıyor. Bu şekilde gelen web sitesinin içeriğini yani PHP nin gönderdiği bilgilere ulaşabiliyorsunuz.

1. bölümde butonlar var değişiklik yapmak ve görmek için. 2. bölümde gelen HAM HTML kodu var. 3. bölümde sonuçların görüntülendiği textbox 4. bölümde ise WEB SAYFASINDA görünen halini görüyorsunuz. Bunlardan sadece 1. ve 3. ekran kalabilir diğerleri arka planda kalabilir ben görmeniz için ekranda gösterdim.

 

Burada APP INVENTOR içinde WEB VIEWER kullandığınızda nasıl JAVA komutu ile STRING alabileceğinizi gösteriyor. Bu String gelen HAM HTML kodunu gösterir.

Bu HTML kodundaki ister text kısmından isterseniz de gelen JSON encode ile gönderilen bilgiyi kullanarak cihaz bilgilerini alabilirsiniz. İlk resimde gördüğünüz LAMBA1 butonları UPDATE.PHP ye gönderilir. O anda 1 ise 0 yapar, 0 ise 1 yapar. Toggle şeklinde çalışır. Aynı zamanda gönderilen komuttan sonra bilgiler okunur ve okunduktan sonra yanlarında yeşil veya kırmızı olarak işaretlenir.
Bunun yanısıra READ ALL butonuyla o andaki durum okunur.
Bu butonların çıktısı ekranda HTML kod olarak ve WEB VIEVER ekranında görünür. Ayrıca kutularda her cihazın son durumu ON OFF olarak HTML sayfasından okunduğu gibi yazılıyor. Sizler daha fazla cihaz kullanırsanız gelen JSON olarak gönderilen kodu yine string ayrıştırma metodu kullanarak cihazlarınızın durumlarını alabilirsiniz. Ben 3 tane olduğu için kendi verilerime göre ayrıştırdım.
Programın blok kısmını okurken bunları zaten görebileceksiniz. ilgili blokları çoğaltarak verilerinizi alabilirsiniz.
Ekranda herşeyi göstermek istediğim için çıktılar ekranı kapladı ama sizler kendi ekran düzenlemenizi yaparsanız bunları göstermenize gerek yoktur.

Aşağıdaki resimde ise JAVA kodunun nasıl kullanıldığını görebilirsiniz. w3school sitesinde bu bilgileri görüp öğrenebilir deneyebilirsiniz.

bu linkten benzer çalışmaları görebilirsiniz. https://www.w3schools.com/jsref/prop_html_innerhtml.asp

ESP01S (esp8266-01) kartımız normalde 2 adet GPIO pimine sahiptir. Fakat TX ve RX pimlerini de kullanabilirsiniz. Seri port kullanmayacaksanız.
Bunun yanı sıra ilk 2 GPIO pimini kullanarak I2C programı kullanarak bir çoklayıcı kart kullanabilirsiniz. Bunun için en basit kart sizin yakından tanıdığınız LCD I2C kartıdır. Bu kart ile 8 adet giriş çıkış pimine sahip olabileceğiniz gibi birden fazla da bu karttan kullanabileceğiniz için 16 adet giriş çıkış pimine sahip olabilirsiniz. Bundan dolayı ESP32 kullanmanıza gerek yoktur.
Bunun yanısıra ESP01 in Tx ve RX uçlarını ARDUINO ya bağladığınızda gelen bilgileri Arduinoya aktarabilirsiniz. Bu şekilde daha geniş bir kontrol sistemi oluşturabilirsiniz.
Kontrol edeceğiniz cihaz sayısına ve yapısına göre bu bağlantı şekillerini kullanabilirsiniz.

ESP01S Arduino IDE ile nasıl programlarım derseniz bu yazıma bakabilirsiniz. 
https://www.mikrobotik.com/wp2/2020/02/28/arduino-usb-seri-cevirici-olarak-kullanmak/

Bunun yanısıra I2C ile kullanmak için aynı zamanda ÇOKLAYICI olarak kullanmak için bu yazımı kullanabilirsiniz. 
https://www.mikrobotik.com/wp2/2020/11/05/esp8266-01-ve-pcf8574-dijital-port-coklayici-ile-8-led-kontrol/

NOT: bu yazımdan önceki dünyadan evi kontrol et yazımda 000webhost olduğu için POSTMAN ile denemelerimi yapabiliyordum. ESP içinde kod bilgisini buradan alabiliyordum.
Fakat bedava sitenin güvenliği dolayısıyla POSTMAN kullanılamadı. PHP için ESP den de bedava siteyi kullanamadım. Fakat Programı tam olarak gösterebilmek için PHP dosyalarını hem bedava siteye hem de Kendi ücretli siteme koydum. ESP kendi ücretli sitemdeki PHP dosyasını çalıştırıyor.
Tüm PHP dosyaları aynıdır. her iki tarafa da çağrı yapıldığında aynı SQL veri tabanına gidip bilgiyi alıyor. Yani her ikisi de doğru şekilde çalışıyor ama ESP ücretli sitemdeki PHP dosyasına komut gönderiyor. Bu sadece BEDAVA siteden kaynaklanan bir durumdur. Sonuçta sizde kendi ücretli yerinizi ya da evdeki sunucunuzu kullanırsanız aynı sonuca ulaşabilirsiniz.

NOT: SQL sitesinin 1 haftalık güncellemesi mevcut olduğundan 1 ay kadar bu site aktif kalacak sonrasında ise kapanacaktır. Sizler bu sayfada çıktılarına ulaşabileceksiniz ayrıca videolardan çıktılarına ulaşabileceksiniz.

TÜM DOSYALARA BURADAN ULAŞABİLİRSİNİZ

Video:


 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.