lostyazilim
tr.link

php upload yapma zorunluluğu

17 Mesajlar 2.012 Okunma
acebozum
tr.link

Oburix Oburix WM Aracı Kullanıcı
  • Üyelik 11.04.2018
  • Yaş/Cinsiyet 27 / E
  • Meslek Kullanıcı Destek Elemanı
  • Konum İstanbul Anadolu
  • Ad Soyad H** Y**
  • Mesajlar 21
  • Beğeniler 2 / 2
  • Ticaret 0, (%0)
arkadaşlar merhaba şöyle bir php kodum var (lütfen sürümüne takılmayın bildiğim gibi yazıyorum) ama upload yapmasını engelleyemiyorum yani upload'da boş geçilmez oluyor isset ve empty kısmından sildiğim halde yüksek ihtimal dosyanın zip olup olmadığını kontrol ederken zip olmadığını gördüğünde boş geçilemez deyip hata veriyor yardımlarınızı rica ediyorum bu engeli nasıl aşabilirim?

özetle diyecekler için :yani upload özelliğini isteğe bağlı opsiyonel olarak kullanılması?

benim post etmeye çalıştığım hata vermeden çalışmasını istediğim form: http://prntscr.com/jigzuq

hata : http://prntscr.com/jigzzx



include("admin/includes/connect.php");
include("admin/includes/function.php");
include("admin/includes/mail/class.phpmailer.php");
?>



İletişim












Formda tüm alanlar boş geçilmezdir.





















Sadece *.zip* uzantılı dosyaları gönderebilirsiniz.






if ($_POST) {
if (isset($_POST['ad']) && isset($_POST['email']) && isset($_POST['tel']) && isset($_POST['url']) && isset($_POST['konu']) && isset($_POST['messages']) && isset($_FILES['ek_dosya'])) {
$ad = $_POST['ad'];
$email = $_POST['email'];
$tel = $_POST['tel'];
$url = $_POST['url'];
$konu = $_POST['konu'];
$messages = $_POST['messages'];
$ek_dosya = $_FILES['ek_dosya'];
if(empty($ad) || empty($email) || empty($tel) || empty($url) || empty($konu) || empty($messages) || empty($ek_dosya)){
echo "boş alan bırakamazsınız!";
exit;
}

else{
$boyut = $_FILES['ek_dosya']['size'];
if($boyut > (1024*1024*25)){
echo 'Dosya 25MB den büyük olamaz.';
}
else{
$tip = $_FILES['ek_dosya']['type'];
$isim = $_FILES['ek_dosya']['name'];
$uzanti = explode('.', $isim);
$uzanti = $uzanti[count($uzanti)-1];
if($tip != 'application/zip' || $uzanti != 'zip') {
echo 'Yanlızca *.Zip* uzantılı dosyaları gönderebilirsiniz.';
}
else{
$dosya = $_FILES['ek_dosya']['tmp_name'];
copy($dosya, 'admin/includes/uploads/' . $_FILES['ek_dosya']['name']);
if($_POST){
$dosya = $_FILES['ek_dosya']['tmp_name'];
$dosya_adi = $_FILES['ek_dosya']['name'];
$yol = "admin/includes/uploads/" . $dosya_adi;
$ad=htmlspecialchars(addslashes(trim($_POST["ad"])));
$email=htmlspecialchars(addslashes(trim($_POST["email"])));
$tel=htmlspecialchars(addslashes(trim($_POST["tel"])));
$url=htmlspecialchars(addslashes(trim($_POST["url"])));
$konu=htmlspecialchars(addslashes(trim($_POST["konu"])));
$messages=htmlspecialchars(addslashes(trim($_POST["messages"])));
$tarih = date('d.m.Y');
$ip=htmlspecialchars(addslashes(trim($_SERVER["REMOTE_ADDR"])));
/*db kayıt*/
$add=mysql_query("INSERT INTO iletisim_v1 (ad,email,tel,url,konu,messages,tarih,ip,dosya_adi) values (
'$ad',
'$email',
'$tel',
'$url',
'$konu',
'$messages',
'$tarih',
'$ip',
'$dosya_adi'
)");
/*mail*/
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Host = 'mail.:).com';
$mail->Port = :);
$mail->Username = 'mailAdres@';
$mail->Password = 'mailPass';
$mail->SetFrom($mail->Username, $_POST['ad']);
$mail->AddAddress('mailAdres@', 'İbrahim Yılmaz');
$mail->CharSet = 'UTF-8';
$mail->Subject = $_POST["konu"];
$mail->MsgHTML('İsim: '.htmlspecialchars(addslashes(trim($_POST["ad"]))).'


E-Posta: '.htmlspecialchars(addslashes(trim($_POST["email"]))).'


Telefon: '.htmlspecialchars(addslashes(trim($_POST["tel"]))).'


Web sitesi: '.htmlspecialchars(addslashes(trim($_POST["url"]))).'


Konu: '.htmlspecialchars(addslashes(trim($_POST["konu"]))).'


Mesaj: '.htmlspecialchars(addslashes(trim($_POST["messages"]))).'


Kayıt Tarihi: '.$tarih = date('d.m.Y').'


İp Adresi: '.htmlspecialchars(addslashes(trim($_SERVER["REMOTE_ADDR"]))).'


');
if($mail->Send()) {
echo 'Mesajınız başarıyla gönderildi.';
}
else {
echo 'Mesaj gönderirken bir hata oluştu ve girmiş olduğunuz bilgiler alınamadı.' . $mail->ErrorInfo;
}
header("location:index");
}
}

}
}
}
else {
echo "form boş!";
}
}
?>



 

 

wmaraci
reklam

ACK ACK WM Aracı Kullanıcı
  • Üyelik 07.04.2014
  • Yaş/Cinsiyet 29 / K
  • Meslek Öğrenci
  • Konum İzmir
  • Ad Soyad C** K**
  • Mesajlar 18
  • Beğeniler 11 / 8
  • Ticaret 2, (%100)
Şeklinde deneyin

else if($_FILES['ek_dosya'] != null && $_FILES['ek_dosya'] != ""){
$boyut = $_FILES['ek_dosya']['size'];
if($boyut > (1024*1024*25)){
echo 'Dosya 25MB den büyük olamaz.';
}
else{
$tip = $_FILES['ek_dosya']['type'];
$isim = $_FILES['ek_dosya']['name'];
$uzanti = explode('.', $isim);
$uzanti = $uzanti[count($uzanti)-1];
if($tip != 'application/zip' || $uzanti != 'zip') {
echo 'Yanlızca *.Zip* uzantılı dosyaları gönderebilirsiniz.';
}
else{
$dosya = $_FILES['ek_dosya']['tmp_name'];
copy($dosya, 'admin/includes/uploads/' . $_FILES['ek_dosya']['name']);
if($_POST){
$dosya = $_FILES['ek_dosya']['tmp_name'];
$dosya_adi = $_FILES['ek_dosya']['name'];
$yol = "admin/includes/uploads/" . $dosya_adi;
$ad=htmlspecialchars(addslashes(trim($_POST["ad"])));
$email=htmlspecialchars(addslashes(trim($_POST["email"])));
$tel=htmlspecialchars(addslashes(trim($_POST["tel"])));
$url=htmlspecialchars(addslashes(trim($_POST["url"])));
$konu=htmlspecialchars(addslashes(trim($_POST["konu"])));
$messages=htmlspecialchars(addslashes(trim($_POST["messages"])));
$tarih = date('d.m.Y');
$ip=htmlspecialchars(addslashes(trim($_SERVER["REMOTE_ADDR"])));
/*db kayıt*/
$add=mysql_query("INSERT INTO iletisim_v1 (ad,email,tel,url,konu,messages,tarih,ip,dosya_adi) values (
'$ad',
'$email',
'$tel',
'$url',
'$konu',
'$messages',
'$tarih',
'$ip',
'$dosya_adi'
)");
/*mail*/
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Host = 'mail.:).com';
$mail->Port = :);
$mail->Username = 'mailAdres@';
$mail->Password = 'mailPass';
$mail->SetFrom($mail->Username, $_POST['ad']);
$mail->AddAddress('mailAdres@', 'İbrahim Yılmaz');
$mail->CharSet = 'UTF-8';
$mail->Subject = $_POST["konu"];
$mail->MsgHTML('İsim: '.htmlspecialchars(addslashes(trim($_POST["ad"]))).'


E-Posta: '.htmlspecialchars(addslashes(trim($_POST["email"]))).'


Telefon: '.htmlspecialchars(addslashes(trim($_POST["tel"]))).'


Web sitesi: '.htmlspecialchars(addslashes(trim($_POST["url"]))).'


Konu: '.htmlspecialchars(addslashes(trim($_POST["konu"]))).'


Mesaj: '.htmlspecialchars(addslashes(trim($_POST["messages"]))).'


Kayıt Tarihi: '.$tarih = date('d.m.Y').'


İp Adresi: '.htmlspecialchars(addslashes(trim($_SERVER["REMOTE_ADDR"]))).'


');
if($mail->Send()) {
echo 'Mesajınız başarıyla gönderildi.';
}
else {
echo 'Mesaj gönderirken bir hata oluştu ve girmiş olduğunuz bilgiler alınamadı.' . $mail->ErrorInfo;
}
header("location:index");
}
}

}
}
}
else {
echo "form boş!";
}

 

 

Oburix Oburix WM Aracı Kullanıcı
  • Üyelik 11.04.2018
  • Yaş/Cinsiyet 27 / E
  • Meslek Kullanıcı Destek Elemanı
  • Konum İstanbul Anadolu
  • Ad Soyad H** Y**
  • Mesajlar 21
  • Beğeniler 2 / 2
  • Ticaret 0, (%0)
yardımınız için teşekkürler deniyorum geri bildirim yapacağım.
 

 

Oburix Oburix WM Aracı Kullanıcı
  • Üyelik 11.04.2018
  • Yaş/Cinsiyet 27 / E
  • Meslek Kullanıcı Destek Elemanı
  • Konum İstanbul Anadolu
  • Ad Soyad H** Y**
  • Mesajlar 21
  • Beğeniler 2 / 2
  • Ticaret 0, (%0)
http://prntscr.com/jil2f3

sorun devam ediyor.. halen zip sorgulaması yapıyor acaba zip olup olmadıgını kontrol ettirmesem bu sefer php exe gibi uzantılar upload etmeye kalkışacaklar başka önerisi olan var mı ?
 

 

wmaraci
wmaraci

Oburix Oburix WM Aracı Kullanıcı
  • Üyelik 11.04.2018
  • Yaş/Cinsiyet 27 / E
  • Meslek Kullanıcı Destek Elemanı
  • Konum İstanbul Anadolu
  • Ad Soyad H** Y**
  • Mesajlar 21
  • Beğeniler 2 / 2
  • Ticaret 0, (%0)
kodların son hali ;
if ($_POST) {
if (isset($_POST['ad']) && isset($_POST['email']) && isset($_POST['tel']) && isset($_POST['url']) && isset($_POST['konu']) && isset($_POST['messages'])) {
$ad = $_POST['ad'];
$email = $_POST['email'];
$tel = $_POST['tel'];
$url = $_POST['url'];
$konu = $_POST['konu'];
$messages = $_POST['messages'];
if(empty($ad) || empty($email) || empty($tel) || empty($url) || empty($konu) || empty($messages)){
echo "boş alan bırakamazsınız!";
exit;
}
else if($_FILES['ek_dosya'] != null && $_FILES['ek_dosya'] != ""){
$boyut = $_FILES['ek_dosya']['size'];
if($boyut > (1024*1024*25)){
echo 'Dosya 25MB den büyük olamaz.';
}
else{
$tip = $_FILES['ek_dosya']['type'];
$isim = $_FILES['ek_dosya']['name'];
$uzanti = explode('.', $isim);
$uzanti = $uzanti[count($uzanti)-1];
if($tip != 'application/zip' || $uzanti != 'zip') {
echo 'Yanlızca *.Zip* uzantılı dosyaları gönderebilirsiniz.';
}
else{
$dosya = $_FILES['ek_dosya']['tmp_name'];
copy($dosya, 'admin/includes/uploads/' . $_FILES['ek_dosya']['name']);
if($_POST){
$dosya = $_FILES['ek_dosya']['tmp_name'];
$dosya_adi = $_FILES['ek_dosya']['name'];
$yol = "admin/includes/uploads/" . $dosya_adi;
$ad=htmlspecialchars(addslashes(trim($_POST["ad"])));
$email=htmlspecialchars(addslashes(trim($_POST["email"])));
$tel=htmlspecialchars(addslashes(trim($_POST["tel"])));
$url=htmlspecialchars(addslashes(trim($_POST["url"])));
$konu=htmlspecialchars(addslashes(trim($_POST["konu"])));
$messages=htmlspecialchars(addslashes(trim($_POST["messages"])));
$tarih = date('d.m.Y');
$ip=htmlspecialchars(addslashes(trim($_SERVER["REMOTE_ADDR"])));
/*db kayıt*/
$add=mysql_query("INSERT INTO iletisim_v1 (ad,email,tel,url,konu,messages,tarih,ip,dosya_adi) values (
'$ad',
'$email',
'$tel',
'$url',
'$konu',
'$messages',
'$tarih',
'$ip',
'$dosya_adi'
)");
 

 

look2me look2me WM Aracı Kullanıcı
  • Üyelik 29.12.2017
  • Yaş/Cinsiyet 32 / E
  • Meslek Yazılım
  • Konum Aydın
  • Ad Soyad M** S**
  • Mesajlar 50
  • Beğeniler 14 / 4
  • Ticaret 0, (%0)
Kodlara bakma fırsatım olmadı yoldayım ama okudugum kadaraı ike html de required ekleyip zorunlu hale getirdikten spnra php de zip olup olmadığını kontrol ettirsem daha kolay olmaz mı
 

 

Oburix Oburix WM Aracı Kullanıcı
  • Üyelik 11.04.2018
  • Yaş/Cinsiyet 27 / E
  • Meslek Kullanıcı Destek Elemanı
  • Konum İstanbul Anadolu
  • Ad Soyad H** Y**
  • Mesajlar 21
  • Beğeniler 2 / 2
  • Ticaret 0, (%0)
yardımcı olabilecek misiniz_ upload formları required olmuyor, bilginize
 

 

0ktay 0ktay strdex Kullanıcı
  • Üyelik 01.02.2018
  • Yaş/Cinsiyet 26 / E
  • Meslek Yazılım öğrencisi
  • Konum Antalya
  • Ad Soyad O** Ş**
  • Mesajlar 603
  • Beğeniler 25 / 155
  • Ticaret 2, (%100)
Yeni bir edit: include("admin/includes/connect.php");
include("admin/includes/function.php");
include("admin/includes/mail/class.phpmailer.php");
?>



İletişim












Formda tüm alanlar boş geçilmezdir.





















Sadece *.zip* uzantılı dosyaları gönderebilirsiniz.






if (isset($_POST['submit'])) {
$ad = $_POST['ad'];
$email = $_POST['email'];
$tel = $_POST['tel'];
$url = $_POST['url'];
$konu = $_POST['konu'];
$messages = $_POST['messages'];
$ek_dosya = $_FILES['ek_dosya'];

if(empty($ad) || empty($email) || empty($tel) || empty($url) || empty($konu) || empty($messages)){
echo "Boş alan bırakamazsınız!";
exit; }

else{
$boyut = $_FILES['ek_dosya']['size'];
if($boyut > (1024*1024*25)){ echo 'Dosya 25MB den büyük olamaz.'; }

else{
$tip = $_FILES['ek_dosya']['type'];
$isim = $_FILES['ek_dosya']['name'];
$uzanti = explode('.', $isim);
$uzanti = $uzanti[count($uzanti)-1];

if($uzanti == "zip"){
$dosya = $_FILES['ek_dosya']['tmp_name'];
copy($dosya, 'admin/includes/uploads/' . $_FILES['ek_dosya']['name']);
if($_POST){
$dosya = $_FILES['ek_dosya']['tmp_name'];
$dosya_adi = $_FILES['ek_dosya']['name'];
$yol = "admin/includes/uploads/" . $dosya_adi;
$ad=htmlspecialchars(addslashes(trim($_POST["ad"])));
$email=htmlspecialchars(addslashes(trim($_POST["email"])));
$tel=htmlspecialchars(addslashes(trim($_POST["tel"])));
$url=htmlspecialchars(addslashes(trim($_POST["url"])));
$konu=htmlspecialchars(addslashes(trim($_POST["konu"])));
$messages=htmlspecialchars(addslashes(trim($_POST["messages"])));
$tarih = date('d.m.Y');
$ip=htmlspecialchars(addslashes(trim($_SERVER["REMOTE_ADDR"])));
/*db kayıt*/
$add=mysql_query("INSERT INTO iletisim_v1 (ad,email,tel,url,konu,messages,tarih,ip,dosya_adi) values (
'$ad',
'$email',
'$tel',
'$url',
'$konu',
'$messages',
'$tarih',
'$ip',
'$dosya_adi'
)");
/*mail*/
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Host = 'mail.:).com';
$mail->Port = :);
$mail->Username = 'mailAdres@';
$mail->Password = 'mailPass';
$mail->SetFrom($mail->Username, $_POST['ad']);
$mail->AddAddress('mailAdres@', 'İbrahim Yılmaz');
$mail->CharSet = 'UTF-8';
$mail->Subject = $_POST["konu"];
$mail->MsgHTML('İsim: '.htmlspecialchars(addslashes(trim($_POST["ad"]))).'


E-Posta: '.htmlspecialchars(addslashes(trim($_POST["email"]))).'


Telefon: '.htmlspecialchars(addslashes(trim($_POST["tel"]))).'


Web sitesi: '.htmlspecialchars(addslashes(trim($_POST["url"]))).'


Konu: '.htmlspecialchars(addslashes(trim($_POST["konu"]))).'


Mesaj: '.htmlspecialchars(addslashes(trim($_POST["messages"]))).'


Kayıt Tarihi: '.$tarih = date('d.m.Y').'


İp Adresi: '.htmlspecialchars(addslashes(trim($_SERVER["REMOTE_ADDR"]))).'


');
if($mail->Send()) {
echo 'Mesajınız başarıyla gönderildi.';
}
else {
echo 'Mesaj gönderirken bir hata oluştu ve girmiş olduğunuz bilgiler alınamadı.' . $mail->ErrorInfo;
}
header("location:index");
}
}
else {
echo 'Yanlızca *.Zip* uzantılı dosyaları gönderebilirsiniz.';
}
}
}
else {
echo "form boş!";
}
}
?>



 

 

Eğitimin pahalı olduğunu düşünüyorsanız, cehaletin bedelini hesaplayın.

Oburix Oburix WM Aracı Kullanıcı
  • Üyelik 11.04.2018
  • Yaş/Cinsiyet 27 / E
  • Meslek Kullanıcı Destek Elemanı
  • Konum İstanbul Anadolu
  • Ad Soyad H** Y**
  • Mesajlar 21
  • Beğeniler 2 / 2
  • Ticaret 0, (%0)
deniyorum, geri bildirim yapacağım.
 

 

Oburix Oburix WM Aracı Kullanıcı
  • Üyelik 11.04.2018
  • Yaş/Cinsiyet 27 / E
  • Meslek Kullanıcı Destek Elemanı
  • Konum İstanbul Anadolu
  • Ad Soyad H** Y**
  • Mesajlar 21
  • Beğeniler 2 / 2
  • Ticaret 0, (%0)
son da kullanılan elsede hata var ben aradım da bulamadım süslü parantez hatası sanırım saydım ama o hangi ifin elsesei bulamadım
 

 

wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al