v2.5.1
Giriş yap

Selamlar, dosya upload yaparken random olarak yollamak istiyorum. (PHP)

avancee
95 defa görüntülendi

Selamlar benim bir dosya yollama fonksiyonum var bu haliyle çalışıyor ancak ben bunu random isimlerle yollamak istiyorum dosyalarımı

Codes:

public static function backgroundSaved()
	{
		global $dbh, $lang, $config;

		if (isset($_FILES["dosya"])) {

			$yol = "../../../templates/" . $config['skin'] . "/profile_bg/";

			$yuklemeYeri = __DIR__ . DIRECTORY_SEPARATOR . $yol . DIRECTORY_SEPARATOR . $_FILES["dosya"]["name"];

			if (file_exists($yuklemeYeri)) {

				Html::error($lang["false"] . 'Dosya daha önceden yüklenmiş');
			} else {

				if ($_FILES["dosya"]["size"]  > 1000000) {
					Html::error($lang["false"] . 'Dosya boyutu sınırı');
				} else {

					$dosyaUzantisi = pathinfo($_FILES["dosya"]["name"], PATHINFO_EXTENSION);

					if ($dosyaUzantisi != "jpg" && $dosyaUzantisi != "png") { # Dosya uzantı kontrolü

						Html::error($lang["false"] . 'Sadece jpg ve png uzantılı dosyalar yüklenebilir.');
					} else {

						move_uploaded_file($_FILES["dosya"]["tmp_name"], $yuklemeYeri);

						$changeProfile = $dbh->prepare('UPDATE users SET profile_bg = :pbg WHERE id = :uid');
						$changeProfile->execute(array(
							":pbg" => $_FILES["dosya"]["name"],
							":uid" => self::userData('id')
						));

						$addLog = $dbh->prepare('INSERT INTO profile_imagehistory SET image_name = :img, author_id = :auid');
						$addLog->execute(array(
							":img" => $_FILES["dosya"]["name"],
							":auid" => self::userData('id')
						));

						Html::errorSucces($lang["true"] . "Dosya başarıyla yüklendi");
					}
				}
			}
			Yonlendir('user?id=' . self::userData('id'), 4);
		}
	}
Cevap yaz
Cevaplar (1)
elessar
141 gün önce
public static function backgroundSaved()
{
    global $dbh, $lang, $config;

    if (isset($_FILES["dosya"])) {

        $yol = "../../../templates/" . $config['skin'] . "/profile_bg/";
        $uzanti = pathinfo($_FILES["dosya"]["name"], PATHINFO_EXTENSION);

        $uniqName = uniqid() . '.' . $uzanti;

        $yuklemeYeri = __DIR__ . DIRECTORY_SEPARATOR . $yol . DIRECTORY_SEPARATOR . $uniqName;


        if ($_FILES["dosya"]["size"]  > 1000000) {
            Html::error($lang["false"] . 'Dosya boyutu sınırı');
        } else {

            $izinVerilenUzantilar = ['jpg', 'png'];
            $dinamikKontrol = implode(', ', $izinVerilenUzantilar);
            if (!in_array($uzanti, $izinVerilenUzantilar)) { # Dosya uzantı kontrolü
                Html::error($lang["false"] . "Sadece $dinamikKontrol uzantılı dosyalar yüklenebilir.");
            } else {

                move_uploaded_file($_FILES["dosya"]["tmp_name"], $yuklemeYeri);

                $changeProfile = $dbh->prepare('UPDATE users SET profile_bg = :pbg WHERE id = :uid');
                $changeProfile->execute(array(
                    ":pbg" => $uniqName,
                    ":uid" => self::userData('id')
                ));

                $addLog = $dbh->prepare('INSERT INTO profile_imagehistory SET image_name = :img, author_id = :auid');
                $addLog->execute(array(
                    ":img" => $uniqName,
                    ":auid" => self::userData('id')
                ));

                Html::errorSucces($lang["true"] . "Dosya başarıyla yüklendi");
            }
        }

        Yonlendir('user?id=' . self::userData('id'), 4);
    }
}