0% found this document useful (0 votes)
207 views

Coding Download

The document describes a system for uploading and downloading files from a database table called "file" using PHP. It includes code for an index page with a file upload form, configuration file to connect to the database, upload processing page to save the file to the server and database, and a download page to retrieve and output files from the database to the user.

Uploaded by

sinta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
207 views

Coding Download

The document describes a system for uploading and downloading files from a database table called "file" using PHP. It includes code for an index page with a file upload form, configuration file to connect to the database, upload processing page to save the file to the server and database, and a download page to retrieve and output files from the database to the user.

Uploaded by

sinta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 6

Database = system

Table = file

CREATE TABLE `file` (

`file_id` int(11) NOT NULL,

`name` varchar(200) NOT NULL,

`file` varchar(500) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET

1. index.php

<!DOCTYPE html>

<html>

<head>

<title>Upload dan Download File</title>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>

<link rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

<!--Script CSS-->

<link type="text/css" href='https://cdn.datatables.net/1.10.16/css/jquery.dataTables.min.css'


rel='stylesheet'>

<link type="text/css"
href='https://cdn.datatables.net/responsive/2.2.1/css/responsive.dataTables.min.css' rel='stylesheet'>

<link type="text/css" href='https://cdn.datatables.net/buttons/1.5.1/css/buttons.dataTables.min.css'


rel='stylesheet'>
</head>

<body>

<br /><br />

<div class="container">

<nav class="navbar navbar-inverse">

<div class="container-fluid">

<div class="navbar-header">

<a class="navbar-brand" href="https://www.tutorialswb.com">TutorialsWB</a>

</div>

</div>

</nav>

<br />

<br />

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

<input class="form-control" type="file" name="upload"/>

<button type="submit" class="btn btn-success form-control" name="submit"><span class="glyphicon


glyphicon-upload"></span> Upload</button>

</form>

<br /><br />

<div class="form-group">

<table id="example" class="display responsive nowrap" style="width:100%">

<thead>

<tr>

<th>No</th>

<th>File Name</th>
<th>Action</th>

</tr>

</thead>

<tbody class="alert-success">

<?php

require 'config.php';

$row = $conn->query("SELECT * FROM `file`") or die(mysqli_error());

while($fetch = $row->fetch_array()){

?>

<tr>

<?php

$name = explode('/', $fetch['file']);

?>

<td><?php echo $fetch['file_id']?></td>

<td><?php echo $fetch['name']?></td>

<td><a href="download.php?file=<?php echo $name[1]?>" class="btn btn-primary"><span


class="glyphicon glyphicon-download"></span> Download</a></td>

</tr>

<?php

?>

</tbody>

</table>

</div>
<!--Script Javascript-->

<script src="https://code.jquery.com/jquery-1.12.4.js"></script>

<script src="https://cdn.datatables.net/1.10.16/js/jquery.dataTables.min.js"></script>

<script src="https://cdn.datatables.net/responsive/2.2.1/js/dataTables.responsive.min.js"></script>

<script src="https://cdn.datatables.net/buttons/1.5.1/js/dataTables.buttons.min.js"></script>

<script src="https://cdn.datatables.net/buttons/1.5.1/js/buttons.colVis.min.js"></script>

<script>

$(document).ready(function() {

$('#example').DataTable( {

dom: 'Bfrtip',

buttons: [

'colvis'

} );

} );

</script>

</body>

</html>

2. config.php

<?php

$conn = new mysqli('localhost', 'root', '', 'system');

if($conn->connect_error){
die("Fatal Error: Can't connect to database: ". $conn->connect_error);

?>

3. upload.php

<?php

require_once 'config.php';

if(ISSET($_POST['submit'])){

if($_FILES['upload']['name'] != "") {

$file = $_FILES['upload'];

$file_name = $file['name'];

$file_temp = $file['tmp_name'];

$name = explode('.', $file_name);

$path = "files/".$file_name;

$conn->query("INSERT INTO `file` VALUES('', '$name[0]', '$path')") or die(mysqli_error());

move_uploaded_file($file_temp, $path);

header("location:index.php");

}else{

echo "<script>alert('Required Field!')</script>";


echo "<script>window.location='index.php'</script>";

?>

4. download.php

<?php

if(ISSET($_REQUEST['file'])){

$file = $_REQUEST['file'];

//header("Cache-Control: public");

//header("Content-Description: File Transfer");

header("Content-Disposition: attachment; filename=".basename($file));

header("Content-Type: application/octet-stream;");

//header("Content-Transfer-Encoding: binary");

readfile("files/".$file);

?>

You might also like