PHP Form İşlemlerine ait örnekleri açıklamadan önce neden formlara ihtiyaç duyarız biraz bu konuyu açıklayalım. Web siteleri kullanıcı etkileşimine sahip olması için FORMları kullanırlar. Formların web sitelerini daha dinamik bir yapıya sokar.
Dinamik Web Siteleri
Web Siteleri, bir veritabanındaki verileri depolamak, güncellemek, almak ve silmek için kullanabileceğiniz işlevleri sağlar.
Form nedir?
Kullanıcının verileri doldurabileceği veya kullanıcının doldurabileceği siyah alanlar içeren bir belge, verileri seçebilir.Genellikle veriler veri tabanında depolanır
Basit PHP Form Örneği
Aşağıdaki örnek, post yöntemini kullanarak bazı belirli eylemleri içeren formu göstermektedir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | <html> <head> <title>PHP Form Örnekleri</title> </head> <body> <?php // değişkenleri varsayılan olarak boş ata $isim = $email = $cinsiyet = $yorum= $website = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { $isim = test_input($_POST["isim"]); $email = test_input($_POST["email"]); $website = test_input($_POST["website"]); $yorum = test_input($_POST["yorum"]); $cinsiyet = test_input($_POST["cinsiyet"]); } function test_input($data) { $data = trim($data); $data = stripslashes($data); $data = htmlspecialchars($data); return $data; } ?> <h2>Tasarım Kodlama Form Örnekleri</h2> <form method = "post" action = "<?=$_SERVER["PHP_SELF"]?>"> <table> <tr> <td>Adınız:</td> <td><input type = "text" name = "isim"></td> </tr> <tr> <td>E-mail:</td> <td><input type = "text" name = "email"></td> </tr> <tr> <td>Web Siteniz:</td> <td><input type = "text" name = "website"></td> </tr> <tr> <td>Detay:</td> <td><textarea name = "yorum" rows = "5" cols = "40"></textarea></td> </tr> <tr> <td>Cinsiyet:</td> <td> <input type = "radio" name = "cinsiyet" checked value = "erkek">Erkek <input type = "radio" name = "cinsiyet" value = "kadın">Kadın </td> </tr> <tr> <td> <input type = "submit" name = "submit" value = "Gönder"> </td> </tr> </table> </form> <?php echo "<h2>Verilen Cevap :</h2>"; echo $isim; echo "<br>"; echo $email; echo "<br>"; echo $website; echo "<br>"; echo $yorum; echo "<br>"; echo $cinsiyet; ?> </body> </html> |
PHP Form Örneği Çıktısı:
PHP $_GET ve $_POST
Form verilerini toplamak için $ _GET ve $ _POST PHP süper küreselleri kullanılır.
Basit Bir PHP Form Örneği
Aşağıdaki örnekte bir tane form nesnesi selam.php adında bir sayfaya gönderilmektedir. Bu örnekteki amaç $_POST yada $_GET süper global değişkeni ile alınan form değerlerini ekrana yazdırmak amaçlanmıştır.
index.php
1 2 3 4 5 6 7 8 9 10 11 12 | <html> <body> <form action="selam.php" method="post"> İsim: <input type="text" name="isim"><br> <input type="submit"> </form> </body> </html> |
selam.php
1 2 3 4 5 6 | <?php echo "Hoşgeldin "+$_POST['isim']; ?> |
PHP FORM İşlemleri Örnekleri
Aşağıdaki PHP Form Örnekleri tek sayfada çalışacak şekilde düzenlenmiştir. Bunun için formun action kısmına yine kendi içinde yönlenmesi için-
1 2 3 | <?=$_SERVER["PHP_SELF"]?> |
ifadesi yazılmıştır.
Yine gelen isteğin POST yada GET olup olmadığını kontrol etmek için HTML öğelerinin başında-
1 2 3 4 5 6 7 | if ($_SERVER["REQUEST_METHOD"] == "POST") { //FORM POST edildiyse bu bölüm çalışacaktır. } |
kontrolü yazılarak işlemlerin tek sayfada yapılması sağlanmıtştır.
Örnek 1: Text kutusuna girilen ad ve soyadı birleştirip ekrana yazdırın.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | <?php // değişkenleri ilk olarak boş atayalım. $ad = $soyad =""; //form post edildiyse çalışacak if ($_SERVER["REQUEST_METHOD"] == "POST") { $ad = $_POST["ad"]; $soyad = $_POST["sad"]; } ?> <html> <head> <title>PHP Form Örnekleri</title> </head> <body> <!-- HTML FORM --> <h2>Tasarım Kodlama Form Örnekleri</h2> <form method = "post" action = "<?=$_SERVER["PHP_SELF"]?>"> Ad <input type="text" name="ad" id="ad"><br> Soyad <input type="text" name="sad" id="sad"><br> <input type="submit" value="Formu Gönder"> </form> <?php //form post edildiyse çalışacak if ($_SERVER["REQUEST_METHOD"] == "POST") { echo "<h3>$ad $soyad</h3>"; } ?> </body> </html> |
Örnek 2: Kullanıcı tarafından girilen iki sayının toplamını yazan PHP form örneğini yazınız.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | <?php // değişkenleri ilk olarak boş atayalım. $toplam = $s1 = $s2 =""; //form post edildiyse çalışacak if ($_SERVER["REQUEST_METHOD"] == "POST") { $s1 = $_POST["s1"]; $s2 = $_POST["s2"]; $toplam= $s1+$s2; } ?> <html> <head> <title>PHP Form Örnekleri</title> </head> <body> <!-- HTML FORM --> <h2>Tasarım Kodlama Form Örnekleri</h2> <form method = "post" action = "<?=$_SERVER["PHP_SELF"]?>"> Sayı 1 <input type="text" name="s1" ><br> Sayı 2 <input type="text" name="s2" ><br> <input type="submit" value="Formu Gönder"> </form> <?php //form post edildiyse çalışacak if ($_SERVER["REQUEST_METHOD"] == "POST") { echo "<h3>Sayıların toplamı:$toplam</h3>"; } ?> </body> </html> |
Örnek 4: Girilen Vize ve Final notuna göre geçti kaldı yazdıran program
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | <!doctype html> <html> <head> <meta charset="utf-8"> <title>PHP Örnekleri</title> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css"> </head> <body> <div class="container"> <?php if(isset($_POST["kontrol"]))//kontrol adında bir form nesnesi var mı kontrolü yapılıyor { $vize=$_POST["vize"]; $final=$_POST["final"]; $sonuc=$vize*0.4 + $final*0.6; if($sonuc >= 60 && $final >= 60) { echo "<h1 class='text-info'>$sonuc ,GEÇTİ</h1>"; } else { echo "<h1 class='text-danger'>$sonuc ,KALDI</h1>"; } } ?> <hr> <form action="<?=$_SERVER['PHP_SELF']?>" method="post"> <div class="form-group"> <label for="vize">Vize Notu:</label> <input type="text" class="form-control" name="vize"> </div> <div class="form-group"> <label for="final">Final Notu:</label> <input type="text" class="form-control" name="final"> </div> <button type="submit" name="kontrol" class="btn btn-default" >Kontrol Et</button> </form> </div> </body> </html> |
Örnek 5: Ekrana girilen sayı kadar buton yazdırın.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | <!doctype html> <html> <head> <meta charset="utf-8"> <title>PHP Örnekleri</title> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css"> </head> <body> <div class="container"> <form action="<?=$_SERVER['PHP_SELF']?>" method="post"> <div class="form-group"> <label for="sayi">Sayı Girin:</label> <input type="text" class="form-control" name="sayi"> </div> <button type="submit" name="kontrol" class="btn btn-default" >ÇALIŞTIR</button> </form> </div> <!-- PHP KODLARI --> <div class="container"> <?php if(isset($_POST["kontrol"]))//kontrol adında bir form nesnesi var mı kontrolü yapılıyor { $sayi=$_POST["sayi"]; for($i=0;$i<=$sayi;$i++) { echo "<button class='btn btn-info'>$i</button> "; } } ?> </div> </body> </html> |
Örnek 6: Basit dört işlem örneği
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | <!doctype html> <html> <head> <meta charset="utf-8"> <title>www.yazilimbilisim.net - PHP Örnekleri</title> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css"> </head> <body> <div class="container"> <form action="<?=$_SERVER['PHP_SELF']?>" method="post"> <div class="form-group"> <label for="sayi1">Sayı 1</label> <input type="text" class="form-control" name="sayi1"> </div> <div class="form-group"> <label for="sayi2">Sayı 2</label> <input type="text" class="form-control" name="sayi2"> </div> <div class="form-group"> <label for="secim">İşlem Seçin</label> <select name="secim" class="form-control"> <option value="+">TOPLA</option> <option value="-">FARK</option> <option value="*">ÇARPIM</option> <option value="/">BÖLÜM</option> </select> </div> <button type="submit" name="kontrol" class="btn btn-default" >ÇALIŞTIR</button> </form> </div> <!-- PHP KODLARI --> <div class="container"> <table class="table table-striped"> <?php if(isset($_POST["kontrol"]))//kontrol adında bir form nesnesi var mı kontrolü yapılıyor { $sayi1=$_POST["sayi1"]; $sayi2=$_POST["sayi2"]; $secim=$_POST["secim"]; $sonuc=0; if($secim == '+') { $sonuc=$sayi1+$sayi2; } elseif($secim == '-') { $sonuc=$sayi1-$sayi2; } elseif($secim == '*') { $sonuc=$sayi1*$sayi2; } elseif($secim == '/') { $sonuc=$sayi1/$sayi2; } echo "<h1 class='text-info'>$sonuc</h1>"; } ?> </table> </div> </body> </html> |
Örnek 7: Form ile dizi gönderme örneği. Kullanıcının girdiği dizi değerlerini ekrana yazdırma
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | <!doctype html> <html> <head> <meta charset="utf-8"> <title>www.yazilimbilisim.net - PHP Örnekleri</title> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css"> </head> <body> <div class="container"> <form action="<?=$_SERVER['PHP_SELF']?>" method="post"> <div class="form-group"> <label>Adınız</label> <input type="text" class="form-control" name="isim"> </div> <div class="form-check form-check-inline"> <input class="form-check-input" type="checkbox" name="secim[]" value="PHP Dili"> <label class="form-check-label">PHP</label> </div> <div class="form-check form-check-inline"> <input class="form-check-input" type="checkbox" name="secim[]" value="Java Dili"> <label class="form-check-label">Java</label> </div> <div class="form-check form-check-inline"> <input class="form-check-input" type="checkbox" name="secim[]" value="Pyton Dili"> <label class="form-check-label">Python</label> </div> <button type="submit" name="kontrol" class="btn btn-default" >ÇALIŞTIR</button> </form> </div> <!-- PHP KODLARI --> <div class="container"> <table class="table table-striped"> <?php $ad = $secim = null; if(isset($_POST["kontrol"]))//kontrol adında bir form nesnesi var mı kontrolü yapılıyor { $ad=$_POST["isim"]; $secim=$_POST["secim"]; echo "<h3>Adınız:$ad</h3>"; echo "<h3>Seçtiğiniz Diller</h3>"; foreach ($secim as $d) { echo "<p>$d</p>"; } } ?> </table> </div> </body> </html> |
2 Yorum