Selamlar, dosya upload yaparken random olarak yollamak istiyorum. (PHP)
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);
}
}
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (1)
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);
}
}