Kodumda bir sorun yaşıyorum. Yanlış bir şey yaptığımı biliyorum, ama ne olduğunu bilmiyorum. Fotoğraf yükleme formum var ve zaten mevcut değilse bir klasör oluşturmalı ve resmi bu klasöre yüklemelidir.Klasör oluştur ve aynı anda dosya yolla
Bu yüzden benim sorunum Ben her ikisi de aynı anda yapamam e. Klasör zaten mevcutsa, resim yüklenir, ancak klasör yoksa, yalnızca klasörü oluşturur ve bu resim o klasöre giden başka bir yükleme yapmak zorundayım.
İşte kodum.
index.html
<form action="" method="post" enctype="multipart/form-data">
<input id="input-image-3" class="file-loading" type="file" id="file" name="files[]" multiple="multiple" accept="image/*" />
</form>
<script>
$("#input-image-3").fileinput({
uploadUrl: "upload.php",
allowedFileExtensions: ["jpg","jpeg", "png", "gif"],
maxImageWidth: 100,
maxImageHeight: 100,
resizePreference: 'height',
maxFileCount: 10,
resizeImage: true,
}).on('filepreupload', function() {
$('#kv-success-box').html('');
}).on('fileuploaded', function(event, data) {
$('#kv-success-box').append(data.response.link);
$('#kv-success-modal').modal('show');
});
</script>
upload.php
<?php
$valid_formats = array("jpg", "png");
$max_file_size = 1024*100; //100 kb
$path = "up/test/"; // Upload directory, later i'll get the name of user
$filename=$file['filename'];
$extension = '.jpg';
$i=1;
while(file_exists($path.$filename.$extension)){
$filename=$file['filename']."teste_($i)";
$i++;}
if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST"){
// Loop $_FILES to exeicute all files
foreach ($_FILES['files']['name'] as $f => $name) {
if ($_FILES['files']['error'][$f] == 4) {
continue; // Skip file if any error found
}
if ($_FILES['files']['error'][$f] == 0) {
if ($_FILES['files']['size'][$f] > $max_file_size) {
$message[] = "$name is too large!.";
continue; // Skip large files
}
elseif(! in_array(pathinfo($name, PATHINFO_EXTENSION), $valid_formats)){
$message[] = "$name is not a valid format";
continue; // Skip invalid file formats
}
else{ // No error found! Move uploaded files
if(!is_dir($path)){mkdir($path, 0755);} // If dont exist, create folder
move_uploaded_file($_FILES["files"]["tmp_name"][$f], $path.$filename.$extension);
}
}
}
}
echo json_encode (json_decode ("{}"));
?>
şimdiden teşekkürler,
deneyin bu denemek $ oldumask = umask'ı (0); mkdir ($ yol, 0777, TRUE); Umask ($ oldumask); Bu numarayı –
Merhaba, @SameerJain kullanıyorum. Yardımınız için teşekkür ederim, bu kodu eklemeyi denedim ama maalesef bu da işe yaramıyor. O zaman sadece bir eylem yapmaya devam ediyor. – grcoder