e
sv

PHP ile Formdan Gelen Verileri .txt Dosyasına Yazdırma

PHP ile Formdan Gelen Verileri .txt Dosyasına Yazdırma
avatar

Yazılım Method

  • e 1

    Mutlu

  • e 0

    Eğlenmiş

  • e 0

    Şaşırmış

  • e 0

    Kızgın

  • e 0

    Üzgün

PHP web programlada çok popüler programlama dilleri arasındadır. PHP’nin betik dil olması öğrenim sürecinin kolay olması avantajlarındandır.PHP ile yapabileceklerimizin bir sınırı yok diyebilirim 🙂 kendi ihtiyaçlarınızı karşılayacak biçimde kullanabilirsiniz. Örneğin php ile form dan txt dosyasına veri yazdırma işlemleri.

Formlardan veri alıp kaydetmek,göndermek ve hatta verileri bir data olarakta yazdırabiliriz . PHP bize bu imkanları sağlamaktadır. Bu makalemde formdan submit ile gelen verileri bir txt dosyasına kullanıcının ip,verileri v.s kayıt edeceğiz. Öncelikle bize bir html formu lazım bunuda bootstrap ile kolaylıkla oluşturabiliriz.

HTML Form Oluşturalım

Formumuzu oluştururken bootstraptan yararlanacağız . Harici olarak bootsrapın css kütüphanesi yeterli olacaktır. Bootsrapın css’ini ekledikten sonra klasik basit bir iletişim formuda oluşturalım.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>www.YAZİLİMMETHOD.com</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.1/dist/css/bootstrap.min.css" 
rel="stylesheet" 
integrity="sha384-F3w7mX95PdgyTmZZMECAngseQB83DfGTowi0iMjiWaeVhAn4FJkqJByhZMI3AhiU" crossorigin="anonymous">
</head>
<body>
    <!-- Navbar -->
    <nav class="navbar navbar-dark bg-danger">
        <div class="container">
            <span class="navbar-brand mb-0 h1">PHP ile Formdan Gelen Verileri .txt Dosyasına Kaydetme</span>
        </div>
    </nav>

    <!-- İletişim Formu -->

    <div class="container mt-4">
        <div class="row d-flex justify-content-center ">
            <div class="col-md-7">
                <div class="card shadow">
                    <div class="card-header">
                        İletişim Formu
                    </div>
                    <div class="card-body">
                        <form action="#" method="post">
                            <div class="mb-3">
                                <label for="name" class="form-label">İsminiz</label>
                                <input type="text" class="form-control" name="name" required>
                            </div>
                            <div class="mb-3">
                                <label for="email" class="form-label">E Mail Adresiniz</label>
                                <input type="email" class="form-control" name="email"  required>
                            </div>
                            <div class="mb-3">
                                <label for="subject" class="form-label">Konu</label>
                                <input type="text" class="form-control" name="subject"  required>
                            </div>
                            <div class="mb-3">
                                <label for="message" class="form-label">Mesajınız</label>
                                <textarea name="message" class="form-control" cols="30" rows="3" required></textarea>
                            </div>
                            <button type="submit" class=" float-end d-block btn btn-outline-primary" >Gönder</button>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>


</body>
</html>

Formumuzun tasarım kısmını bootstrap ile güzelce hallettik şimdi sıra php ile dinamikleştirmede 😉

Form’dan Gelen Veriyi .txt Dosyasına Kaydetme

php ile form dan txt dosyasına veri yazdırma yaparken php kodlarımızı direk içine yazalım ayrı dosya oluşturmaya gerek yok zaten 10 satır php kodu. Öncelikle html yapımımızı incelememiz gerekli formumuzu gönderirken post methodu ile gitmeli method="POST" ardından formdan veri alacağımız için name değerlerini tanımlamamız gerekir. Bu arada butonun type="submit" olması formumuzun çalışması için yeterlidir.

Şimdi geldik php yazmaya işin en basit ve eğlenceli tarafına :d .

  1. Form dan veri alacağımız için POST methodunu yakalamamız gerekiyor .
  2. Diğer aşamada veri işleminden sonra kullanıcı hangi sayfaya gidecek ? mesela succesfull.php .
  3. Ardından server üzerinde dosya oluşturacak veya dosya ismini yazıyoruz mesela data.txt
  4. Sonra ise bu kullanıcılar hangi sayfadan hangi tarihte ve hangi ip ile gönderdiklerini kayıt edeceğiz.
  5. Son olarak gelen verileri foreach methodu ile txt ‘de boşluk bırakarak yazdırıyoruz 🙂
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {     // Post methodunu Yakalıyoruz
header('Location:succesfull.php');              // Kullanıcıyı nereye göndereceğiz
$handle = fopen('data.txt', 'a');                 // Dosya ismi
fwrite($handle, '----------------------------------------------------------------------['.$_SERVER['SCRIPT_NAME'].']---['.strtoupper(date("h:i:s a - Y/m/d")).']---['.$_SERVER['REMOTE_ADDR']."]\n");   // Kaynak-Tarih-İP
foreach($_POST as $variable => $value) {
fwrite($handle, $variable.': '.$value."\n");}   // Verileri yazdırıyoruz
fclose($handle);
exit;
} 
?>

merak etmeyin sizler için örnek yaptım ve github’ta yayınladım 😉

Sıradaki içerik:

PHP ile Formdan Gelen Verileri .txt Dosyasına Yazdırma