Upload File  |   |
<form action="upload.php"   method="POST" ENCTYPE="MULTIPART/FORM-DATA"> nama berkas : <input type="file" name="namafile"> </form>  |   |
Perjatikan bahwa tag <FORM> pada   script diatas mengandung atribut ENCTYPE yang berisi "MULTIPART/FORM-DATA".   Pada tag ini, ACTION (yang   menyatakan file yang akan   dijalankan sekiranya tombol SUBMIT diklik) diisi dengan file upload.php. <input type="file"   name="namafile"> Adalah   perintah untuk menangani penentuan file oleh pemilih.  |   |
$datafile   = $_FILES["namafile"];  |    Untuk memperoleh nama file, mula-mula   ditangani melalui pernyataan disamping.  |   
Perhatikan bahwa superglobal $_FILES   dipakai untuk memperoleh data yang didasarkan pada nama variabel namafile(nama variabel dalam upload.php yang menyatakan   nama file yang di-upload). Hasil dari $_FILES["namafile"] berupa array. Untuk mendapatkan nama file   yang sesungguhnya, diperlukan indeks berupa “name” terhadap $datafile. Jadi,  |   |
$datafile["name"];  |    Untuk mengambil nama file yang diupload.  |   
Dalam hal ini, PHP akan   melakukan penyalinan terhadap file   bersangkutan kesuatu folder sementara pada server. Folder ini dapat diatur   melalui direktif upload_tmp_dir   yang terdapat pada file php.ini. Sekiranya file tidak di-upload (misalnya tidak ada file yang   dipilih ketika pemakai mengklik Upload),   nama file akan berupa string   kosong.  |   |
Membatasi ukuran file  |   
Ukuran file yang dapat di-upload bergantung pada direktif upload_max_files yang terdapat pada   file php.ini. Tentu   saja anda bisa secara langsung melakukan perubavhan pada file tersebut.   Namun, ada cara lain yang dapat anda lakukan pada kode HTML, yaitu dengan   menambahkan baris seperti berikut :  <input   type="HIDDEN" name="MAX_FILE_SIZE" value="1024"> Yang terpenting, kode diatas perlu diletakkan sebelum INPUT yang bertipe   FILE. Sebagai informasi tambahan yang perlu anda ketahui, 1024 pada VALUE   menyatakan ukuran file terbesar   yang dapat disalin ke server.   Satuanya adalah byte.  |   
Kode lengkap yang melibatkan MAX_FILE_SIZE : <form action="upload.php"   method="POST" ENCTYPE="MULTIPART/FORM-DATA"> <input type="HIDDEN"   name="MAX_FILE_SIZE" value="1024"> nama berkas : <input type="FILE" name="upload"> </form>  |   
Bila ukuran file yang akan di-upload lebih dari nilai pada   MAX_FILE_SIZE, variabel yang disebutkan pada INPUT berupa FILE akan berisi   string kosong.  |   
Mengetahui tipe,   ukuran, dan letak file yang di-upload  |   ||||||||||
Sebagaimana telah dijelaskan didepan, hasil dari semacam $_FILES["namafile"] berupa array,   jika anda mengenakan indeks berupa “name”, terhadap array tersebut maka akan diperoleh nama file. Selain “name” anda bisa mengenakan indeks berupa “type”,   “size”, dan “tmp_name”. Tabel. 000XX. Indeks yang dapat dikenakan untuk array. 
  |   ||||||||||
Contoh penulisan :  $datafile = $_FILES["namafile"]; $namafile = $datafile["name"]; $tipe = $datafile["type"]; $ukuran = $datafile["size"]; $file_sementara   = $ $datafile["tmp_name"];  |   
Menangani penyalinan   secara permanen  |   |
Sebagai mana telah diterangkan, file   yang di-upload akan ditaruh pada   folder yang bersifat sementara. Supaya file   tidak hilang, anda perlu menyalinnya pada lokasi Anda sendiri.  |   |
Contoh penulisan untuk salin : $file_sementara = $_FILES["namafile"]["tmp_name"]; $namafile = $_FILES["namafile"]["name"]; if(copy($file_sementara,"c:/wamp/www/images/$namafile")) {       print("Berkas $namafile_name telah disalin");       unlink($file_sementara); }  |   |
copy($file_sementara,"c:/wamp/www/images/$namafile")  |    Digunakan untuk mengkopi file, dari folder sementara ke folder yang telah   dibuat.  |   
unlink($file_sementara);  |    Digunakan untuk menghapus file   pada folder sementara.  |   
Sebelum melakukan penyalinan secara permanen, Anda juga bisa melakukan   validasi apakan file misalnya   bertipe gambar atau tidak. Anda bisa menggunakan indeks “type” pada hasil   $_FILES[“namafile”].  |   |
Berikut adalah contoh kode program untuk upload images
Buatlah tabel di mysql dengan nama tbl_barang dengan field : id_barang, kode_kategori, nama_barang, harga, keterangan, stok, gambar, berat_kg.
Buatlah file index.php dan copy script dibawah ini :
<?php
	if(isset($_GET["action"])){
		if($_GET["action"]=="edit"){
			$sql2 = mysql_query("select * from tbl_barang where kode_barang='".$_GET["kb"]."'");
			$data2 = mysql_fetch_array($sql2);
			
			$kategori		= $data2["kode_kategori"];
			$nama_barang	= $data2["nama_barang"];
			$harga			= $data2["harga"];
			$keterangan		= $data2["keterangan"];
			$stok			= $data2["stok"];
			$kode_barang	= $data2["kode_barang"];
			$berat_kg		= $data2["berat_kg"];
		}
		if($_GET["action"]=="hapus"){
			//------hapus gambar terlebih dahulu
			$nama_gambar = getNamagambar($_GET["kb"]);
			@unlink("images/barang/".$nama_gambar); //sesuaikan letak folder
			$sql = mysql_query("delete from tbl_barang where kode_barang = '".$_GET["kb"]."'");
			if($sql){
				?>
					<script language="javascript">
						alert("Berhasil di Hapus");
						window.location.href="index.php";
					</script>
				<?php
			}
		}
	}
	
	if(isset($_POST["tombol"])){
		if($_POST["tombol"]=="Simpan"){
			$lokasi_file=$_FILES['fupload']['tmp_name'];
			$nama_file = $_FILES['fupload']['name'];
			if(strlen($lokasi_file)!=0 and strlen($nama_file)!=0){
				//------seputar upload image penambahan nama
				$now = time();
				$a=str_replace(" ","_",$nama_file);
				$b=str_replace("(","",$a);
				$c=str_replace(")","",$b);
				while(file_exists($uploadFilename = $now.'-'.$c)){
					$now++;
				}
				//------seputar upload image move to folder
				$direktori= "images/barang/$uploadFilename"; //sesuaikan letak folder
				if(move_uploaded_file($lokasi_file,$direktori)){   
					$sql = mysql_query("insert into tbl_barang (kode_kategori,nama_barang,harga,keterangan,stok,gambar,berat_kg) values ('".$_POST["txtkategori"]."',
					'".$_POST["txtnama_barang"]."',
					'".$_POST["txtharga"]."',
					'".$_POST["txtketerangan"]."',
					'".$_POST["txtstok"]."',
					'".$uploadFilename."',
					'".$_POST["txtberat"]."')");
					if($sql){
						?>
							<script language="javascript">
								alert("Berhasil di simpan");
								window.location.href="index.php";
							</script>
						<?php
					}else{
						?>
							<script language="javascript">
								alert("Gagal di simpan");
								window.location.href="index.php";
							</script>
						<?php
					}
				}
			}
		}
		if($_POST["tombol"]=="Edit"){
			$lokasi_file=$_FILES['fupload']['tmp_name'];
			$nama_file = $_FILES['fupload']['name'];
			if(strlen($lokasi_file)!=0 and strlen($nama_file)!=0){
				//------hapus gambar terlebih dahulu
				$nama_gambar = getNamagambar($_POST["txtkode_barang"]);
				$hapus = unlink("images/barang/".$nama_gambar);//sesuaikan letak folder
				if($hapus){
					//------seputar upload image penambahan nama
				$now = time();
				$a=str_replace(" ","_",$nama_file);
				$b=str_replace("(","",$a);
				$c=str_replace(")","",$b);
				while(file_exists($uploadFilename = $now.'-'.$c)){
					$now++;
				}
				//------seputar upload image move to folder
				$direktori= "images/barang/$uploadFilename";//sesuaikan letak folder
				if(move_uploaded_file($lokasi_file,$direktori)){   
					$sql = mysql_query("update tbl_barang set 
					kode_kategori	='".$_POST["txtkategori"]."',
					nama_barang		='".$_POST["txtnama_barang"]."',
					harga			='".$_POST["txtharga"]."',
					keterangan		='".$_POST["txtketerangan"]."',
					stok			='".$_POST["txtstok"]."',
					gambar			='".$uploadFilename."',
					berat_kg			='".$_POST["txtberat"]."'
					where kode_barang='".$_POST["txtkode_barang"]."'");
					
					if($sql){
						?>
							<script language="javascript">
								alert("Berhasil di Edit");
								window.location.href="index.php";
							</script>
						<?php
					}else{
						?>
							<script language="javascript">
								alert("Gagal di Edit");
								window.location.href="index.php";
							</script>
						<?php
					}
				}
				}else{
					?>
						<script language="javascript">
							alert("Gagal di Edit");
							window.location.href="index.php";
						</script>
					<?php
				}
			}else{
				$sql = mysql_query("update tbl_barang set 
				kode_kategori	='".$_POST["txtkategori"]."',
				nama_barang		='".$_POST["txtnama_barang"]."',
				harga			='".$_POST["txtharga"]."',
				keterangan		='".$_POST["txtketerangan"]."',
				stok			='".$_POST["txtstok"]."',
				berat_kg		='".$_POST["txtberat"]."'
				where kode_barang='".$_POST["txtkode_barang"]."'");
				
				if($sql){
					?>
						<script language="javascript">
							alert("Berhasil di Edit");
							window.location.href="index.php";
						</script>
					<?php
				}else{
					?>
						<script language="javascript">
							alert("Gagal di Edit");
							window.location.href="index.php";
						</script>
					<?php
				}
			}
		}
	}
?>
<form name="form1" action="" method="post" enctype="multipart/form-data">
<table width="402" border="0">
  <tr>
    <td width="28%">Kategori</td>
    <td width="4%">:</td>
    <td width="68%">
    <select name="txtkategori" id="txtkategori">
     	<option value="">::Pilih::</option>
		<?php 
        $a=mysql_query("select*from tbl_kategori order by nama_kategori asc");
        while($aa=mysql_fetch_array($a)){
        ?>
        <option value="<?php echo $aa["kode_kategori"];?>" <?php if($aa["kode_kategori"]==$kategori){echo"selected";}?>><?php echo $aa["nama_kategori"];?></option>
        <?php
        }
        ?>
    </select>    </td>
  </tr>
  <tr>
    <td>Nama Barang</td>
    <td>:</td>
    <td><input type="text" name="txtnama_barang" size="25" id="txtnama_barang" value="<?php echo $nama_barang;?>"  /></td>
  </tr>
  <tr>
    <td>Harga</td>
    <td>:</td>
    <td><input type="text" name="txtharga" size="10" id="txtharga" value="<?php echo $harga;?>"  /></td>
  </tr>
  <tr>
    <td valign="top">Keterangan</td>
    <td valign="top">:</td>
    <td><textarea name="txtketerangan" rows="3" cols="30"><?php echo $keterangan;?></textarea></td>
  </tr>
  <tr>
    <td>Stok</td>
    <td>:</td>
    <td><input type="text" name="txtstok" size="10" id="txtstok" value="<?php echo $stok;?>"  /></td>
  </tr>
  <tr>
    <td>gambar</td>
    <td>:</td>
    <td><input type="file" name="fupload">
    <?php
		if(isset($_GET["action"]) && $_GET["action"]=="edit"){
			?>
            	<font color="#339900"><b>Apabila gambar tidak mau diganti kosongi saja.</b></font>
			<?php
		}
    ?>    </td>
  </tr>
  <tr>
    <td>Berat</td>
    <td> </td>
    <td><input type="text" name="txtberat" size="10" id="txtberat" value="<?php echo $berat_kg;?>"  /></td>
  </tr>
  <tr>
    <td> </td>
    <td> </td>
    <td> </td>
  </tr>
  <tr>
    <td> </td>
    <td><input type="hidden" value="<?php echo $kode_barang;?>" name="txtkode_barang" /></td>
    <td>
    <?php
		if(isset($_GET["action"]) && $_GET["action"]=="edit"){
			?>
            	<input type="submit" name="tombol" value="Edit" />
                <input type="button" name="tombol" value="Batal" onclick="window.location.href="index.php"" />
            <?php
		}else{
			?>
            	<input type="submit" name="tombol" value="Simpan" />
                <input type="reset" name="tombol" value="Hapus" />
			<?php
		}
	?>    </td>
  </tr>
</table>
</form>
<div style="overflow:scroll; height:300px;">
<table width="100%" border="1" class="classTable">
  <tr>
    <th width="20">No</th>
    <th width="364">Nama Kategori</th>
    <th width="364">Nama Barang</th>
    <th width="364">Harga</th>
    <th width="364">Keterangan</th>
    <th width="364">Stok</th>
    <th width="364">Gambar</th>
    <th width="364">Berat</th>
    <th width="364">Action</th>
  </tr>
  <?php
  	$no=0;
  	$sql = mysql_query("select*from tbl_barang order by kode_barang asc");
	while($data=mysql_fetch_array($sql)){
	$no++;
  ?>
  <tr>
    <td><?php echo $no;?></td>
    <td><?php echo getNamaKategori($data["kode_kategori"]);?></td>
    <td><?php echo $data["nama_barang"];?></td>
    <td><?php echo number_format($data["harga"],2,',','.');?></td>
    <td><?php echo $data["keterangan"];?></td>
    <td><?php echo $data["stok"];?></td>
    <td><img src="images/barang/<?php echo $data["gambar"];?>" width="50" height="50"  /></td>
    <td><?php echo $data["berat_kg"];?></td>
    <td><a href="index.php?action=edit&kb=<?php echo $data["kode_barang"];?>">Edit</a> | <a href="index.php?action=hapus&kb=<?php echo $data["kode_barang"];?>" onClick="return confirm('Apakah anda benar - benar akan menghapus barang ?');">Hapus</a></td>
  </tr>
  <?php
  	}
  ?>
</table>
</div>


17.31
alie
 Posted in:  
2 komentar:
databasenya dimana gan..?
databasenya menggunakan database test pada mysql, ini gan cara create tabelnya...
CREATE TABLE `tbl_barang` (
`kode_barang` int(11) NOT NULL auto_increment,
`kode_kategori` int(11) default NULL,
`nama_barang` varchar(30) collate latin1_general_ci default NULL,
`harga` double(11,2) default NULL,
`keterangan` varchar(50) collate latin1_general_ci default NULL,
`stok` int(11) default NULL,
`gambar` varchar(60) collate latin1_general_ci default NULL,
`berat_kg` varchar(90) collate latin1_general_ci default NULL,
PRIMARY KEY (`kode_barang`)
)
Untuk koneksinya, ini gan ada tambahan kode sedikit, taruh di bagian paling atas kode index.php diatas..
<?php
$host = "localhost";
$user = "root";
$pass = "123456";
$db = "test";
mysql_connect($host,$user,$pass) or die ("Server Mysql error");
mysql_select_db($db) or die ("Database error");
function getNamagambar($kode){
$a = mysql_query("select nama_barang from tbl_barang where kode_barang = '".$kode."'");
$b = mysql_fetch_array($a);
$c = $b["nama_barang"];
return $c;
}
function getNamaKategori($kode){
return $kode;
}
?>
semoga berhasil...
Posting Komentar