Selasa, 24 Juli 2012

Script PHP menyimpan file pdf di Database untuk kemudian bisa di download.



Pada ulasan kali ini saya akan memberikan tutorial lengkap bagaimana memanajemen suatu file yang banyak agar anda tidak perlu memasukkan secara manual di hosting anda sehingga sedikit menghemat waktu, menghemat ruang penyimpanan dan yang pasti praktis.
Langkah – langkahnya adalah sebagai berikut :


1. Misalkan buat sebuah file dengan nama “index.php” kemudian tuliskan ini :

<?
echo “<table>
<form method=’post’ action=’$PHP_SELF?action=file_manager’ enctype=’multipart/form-data’>
<input type=’hidden’ name=’MAX_FILE_SIZE’
value=’1000000000′>
<tr><td>File Materi</td>
<td><input type=’file’ name=’file_data’></td></tr>
<tr><td>Nama File</td>
<td><input type=’text’ name=’nama_tampil’></td></tr>
<tr><td>Info File</td>
<td><input type=’text’ name=’info’></td></tr>
<tr><td></td>
<td><input type=’submit’ name=’ok’ value=’Simpan’>
</td></tr>
</form> </table>”;
if (isset($_POST["ok"]) && (!empty($_FILES["file_data"])) && (!empty($_POST["nama_tampil"])) )
{
include “koneksi.php”;
$nama_file = $_FILES['file_data']['name'];
$ukuran = $_FILES['file_data']['size'];
$tipe_file = $_FILES['file_data']['type'];
$file_data = $_FILES['file_data']['tmp_name'];
$data = addslashes(fread(fopen($file_data, “r”), filesize($file_data)));
$sql = “INSERT INTO materi
VALUES (”,’$data’,
‘$nama_file’, ‘$ukuran’, ‘$tipe_file’,'$nama_tampil’,'$info’)”;
$result = mysql_query($sql);
if (!$result )
{
echo “Data Gagal Disimpan Anda Sudah Memasukkan File Yang Sama”;
}
else
{
echo “Data Berhasil Disimpan”;
}
}
else if ( (isset($_POST["ok"]) && (empty($_POST["nama_tampil"])) ))
{
header(“location:input_materisalah.php”);
}
?>

2. Buat satu table bernama “materi” di database MySQL

CREATE TABLE `materi` (
`id` int(10) NOT NULL auto_increment,
`materi` longblob,
`namafile` varchar(50) default NULL,
`ukuran` varchar(50) default NULL,
`tipefile` varchar(50) default NULL,
`nama_tampil` varchar(50) NOT NULL default ”,
`info` varchar(200) NOT NULL default ”,
PRIMARY KEY (`id`)
)

3. Lalu buat halaman misalkan bernama “download_materi.php”

<?
include “koneksi.php”;
$tampil=mysql_query(“select * from materi order by nama_tampil asc”);
while($data=mysql_fetch_row($tampil))
{
echo”<a href=’materi.php?id=$data[0]&&materi=$data[5]‘>$data[5]</a><br>”;
}
?>

4. Langkah terakhir buatlah file bernama “materi.php”

<?php
/* materi.php */
include “koneksi.php”;
$id = $_GET["id"];
$sql = “SELECT * FROM materi WHERE id=’$id’”;
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
if ($row[materi])
{
header(“Content-Type: $row[tipefile]“);
header(“Content-Disposition: attachment; filename=$materi.pdf “);
header(“Pragma: no-cache”);
header(“Expires: 0″);
print “$row[materi]“;
}
}
?>

Jika sudah semuanya silahkan mencoba dan juga berkreatifitaslah sesukamu … Terima kasih

5 komentar:

park-saputra.blogspot.com mengatakan...

kok tidak bisa yh bos?

ketika klik simpan yg muncul pesan data gagal disimpan, sementara data tsb belum pernah disimpan ke database tsb.
terimakasih

Dyan123 mengatakan...

tanda seperti ini <?,
semuanya ganti dengan <?php

gampang kan.....!!!!!!!!!!!!!!!!

David Karismata W . Tion mengatakan...

itu isi dari koneksi.php apa ya bro ?

Unknown mengatakan...

koq gak bsa yaa gn?
tulisannya kya gtu mulu tiap upload file : Data Gagal Disimpan Anda Sudah Memasukkan File Yang Sama
itu knp ya gan?

Unknown mengatakan...

penjelasannya kurang di mengerti pak

Posting Komentar

Terbit Lapak

Lapak

 
Design by Free WordPress Themes | Bloggerized by dyan123 - Premium Blogger Themes | cheap international calls