Bu yazıda, PHP MySQL’de Resim Ekle’yi yapacağız. PHP’de PDO kullanarak resim dosyası yüklemesi yapacağız. PHP’deki MySQL’e Veri Ekleme konusundaki önceki dersimizi okuyun, bu yazıda lazım olacak.
Tablo Oluşturmak
Öncelikle veritabanı ve tabloyu oluşturmalıyız.
LOCALHOST(YEREL) bağlantıda kullanıcı adım:root ve şifre=”” şeklindedir.
Tabloyu oluştura ile başlayalım:
Bir veritabanı oluşturmak için:
- PHPMyAdmin‘i açın.
- Bir veritabanı oluşturun ve “blog” olarak adlandırın.
- Bir veritabanı adı oluşturduktan sonra, tablomuzu oluşturacağız. Ve “tbl_kayit” olarak adlandırın.
- Lütfen aşağıdaki kodu kopyalayın.
1 2 3 4 5 6 7 8 | CREATE TABLE `tbl_resim` ( `tbl_resim_id` INT(11) PRIMARY KEY AUTO_INCREMENT NOT NULL, `ad` VARCHAR(100) NOT NULL, `soyad` VARCHAR(100) NOT NULL, `resim_konum` VARCHAR(100) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; |
Form Alanı Oluşturma – HTML Form
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 | <!DOCTYPE html> <html lang="tr"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>TasarimKodlama.com</title> </head> <body> <form method="post" action="upload.php" enctype="multipart/form-data"> <table class="table1"> <tr> <td><label style="color:#3a87ad; font-size:18px;">İsim</label></td> <td width="30"></td> <td><input type="text" name="ad" placeholder="Adınız" required /></td> </tr> <tr> <td><label style="color:#3a87ad; font-size:18px;">Soyisim</label></td> <td width="30"></td> <td><input type="text" name="soyad" placeholder="Soyadınız" required /></td> </tr> <tr> <td><label style="color:#3a87ad; font-size:18px;">Resim Seçin</label></td> <td width="30"></td> <td><input type="file" name="resim"></td> </tr> </table> <button type="submit" name="Submit" >Yükle</button> </form> </body> </html> |
Veritabanı Bağlantısı Oluşturma
baglanti.php adında bir dosya açıp, aşağıdaki kodları ekleyiniz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <?php $sunucuadi = "localhost"; $kadi = "root"; //local kadi:root $sifre = "";//local şifre:"" $vtadi = "blog"; // bağlantı oluşturma try { $conn = new PDO("mysql:host=$sunucuadi;dbname=$vtadi", $kadi, $sifre); // Hata modunu etkinleştirme $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(PDOException $e) { echo $sql . "<br>" . $e->getMessage(); } |
upload.php dosyasını aşağıdaki gibi oluşturun.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <?php require_once ('baglanti.php'); if (isset($_POST['Submit'])) { move_uploaded_file($_FILES["resim"]["tmp_name"],"dosyalar/" . $_FILES["resim"]["name"]); $dosya=$_FILES["resim"]["name"]; $ad=$_POST['ad']; $soyad=$_POST['soyad']; $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "INSERT INTO tbl_resim (ad, soyad, resim_konum) VALUES ('$ad', '$soyad', '$dosya')"; $conn->exec($sql); echo "<script>alert('Kayıt başarıyla yapıldı!!!');</script>"; } ?> |
Verileri görüntülemek için gerekli Kaynak Kod
listele.php adında bir dosya açıp aşağıdaki kodları yapıştı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 41 42 43 44 45 | <!DOCTYPE html> <html lang="tr"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Tasarım Kodlama</title> </head> <body> <table cellpadding="0" cellspacing="0" width="50%"> <thead> <tr> <th>Ad</th> <th>Soyad</th> <th>Resim</th> </tr> </thead> <tbody> <?php require_once('baglanti.php'); $result = $conn->prepare("SELECT * FROM tbl_resim ORDER BY tbl_resim_id ASC"); $result->execute(); for($i=0; $row = $result->fetch(); $i++){ $id=$row['tbl_resim_id']; ?> <tr> <td> <?php if($row['resim_konum'] != ""): ?> <img src="dosyalar/<?php echo $row['resim_konum']; ?>" width="100px" style="border:1px solid #333333;"> <?php else: ?> <img src="dosyalar/default.png" width="100px" height="100px" style="border:1px solid #333333;"> <?php endif; ?> </td> <td> <?php echo $row ['ad']; ?></td> <td> <?php echo $row ['soyad']; ?></td> </tr> <?php } ?> </tbody> </table> </body> </html> |
Yorum Yap