Sunum.
Dosyaları bir web sunucusuna yükleyin; basit, ne kadar zor olabilir? Elbette birçok kişi bunu söyleyecektir, ancak bu dünyaya yeni başlayanlar kesinlikle bunun nasıl yapıldığını merak etmişlerdir, sadece onlara ulaşmak istiyorum, bu yüzden PHP'ye başlıyorsanız veya bu kodu kaybetmiş ve bu kodu kaybetmiş ileri düzey bir kullanıcıysanız tekrar kullanmak istiyorum yaz, sonra seni okumaya devam etmeye davet ediyorum, çünkü bu yazıda dosyaları hızlı ve kolay bir şekilde yüklemek için kodumu paylaşacağım, bunun için HTML5, PHP kullanacağım ve boostrap ile çekici bir dokunuş katacağım. Bu durumda .jpg.webp veya .png.webp resimlerin nasıl yükleneceğini açıklayacağım ancak minimum değişiklikle dilerseniz belge, ses ve hatta video yükleyebilirsiniz.
Neye ihtiyacımız var?a) Bir bilgisayar
b) Veritabanını test etmek ve erişmek için yerel bir sunucu (XAMPP kullanıyorum)
c) Bir kod editörü (sublime text 3 kullanacağım)
Aşama 1
Xampp'in htdocs dizinine gidiyorum ve "upload" adını vereceğim yeni bir klasör oluşturuyorum.

Bunun içinde "dosyalar" adında bir tane ve "php" adında bir tane daha oluşturacağım.

Adım 2
Şimdi kod düzenleyicide, daha sonra dosyaları yüklemek için html formunu içerecek olan index.php olarak kaydedeceğim yeni bir dosya oluşturacağım.

Aşama 3
Boostrap'a çevrimiçi referansları ekleyeceğim.

4. Adım
Vücudun içinde bir yaratacağım, bunun içinde bir

Adım 5
Şimdi içerideBir araba atlama ekleyeceğim
ile bir başlıkve yükleme için küçük formumuzu yapılandırmaya başlayacağım …

Etikete "POST" yöntemini atadığımı ve eylemde soru işareti eklediğimizi göreceksiniz "?" bu, formu gönderirken değerlerinin aynı sayfaya döndürülmesini sağlayacak, ayrıca "multipart / form-data" değerine sahip "encytipe" adlı bir özellik ekledim, bu genel bir kural olarak tümünde kullanılmalıdır. dosyaları gönderen formlar.
6. Adım
Etiketimiz hazır olduğu için ihtiyacımız olan alanı ve işlenecek formu gönderecek bir buton ekleyebiliriz.
Bunun için bir etiket ekleyeceğizve yüklemek istediğimiz dosyayı yakalamaktan sorumlu olacak bir giriş tipi "dosya" içerecektir …

Gördüğünüz gibi, "file" adını ve bir form içinde yer alan metin alanlarına doğru boşluk bırakmaya yarayan ve bootstrap'a ait olan "form-control" adlı bir sınıf atadık. Kendi adına, bu alan boşsa formun gönderilmesini önleyecek "zorunlu" bir özellik de ekleriz.
7. Adım
Daha sonra, bir önceki girişi formu gönderecek butondan ayıran bir çizgi çizmemize yardımcı olacak bir dekorasyon olarak bir etiket ekleyeceğiz.

8. Adım
Etiketin hemen altına göreceğiniz gibi, "btn btn-birincil merkez-blok" boostrap sınıflarını eklediğimiz "gönder" türünde bir girdi yerleştirdik, bunlardan ilki, bizim için daha çekici bir form vermemize yardımcı oluyor. düğmesi, ikincisi onu yoğun bir mavi olan boostrap'ın ana rengine yerleştirir ve üçüncüsü bu öğeyi ortalanmış bir ayar ile yerleştirmek için kullanılır, bu düğmeye "yukarı" adını verdiğimizi unutmayın.
9. Adım
Html'miz zaten hazır, bu yüzden şimdi dosyalarımızı yüklemekten sorumlu olacak php'de bazı satırlar yazacağız, bunun için "php" içine kaydedeceğim yeni bir upload.php dosyası oluşturacağız. 2. adımda oluşturduğumuz klasör.
Adım 10
Php dosyamızda yapacağımız ilk şey butona basılıp basılmadığını doğrulamak olacaktır.
"Yükle" ve "dosya" alanı boş değilse bunun için şunu yazacağız…

11. Adım
Bu doğrulandıktan sonra, yükleyeceğimiz dosyanın özelliklerini elde etmek için bir "foreach" döngüsü kullanacağız.Daha önce de belirttiğimiz gibi, bu durumda .jpg.webp veya .png.webp içindeki resimlerden bahsedeceğiz.

Adım 1/2
"$ file" ve "$ target" adında 2 değişken oluşturacağız, ilki yüklediğimiz dosyayı içerecek, ikincisi ise kaydedileceği yolu ve saklanacağı adı atayacağız. , depolama yolunu tahmin edebileceğiniz gibi 2. adımda oluşturulan "files" dizini olacak, saklanacağı isim ise foreach ile bir önceki adımda oluşturduğumuz $ FILES dizisinden gelecek. …

Adım 13
Şimdi yüklenen dosyanın istediğimiz parametrelere uygun olduğunu doğrulamamız gerekiyor, daha önce .jpg.webp veya .png.webp olarak resim yüklemek istediğimi belirtmiştim, ancak şimdi kodumuzda tanımlı olarak bırakmanın zamanı geldi. Ayrıca kişisel bir önlem olarak, yüklenecek resimlerin maksimum boyutunun 2Mb olmasını istiyorum, bu yüzden bunu da belirtme fırsatını kullanacağım, ancak yine de bu maksimum boyut MB olarak tanımlanamaz, bu yüzden onu dönüştürmek zorunda kalacağız. bayt…

Dosyaları işleyebilmek için şartları oluşturduğumuza göre, şimdi onlarla ne yapacağımızı tanımlamamız gerekiyor. Bu durumda bu dosyaların "files" klasörüne kopyalanmasını istiyorum ama ayrıca her dosyanın yolunun bir veritabanında saklanmasını istiyorum, böylece daha sonra bu dosyalarla bir liste veya galeri yapabilirim.
Bununla birlikte, bir veritabanı oluşturmamız gerekeceğini ve içinde her dosyanın yolunu, bu veritabanına bir bağlantı dosyasını ve elbette upload.php'ye her dosyanın yolunu ekleyen bir SQL ifadesini içeren alanları içeren bir tablo oluşturmamız gerekeceğini söyledi. veritabanı içinde. Göreyim seni!.
Adım 14
xampp aktifken tarayıcımıza gidiyoruz ve "localhost / phpmyadmin" adresini giriyoruz, kullanıcı adımız ve şifremizle girdikten sonra yeni bir veritabanı oluşturmaya devam edeceğiz, buna "upload" diyeceğim ve "utf8_spanish_ci" bir eşleşme atayacağım.

Adım 15
İçeride, sadece 2 sütunlu, otomatik artan bir kimlik ve varchar türünde bir başka rota adı verilen "rotalar" olarak adlandıracağım bir tablo oluşturacağız.


İhtiyacımız olan veritabanı ve tablo zaten elimizde ama şimdi bu veritabanına bağlanmamız gerekiyor, bunun için kod editörüme gidip 2 yeni dosya oluşturacağım ve bunları "config.php" ve "connection.php" olarak kaydedeceğim. zaten sahip olduğumuz php klasörü.


Adım 16
Şimdi "upload.php" dosyamıza döneceğiz ve içine "connection.php" dosyasını ekleyeceğiz.

Adım 17
Ardından yüklediğimiz dosyanın "files" dizinine kopyalanması için fonksiyonu ekleyeceğiz ve bu dosyanın yolunu veya bağlantısını veritabanına ekleyeceğiz. Ardından, her şey yolunda giderse bir onay mesajı ve doğru dosya türünü yüklemiyorsak veya maksimum MB sınırını aşıyorsa bir uyarı mesajı ekleyebiliriz.

18. adım
"index.php" dosyamıza geri döneceğiz ve "" kapanış etiketinden sonra upload.php dosyasına bir ekleme yerleştireceğiz.

Adım 19
Kodumuz zaten hazır, veritabanı oluşturuldu ve bağlantı yapılandırıldı, şimdi sonucun ne olduğunu görelim ve doğru çalışıp çalışmadığını kontrol edelim.


Bu eğitim size yardımcı oldu mu?
değilseBU EĞİTİMİ GELİŞTİRMEYE YARDIMCI OLUN!
Bu öğreticiyi düzeltebileceğinizi veya geliştirebileceğinizi düşünüyor musunuz? Sürümünüzü faydalı olduğunu düşündüğünüz değişikliklerle birlikte gönderebilirsiniz.0 kullanıcı bu öğreticiyi düzenledi. Düzenleyin ve tanınmış bir uzman olun!
Bu Eğitimi Düzenle
BENZER ÖĞRETMENLER
Dosyaları PHP ve MySQL ile BLOB alanlarında saklayınPHP ile PDF dosyaları oluşturma
8 Yorumlar

David sanz
29 Ağu 2015 23:34Öğreticiyi sevdim, PHP ile nasıl dosya yükleneceğini bilmek çok ilginç. teşekkürler Ronny
- Bildiri

Ronny Bonillo
30 Ağu 2015 00:50rica ederim david umarım işine yarar… selamlar…
- Bildiri

Ruben Gandia
03 Eylül 2015 18:45
Ronny, PHP aracılığıyla dosya yüklerken yaptığım bir hatayı düzeltmek için öğreticini kullandım. sadece sana vermek için bağlanıyorum Teşekkürler ve ayrıca sizi Takip Et olarak işaretledim.
- Bildiri

Ronny Bonillo
03 Eylül 2015 18:47
Rica ederim Ruben, beni takip ettiğiniz için teşekkürler! faydalı bulmanıza sevindim…
- Bildiri

Diego Agudelo Jimenez
16 Şubat 2016 22:56
Mükemmel yardım
- Bildiri

Ronny Bonillo
02 2016 Sal 06:24;-)
- Bildiri

MartinPm
05 Ağu 2016 20:16
Peki ya Ronny, bu hatayı almama yardım eder misin …
Uyarı: Tanımsız dizin: satır 3'te C: \ xampp \ htdocs \ upload \ php \ upload.php içindeki dosya
Uyarı: 3. satırda foreach () inC: \ xampp \ htdocs \ upload \ php \ upload.php için geçersiz argüman sağlandı
Uyarı: Tanımsız dizin: satır 7'de C: \ xampp \ htdocs \ upload \ php \ upload.php içindeki dosya
Uyarı: Tanımsız dizin: satır 8'de C: \ xampp \ htdocs \ upload \ php \ upload.php içindeki dosya
Uyarı: Tanımsız dizin: line10'da C: \ xampp \ htdocs \ upload \ php \ upload.php içindeki dosya
- Bildiri

josenumis
Aralık2021-202221-2022 17:23Merhaba, olduğu gibi kopyaladım ama sunucunun adını değiştiriyorum vs (yerel değil) ve dosyaları yüklemiyor ya da hata veriyor (dosyayı seçmeme izin veriyor) eğer seçmediyse diyor seçmem için bana ama sunucuya gönderdiğimde hiçbir şey yapmıyor, birisi yanlış bir şey olup olmadığını kontrol etmek için bana kodları gönderebilir mi)? Bence her şey yolunda. E-posta adresim [email protected] çok teşekkür ederim.
- Bildiri
- Hesap oluşturSolvetic hesabınıza sahip olmak için ÜCRETSİZ kaydolunBir hesap oluştur
- Tanımlamakzaten bir hesabın var mı? Oturum açınBeni Hesabımda tanımla
Bilgi
- Yayınlanan 27 Ağu 2015 21:10
- Güncellenmiş 28 Ağu 2015 08:21
- ziyaretler 15.8K
- SeviyeGelişmiş
En Son PHP Eğitimleri
- Ubuntu 20.04'te pHpMyAdmin nasıl kurulur
- NGINX ile Laravel PHP Framework CentOS 8'i kurun
- CentOS 7'de PHP performansı için OPcache'i kurun ve yapılandırın
- CentOS'ta Laravel PHP Web Framework nasıl kurulur