Ads

Senin, 11 April 2011

Mengupload Nama File dan Menentukan Nama Barunya di Server

Hari Kamis kemarin saya menerima pertanyaan dari artikel Cara Upload File di PHP, pertanyaannya cukup simple sebenarnya. Bro amis hanya ingin tau bagaimanakah cara mengupload file dari client ke server PHP di mana file yang di upload nantinya memiliki nama yang berbeda dengan nama aslinya.


Di sini, saya coba buatkan programnya based on program yang ada di Cara Upload File di PHP, perbedaannya adalah, di sini saya tambahkan penentuan nama file dan juga pengubahan nama saat akan di letakan di server.


Berikut ini programnya:




Upload data simple

<form enctype="multipart/form-data" action="upload.php" method="POST">

<!–- Nama File di server -–>


Nama File di server <input type="text" name="NAMA_FILE" /> <br />

<!-– MAX_FILE_SIZE adalah batas file yang bisa di upload -–>


<input type="hidden" name="MAX_FILE_SIZE" value="1000000" />

<!–- alamatnya nanti dapat di akses di var $_FILES,
tepatnya di $_FILES['userfile'] dimana userfile adalah nama input -–>


Alamat File : <input name="userfile" type="file" /> <br />

<input type="submit" value="Upload" /> </form>

Contoh Dengan Fungsi Uploadnya:

<?php
// Untuk PHP versions dibawah 4.1.0, gunakan $HTTP_POST_FILES
// sedangkan 4.1.0 keatas gunakan $_FILES.
// Tempat Upload File

$uploaddir = 'N:\SERVRE\server2go_a2_psm\distribute_apache2.0\htdocs\blog\\';

//base name di gunakan untuk mengambil nama file saja, tanpa path
$ext=explode('.',basename($_FILES['userfile']['name']));

//Untuk extension, kita bisa gunakan basename, ambil text setelah titik terakhir dengan asumsi
//extention tidak mengandung titik sama sekali

$extention = $ext[sizeof($ext)-1];

//Tempatkan nama file ke variable nya
$namafile=$_POST['NAMA_FILE'];

//alamat upload yang baru adalah upload dir dengan nama file dari user dan extension file asli
$uploadfile = $uploaddir . $namafile . '.' . $extention ;

echo '<pre>';

/*
Move Upload File di gunakan untuk mengecek bahwa suatu file adalah file upload
Yang uploadnya dilakukan melalui mekanisme Upload PHP HTTP POST
Jika File tidak valid, maka hasilnya adalah false
Jika file valid, maka file tersebut akan di pindahkan
Di bawah ini di contohkan bahwa PHP Mengecek apakah alamat yang di tunjuk
$_FILES['userfile']['tmp_name'] adalah file upload yang valid
Jika valid maka file tersebut akan di pindahkan ke alamat yang ada di uploadfile
cat: $_FILES['userfile']['tmp_name'] alamat file yang baru di upload
diserver sebelum di pindahkan
*/


if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
echo "File valid, dan telah di upload\n";
} else {
echo "File Upload tidak valid!\n";
}

echo 'Berikut ini adalah data lengkap var $_FILES';
print_r($_FILES);
print "</pre>";

?>

Ok, itu saja, semoga bermanfaat.

Tidak ada komentar: