Yazılım Öğrenme: Kapsamlı Rehber 8

Yazılım Öğrenme: Kapsamlı Rehber 8Yazılım Öğrenme: Kapsamlı Rehber 8

Yazılım Öğrenme Rehberi 8, HTML, CSS ve JavaScript bilgilerini kullanarak backend işlemlerine giriş yapmayı hedefler. Bu yazıda, bir HTML formu oluşturup PHP ve MySQL kullanarak form verilerini nasıl işleyeceğinizi adım adım öğreneceksiniz. Adım adım anlatımla, form verilerini nasıl alacağınızı, bu verileri bir veritabanına nasıl kaydedeceğinizi ve geri bildirim nasıl vereceğinizi inceleyeceğiz.

Giriş

Önceki yazılarda, HTML, CSS ve JavaScript’in temellerini öğrendiniz ve basit bir web uygulaması geliştirdiniz. Şimdi, backend (arka uç) geliştirmeye giriş yaparak, form verilerini işleme ve saklama konusunu ele alacağız. Bu rehberde, PHP ve MySQL kullanarak form verilerini almayı ve saklamayı öğreneceksiniz.

Gereksinimler

Bu rehberi takip etmek için aşağıdaki araçlara ve bilgilere ihtiyacınız olacak:

  • HTML, CSS ve JavaScript bilgisi: Önceki rehberlerden edindiğiniz bilgiler.
  • PHP ve MySQL kurulu bir sunucu: Yerel geliştirme ortamı olarak XAMPP veya WAMP kullanabilirsiniz.

PHP ve MySQL Kurulumu

PHP ve MySQL’i kullanabilmek için yerel bir geliştirme ortamı kurmanız gerekiyor. XAMPP veya WAMP gibi araçları kullanarak bu ortamı kurabilirsiniz. Bu araçlar, Apache sunucusu, PHP ve MySQL’i içeren paketler sunar.

  1. XAMPP Kurulumu:
    • XAMPP’ı buradan indirin ve kurun.
    • XAMPP Kontrol Paneli’ni açın ve Apache ile MySQL’i başlatın.
  2. WAMP Kurulumu:
    • WAMP’ı buradan indirin ve kurun.
    • WAMP kontrol panelini açın ve Apache ile MySQL’i başlatın.

Adım 1: HTML Formu Oluşturma

Öncelikle, kullanıcıdan veri almak için basit bir HTML formu oluşturacağız. Bu form, kullanıcının adını ve e-posta adresini girmesini sağlar.

index.html

<!DOCTYPE html>
<html>
<head>
    <title>Form Gönderme</title>
    <link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
    <div class="container">
        <h1>Form Gönderme</h1>
        <form action="submit.php" method="post">
            <label for="name">Adınız:</label>
            <input type="text" id="name" name="name" required>
            <label for="email">Email:</label>
            <input type="email" id="email" name="email" required>
            <button type="submit">Gönder</button>
        </form>
    </div>
</body>
</html>

Bu HTML formu, kullanıcının adını ve e-posta adresini alır ve form verilerini submit.php dosyasına gönderir.

  • <form action=”submit.php” method=”post”>: Formun verilerini submit.php dosyasına POST yöntemi ile gönderir.
  • <input type=”text” id=”name” name=”name” required>: Kullanıcı adını almak için bir metin girişi.
  • <input type=”email” id=”email” name=”email” required>: Kullanıcı e-postasını almak için bir e-posta girişi.
  • <button type=”submit”>Gönder</button>: Formu göndermek için bir düğme.

Adım 2: PHP Dosyasını Oluşturma

Form verilerini işlemek için submit.php adlı bir PHP dosyası oluşturacağız. Bu dosya, form verilerini alacak ve MySQL veritabanına kaydedecek.

submit.php

<?php
// Veritabanı bağlantı bilgileri
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";

// Veritabanına bağlan
$conn = new mysqli($servername, $username, $password, $dbname);

// Bağlantıyı kontrol et
if ($conn->connect_error) {
    die("Bağlantı hatası: " . $conn->connect_error);
}

// Form verilerini al
$name = $_POST['name'];
$email = $_POST['email'];

// Veritabanına ekle
$sql = "INSERT INTO users (name, email) VALUES ('$name', '$email')";

if ($conn->query($sql) === TRUE) {
    echo "Kayıt başarıyla eklendi.";
} else {
    echo "Hata: " . $sql . "<br>" . $conn->error;
}

// Bağlantıyı kapat
$conn->close();
?>

Bu PHP dosyası, form verilerini alır ve MySQL veritabanına ekler. Veritabanı bağlantısı kurar ve verileri users tablosuna kaydeder.

  • $servername, $username, $password, $dbname: Veritabanı bağlantı bilgileri.
  • new mysqli: Veritabanına bağlantı kurmak için kullanılır.
  • if ($conn->connect_error): Bağlantı hatasını kontrol eder.
  • $_POST[‘name’], $_POST[’email’]: Formdan gelen verileri alır.
  • $sql = “INSERT INTO users (name, email) VALUES (‘$name’, ‘$email’)”: Verileri veritabanına eklemek için SQL sorgusu.
  • $conn->query($sql): SQL sorgusunu çalıştırır.
  • if ($conn->query($sql) === TRUE): Sorgunun başarılı olup olmadığını kontrol eder.
  • $conn->close(): Veritabanı bağlantısını kapatır.

Adım 3: MySQL Veritabanı Oluşturma

Veritabanı ve tabloyu oluşturmak için MySQL komutlarını kullanacağız. XAMPP veya WAMP kontrol panelinden phpMyAdmin’e giderek bu işlemleri gerçekleştirebilirsiniz.

Veritabanı oluşturma:

CREATE DATABASE test;

Tablo oluşturma:

USE test;

CREATE TABLE users (
    id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(30) NOT NULL,
    email VARCHAR(50) NOT NULL,
    reg_date TIMESTAMP
);

Bu komutlar, test adında bir veritabanı ve users adında bir tablo oluşturur. Tabloda, kullanıcı adı ve e-posta adresi saklanır.

Adım 4: PHP Dosyasını Test Etme

Şimdi formumuzu test edelim. index.html dosyasını tarayıcınızda açın ve formu doldurun. Formu gönderdiğinizde, submit.php dosyasına yönlendirileceksiniz ve form verileri veritabanına kaydedilecektir.

Güvenlik ve Validasyon

Gerçek dünya uygulamalarında, form verilerini işlerken güvenlik ve validasyon önlemleri almak önemlidir. İşte bazı temel güvenlik ve validasyon yöntemleri:

Veri Temizleme: Kullanıcıdan gelen verileri temizlemek ve zararlı kodları engellemek için veri temizleme (sanitization) işlemi yapın.

$name = htmlspecialchars($_POST['name']);
$email = htmlspecialchars($_POST['email']);

Veri Doğrulama: Verilerin geçerli ve beklenen formatta olup olmadığını kontrol edin.

if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    echo "Geçersiz email formatı.";
    exit;
}

Hazır Beyanlar (Prepared Statements): SQL enjeksiyon saldırılarını önlemek için veritabanı sorgularında hazır beyanlar kullanın.

$stmt = $conn->prepare("INSERT INTO users (name, email) VALUES (?, ?)");
$stmt->bind_param("ss", $name, $email);
$stmt->execute();

Sonuç

Bu rehberde, HTML form verilerini PHP ve MySQL kullanarak nasıl işleyeceğinizi öğrendiniz. PHP ile form verilerini almayı, MySQL veritabanına kaydetmeyi ve geri bildirim sağlamayı keşfettik. Güvenlik ve validasyon konularında da temel bilgiler edindik. Bir sonraki rehberde, daha ileri düzey backend işlemleri ve güvenlik önlemlerini inceleyeceğiz. Yazılım geliştirme dünyasında başarılı bir kariyer yapmak için bu bilgileri kullanarak yolculuğunuza devam edebilirsiniz. Yazının devamı için burayı inceleyebilirsiniz.

Yararlandığım Kaynaklar

Bu kaynaklardan yararlanarak yazılım öğrenme sürecinizi daha verimli ve etkili hale getirebilirsiniz. Yazılım geliştirme dünyasında başarılı bir kariyer yapmak için bu rehberi ve kaynakları kullanarak yolculuğunuza başlayabilirsiniz.

One thought on “Yazılım Öğrenme: Kapsamlı Rehber 8”
  1. […] HTML, CSS ve JavaScript, modern web geliştirme için temel teknolojilerdir. Bu rehberde, bu üç teknolojiyi bir arada kullanarak kapsamlı bir görev yönetim uygulaması oluşturduk. Bir sonraki rehberde, daha ileri düzey projeler ve teknikler keşfedeceğiz. Yazılım geliştirme dünyasında başarılı bir kariyer yapmak için bu bilgileri kullanarak yolculuğunuza başlayabilirsiniz. Yazının devamı için burayı inceleyebilirsiniz. […]

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir