David M. Boren
Hectopat
- Katılım
- 12 Haziran 2016
- Mesajlar
- 61
Daha fazla
- Cinsiyet
- Erkek
Ajax ile Image Upload eden bir sistem buldum, ve bu sistemi Bootstrap Modal'a yerleştirdim. Image'ı upload ediyor sayfa yenilenmeden ama isimlendirmeyi random sayı uydurarak yapıyor yani mesela image'ın adı "logo.jpg" ise bunu "6567554logo.jpg" yapıyor. Ama ben bunu istemiyorum. Upload edilen dizinde veya DB de "logo.jpg" varsa bunu "logo_1.jpg" olarak adlandırmasını istiyorum,bunu nasıl yapabilirim. Kodları postun sonuna bıraktım, örnek bir kod belirtirseniz veyahut bir fikir verirseniz sevinirim.
Kodlar:
Kodlar:
PHP:
<?php
include("config.php");
$valid_extensions = array('jpeg', 'jpg', 'png', 'gif', 'bmp'); // valid extensions
$path = 'uploads/'; // upload directory
if(isset($_FILES['image']))
{
$img = $_FILES['image']['name'];
$tmp = $_FILES['image']['tmp_name'];
// get uploaded file's extension
$ext = strtolower(pathinfo($img, PATHINFO_EXTENSION));
// can upload same image using rand function --> rand(1000,1000000) - uniqid()
$final_image = rand(1000,1000000).uniqid().$img;
// check's valid format
if(in_array($ext, $valid_extensions))
{
$path = $path.strtolower($final_image);
if(move_uploaded_file($tmp,$path))
{
$query = $db->prepare("INSERT INTO image SET
image_name = ?");
$insert = $query->execute(array(
"$final_image"
));
echo "<img src='$path' />";
echo "<input type='hidden' value='$final_image' disabled id='file-value' />";
}
}
else
{
echo 'invalid';
}
}
?>
Son düzenleyen: Moderatör: