//
you're reading...
PHP, Programming

Script PHP Upload File / Image [Avatar]


hay guyz..! balik lagi dah saya. Kali ini saya akan buat tutorial php sederhana, yaitu script buat upload file atau gambar, dalam hal ini saya akan membuat upload gambar / image sebagai foto profile anda. Caranya cukup sederhana, pertama anda buat dahulu database dengan nama pinoblog, dan sebuah tabel dengan nama users. Berikut ini script SQL untuk membuat tabel users dan dengan 3 buah field (id, username, avatar).

CREATE TABLE `users` (
`id` int(11) NOT NULL auto_increment,
`username` varchar(20) NOT NULL,
`avatar` varchar(255) NOT NULL,
PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;
INSERT INTO `users` VALUES (1, 'pino', 'avatar/pino.png');
INSERT INTO `users` VALUES (2, 'chio', '');

Ok, jika sudah membuat database dan tabelnya, sekarang akan dibuat file koneksi ke database, simpan script dibawah ini dengan nama koneksi.php

<?php
//ganti keterangan di bawah ini
$host = "localhost";
$user = "root";
$pass = "root";
$db = "pinoblog";

$koneksi = mysql_connect("$host", "$user", "$pass") or die("Koneksi ke Database Gagal!");
mysql_select_db("$db", $koneksi) or die("Tidak ada database yang di pilih!");
?>

Silahkan ganti detail koneksi di atas dengan detail koneksi anda.

Selanjutnya kita buat script form upload, dan juga menampilkan upload file nya. Berikut ini scriptnya, simpan dengan nama avatar.php

<?php
//start session
session_start();

//mamasukkan file koneksi
include "koneksi.php";

//mendefinikan session user = pino
$_SESSION['user']="pino";

//$user = session user
$user = $_SESSION['user'];
$sql = mysql_query("SELECT * FROM users WHERE username='$user'");
$row = mysql_fetch_assoc($sql);
$avatar = $row['avatar'];

if($_POST['submit']){
//memluai script upload file
$name = $_FILES['avatar']['name'];
$tmp_name = $_FILES['avatar']['tmp_name'];

if($name){
$user = $_SESSION['user'];
$lokasi = "avatar/$name";
//proses meng-copy file ke direktori yang sudah di tentukan
move_uploaded_file($tmp_name, $lokasi);
//melakukan update batabase dan menyimpan nama file avatar
$sql = mysql_query("UPDATE users SET avatar='$lokasi' WHERE username='$user'");
if($sql){
//jika upload berhasil, maka akan reload setelah 2 detik
echo "<b>Avatar Anda berhasil di ganti!</b>";
header ("refresh: 2; avatar.php");
} else {
//jika upload error, maka akan muncul pesan kesalahan berikut ini
echo "<b>ERROR: Terjadi kesalahan, coba lagi!</b>";
}
} else {
echo "<b>ERROR: Pilih Avatar anda!</b>";
}
}
?>
<title>Upload File / Image by pinoblog.wordpress.com</title>
<form action="avatar.php" method="post" enctype="multipart/form-data">
<table align="center">
<tr>
<td valign="top" colspan="3" align="center">
<?php
echo "<p>Anda Login Sebagai: <b>".$user."</b></p>";

//cek apakah user sudah upload apa belon
$sql = mysql_query("SELECT avatar FROM users WHERE username='$user'");
$row = mysql_fetch_assoc($sql);
$avatar = $row['avatar'];
if($avatar != ""){
//ini akan menampilkan avatar dengan ukuran 98 x 128 px
echo "<img class=\"img\" src=\"$avatar\" width=\"98\" height=\"128\"></td>";
} else {
echo "Anda belom Upload file avatar!</td>";
}
?>
</tr>
<tr>
<td valign="top" colspan="4" align="center">&nbsp;</td>
</tr>
<tr>
<td><strong>Pilih Avatar</strong></td>
<td><strong>:</strong></td>
<td><input type="file" name="avatar"></td>
</tr>
<tr>
<td colspan="3" align="center"><input type="submit" name="submit" value="Upload" /></td>
</tr>
</table>
</form>

Dalam script di atas sudah saya sedikit penjelasan dengan komentar. Jika semua sudah jadi, sekarang anda bisa mencobanya..!

hasilnya seperti gambar di bawah ini

Untuk Live Demo Upload File / Image, anda bisa coba di sini http://pino.web44.net/ anda harus register dan login dulu.

sudah deh, kalau suka ni post, di Like atau di Rate za…!!🙂

About pinoblog

Just Ordinary Man

Discussion

No comments yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: